SpyBara
Go Premium

Documentation 2026-10-01 23:59 UTC to 2026-10-02 03:00 UTC

58 files changed +4,397 −2,790. View all changes and history on the product overview
2026
Fri 2 03:00 Thu 1 23:59

admin-setup.md +22 −1

Details

123 123 

124Keine dieser Kontrollen erreichen Sitzungen auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder [Claude Platform on AWS](/docs/de/claude-platform-on-aws). Verwenden Sie auf diesen Anbietern stattdessen verwaltete Einstellungen: `availableModels` für Einschränkungen, `model` für einen Standard und [`maxEffortLevel`](/docs/de/settings-reference#maxeffortlevel) für eine Aufwandsobergrenze.124Keine dieser Kontrollen erreichen Sitzungen auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder [Claude Platform on AWS](/docs/de/claude-platform-on-aws). Verwenden Sie auf diesen Anbietern stattdessen verwaltete Einstellungen: `availableModels` für Einschränkungen, `model` für einen Standard und [`maxEffortLevel`](/docs/de/settings-reference#maxeffortlevel) für eine Aufwandsobergrenze.

125 125 

126[Claude Code im Web](/docs/de/claude-code-on-the-web) hat seine eigene Admin-Oberfläche: Auf der Seite „Cloud-Umgebungen" in den Admin-Einstellungen erstellen Besitzer [organisationsweite gemeinsame Umgebungen](/docs/de/cloud-environments#organization-shared-environments), die die [Netzwerkzugriffsstufe](/docs/de/cloud-environments#network-access), Umgebungsvariablen und das Setup-Skript für Cloud-Sitzungen der Mitglieder festlegen. Besitzer wählen die Standardumgebung der Organisation separat unter [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code).126[Cloud-Sitzungen](/docs/de/claude-code-on-the-web) haben auf claude.ai ihre eigenen Admin-Oberflächen:

127 

128* **Seite „Cloud-Umgebungen"**: Owner erstellen [organisationsweite gemeinsame Umgebungen](/docs/de/cloud-environments#organization-shared-environments), die die [Netzwerkzugriffsstufe](/docs/de/cloud-environments#network-access), Umgebungsvariablen und das Setup-Skript für Cloud-Sitzungen der Mitglieder festlegen.

129* **Standardumgebung**: Owner wählen die Standardumgebung der Organisation separat unter [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code).

130* **Seite „GitHub"**: Siehe [Verbundene GitHub-Konten](#connected-github-accounts) für die GitHub-Konten, die mit Ihrer Organisation verknüpft sind.

127 131 

128Berechtigungsregeln und Sandboxing decken verschiedene Ebenen ab. Das Ablehnen von WebFetch blockiert Claudes Fetch-Tool, aber wenn Bash zulässig ist, können `curl` und `wget` immer noch jede URL erreichen. Sandboxing schließt diese Lücke mit einer auf Betriebssystemebene durchgesetzten Netzwerk-Domain-Allowlist.132Berechtigungsregeln und Sandboxing decken verschiedene Ebenen ab. Das Ablehnen von WebFetch blockiert Claudes Fetch-Tool, aber wenn Bash zulässig ist, können `curl` und `wget` immer noch jede URL erreichen. Sandboxing schließt diese Lücke mit einer auf Betriebssystemebene durchgesetzten Netzwerk-Domain-Allowlist.

129 133 

130Für das Bedrohungsmodell, das diese Kontrollen verteidigen, siehe [Sicherheit](/docs/de/security).134Für das Bedrohungsmodell, das diese Kontrollen verteidigen, siehe [Sicherheit](/docs/de/security).

131 135 

136<h3 id="connected-github-accounts">

137 Verbundene GitHub-Konten

138</h3>

139 

140In Team- und Enterprise-Plänen listet [**Admin settings > GitHub**](https://claude.ai/admin-settings/github) die GitHub-Organisationen und persönlichen Konten auf, die über die [Claude GitHub App](https://github.com/apps/claude) mit Ihrer Claude-Organisation verknüpft sind. Claude Code, [Claude Tag](https://claude.com/docs/claude-tag/admins/configure-github) und Claude Security teilen sich diese Liste. Zum Öffnen benötigen Sie eine Admin-Rolle in Ihrer Claude-Organisation.

141 

142Ein Admin oder ein Mitglied kann ein Konto verknüpfen:

143 

144* **Verbindung durch einen Admin**: Ein Admin klickt auf dieser Seite auf **Connect** und installiert die Claude GitHub App in einer GitHub-Organisation. Um eine Organisation auf diese Weise zu verknüpfen, ist eine Person erforderlich, die sowohl Owner der GitHub-Organisation als auch Admin Ihrer Claude-Organisation ist.

145* **Verbindung durch ein Mitglied**: Wenn ein Mitglied sein GitHub-Konto mit Claude verbindet, zum Beispiel beim [Einrichten von Cloud-Sitzungen](/docs/de/web-quickstart#connect-github), verknüpft Claude die GitHub-Konten, die diesem Mitglied gehören und in denen die Claude GitHub App bereits installiert ist. Dazu können das persönliche Konto des Mitglieds sowie GitHub-Organisationen gehören, deren Owner es ist.

146 

147Eine mit **Not linked** gekennzeichnete Zeile stammt aus Ihrer eigenen GitHub-Anmeldung. Es handelt sich um ein Konto, das Sie auf GitHub sehen können und in dem die Claude GitHub App installiert ist.

148 

149Um die Verknüpfung eines Kontos mit Ihrer Claude-Organisation aufzuheben, öffnen Sie das Menü der jeweiligen Zeile und wählen Sie **Unlink from this workspace**. Durch das Aufheben der Verknüpfung bleibt die Claude GitHub App auf GitHub installiert, und das Konto wird erneut verknüpft, sobald einer seiner Owner GitHub das nächste Mal mit Claude verbindet. Um eine erneute Verknüpfung zu verhindern, deinstallieren Sie die Claude GitHub App auf GitHub aus diesem Konto.

150 

151In Enterprise-Plänen lauten die Aktivitätstypen der [Compliance API](https://platform.claude.com/docs/en/api/compliance/activities/list) für das Verknüpfen und das Aufheben der Verknüpfung `github_app_installation_linked` und `github_app_installation_unlinked`.

152 

132<h2 id="set-up-usage-visibility">153<h2 id="set-up-usage-visibility">

133 Nutzungssichtbarkeit einrichten154 Nutzungssichtbarkeit einrichten

134</h2>155</h2>

Details

325 325 

326Ein paar Strategien für langfristig laufende Agenten:326Ein paar Strategien für langfristig laufende Agenten:

327 327 

328* **Verwenden Sie Subagenten für Unteraufgaben.** Jeder Subagent startet mit einem frischen Gespräch (kein vorheriger Nachrichtenverlauf, obwohl er seinen eigenen System-Prompt und Projekt-Kontext wie CLAUDE.md lädt). Er sieht nicht die Runden des Elternteils, und nur seine endgültige Antwort kehrt zum Elternteil als Werkzeugergebnis zurück. Der Kontext des Hauptagenten wächst um diese Zusammenfassung, nicht um das vollständige Unteraufgaben-Transkript. Siehe [Was Subagenten erben](/docs/de/agent-sdk/subagents#what-subagents-inherit) für Details.328* **Verwenden Sie Subagenten für Teilaufgaben.** Jeder Subagent startet mit einer neuen Konversation (kein vorheriger Nachrichtenverlauf, er lädt jedoch seinen eigenen System-Prompt und Kontext auf Projektebene wie CLAUDE.md). Er sieht die Turns des übergeordneten Agenten nicht, und nur seine abschließende Antwort wird an den übergeordneten Agenten zurückgegeben. Der Kontext des Hauptagenten wächst um diese Zusammenfassung, nicht um das vollständige Transkript der Teilaufgabe. Siehe [Was Subagenten erben](/docs/de/agent-sdk/subagents#what-subagents-inherit) für Details.

329* **Seien Sie selektiv mit Werkzeugen.** Jede Werkzeugdefinition nimmt Kontextraum ein. Verwenden Sie das Feld `tools` auf [`AgentDefinition`](/docs/de/agent-sdk/subagents#agentdefinition-configuration), um Subagenten auf die minimale Menge zu beschränken, die sie benötigen.329* **Seien Sie selektiv mit Werkzeugen.** Jede Werkzeugdefinition nimmt Kontextraum ein. Verwenden Sie das Feld `tools` auf [`AgentDefinition`](/docs/de/agent-sdk/subagents#agentdefinition-configuration), um Subagenten auf die minimale Menge zu beschränken, die sie benötigen.

330* **Beobachten Sie MCP-Server-Kosten.** [MCP tool search](/docs/de/agent-sdk/mcp#mcp-tool-search) schiebt MCP-Werkzeugschemas standardmäßig auf und lädt sie bei Bedarf. Wenn die Werkzeugsuche ausgeschaltet ist oder auf vorherige Laden auf nicht unterstützten Modellen und bestimmten Plattformen zurückgefallen ist, fügt jeder MCP-Server alle seine Werkzeugschemas zu jeder Anfrage hinzu, daher können ein paar Server mit vielen Werkzeugen erheblichen Kontext verbrauchen, bevor der Agent irgendwelche Arbeiten verrichtet. Siehe [Configure tool search](/docs/de/agent-sdk/tool-search#configure-tool-search) für die Konfigurationen, bei denen das Fallback angewendet wird.330* **Beobachten Sie MCP-Server-Kosten.** [MCP tool search](/docs/de/agent-sdk/mcp#mcp-tool-search) schiebt MCP-Werkzeugschemas standardmäßig auf und lädt sie bei Bedarf. Wenn die Werkzeugsuche ausgeschaltet ist oder auf vorherige Laden auf nicht unterstützten Modellen und bestimmten Plattformen zurückgefallen ist, fügt jeder MCP-Server alle seine Werkzeugschemas zu jeder Anfrage hinzu, daher können ein paar Server mit vielen Werkzeugen erheblichen Kontext verbrauchen, bevor der Agent irgendwelche Arbeiten verrichtet. Siehe [Configure tool search](/docs/de/agent-sdk/tool-search#configure-tool-search) für die Konfigurationen, bei denen das Fallback angewendet wird.

331* **Verwenden Sie niedrigere Anstrengung für Routine-Aufgaben.** Setzen Sie [Anstrengung](#effort-level) auf `"low"` für Agenten, die nur Dateien lesen oder Verzeichnisse auflisten müssen. Dies reduziert Token-Nutzung und Kosten.331* **Verwenden Sie niedrigere Anstrengung für Routine-Aufgaben.** Setzen Sie [Anstrengung](#effort-level) auf `"low"` für Agenten, die nur Dateien lesen oder Verzeichnisse auflisten müssen. Dies reduziert Token-Nutzung und Kosten.

Details

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.3> Use this file to discover all available pages before exploring further.

4 4 

5# Kosten und Nutzung verfolgen5# Kosten und Nutzung nachverfolgen

6 6 

7> Erfahren Sie, wie Sie die Token-Nutzung verfolgen, Kosten schätzen und Prompt Caching mit dem Claude Agent SDK konfigurieren.7> Erfahren Sie, wie Sie mit dem Claude Agent SDK die Token-Nutzung nachverfolgen, Kosten schätzen und Prompt-Caching konfigurieren.

8 8 

9Das Claude Agent SDK bietet detaillierte Token-Nutzungsinformationen für jede Interaktion mit Claude. Dieser Leitfaden erklärt, wie Sie die Nutzung ordnungsgemäß verfolgen und die Kostenberichterstattung verstehen, besonders bei parallelen Tool-Verwendungen und mehrstufigen Gesprächen.9Das Claude Agent SDK liefert detaillierte Informationen zur Token-Nutzung für jede Interaktion mit Claude. Dieser Leitfaden erklärt, wie Sie die Nutzung korrekt nachverfolgen und die Kostenberichte verstehen, insbesondere bei paralleler Tool-Nutzung und mehrstufigen Konversationen.

10 10 

11Für die vollständige API-Dokumentation siehe die [TypeScript SDK-Referenz](/docs/de/agent-sdk/typescript) und [Python SDK-Referenz](/docs/de/agent-sdk/python).11Die vollständige API-Dokumentation finden Sie in der [TypeScript SDK-Referenz](/docs/de/agent-sdk/typescript) und der [Python SDK-Referenz](/docs/de/agent-sdk/python).

12 12 

13<Warning>13<Warning>

14 Die Felder `total_cost_usd` und `costUSD` sind clientseitige Schätzungen, keine verbindlichen Abrechnungsdaten. Das SDK berechnet sie lokal aus einer Preistabelle, die zur Build-Zeit gebündelt wird, daher können sie von dem abweichen, was Sie tatsächlich abgerechnet bekommen, wenn:14 Die Felder `total_cost_usd` und `costUSD` sind clientseitige Schätzungen und keine verbindlichen Abrechnungsdaten. Das SDK berechnet sie lokal anhand einer Preistabelle, die zum Build-Zeitpunkt eingebunden wird, sofern keine [`modelPricing`](/docs/de/settings-reference#modelpricing)-Tabelle aktiv ist. Sie können von dem abweichen, was Ihnen tatsächlich in Rechnung gestellt wird, wenn:

15 15 

16 * sich die Preise ändern16 * sich die Preise ändern

17 * die installierte SDK-Version ein Modell nicht erkennt17 * die installierte SDK-Version ein Modell nicht erkennt

18 * Abrechnungsregeln gelten, die der Client nicht modellieren kann18 * Abrechnungsregeln gelten, die der Client nicht abbilden kann

19 19 

20 Verwenden Sie diese Felder für Entwicklungseinblicke und ungefähre Budgetierung. Für verbindliche Abrechnung verwenden Sie die [Usage and Cost API](https://platform.claude.com/docs/en/build-with-claude/usage-cost-api) oder die Seite „Nutzung" in der [Claude Console](https://platform.claude.com/usage). Berechnen Sie Endbenutzer nicht und treffen Sie keine finanziellen Entscheidungen basierend auf diesen Feldern.20 Eine Abrechnungsregel, die das SDK abbildet, ist die [Preisgestaltung für Datenresidenz](https://platform.claude.com/docs/en/about-claude/pricing#data-residency-pricing). Wenn das `usage`-Feld einer Antwort `inference_geo: "us"` meldet, multipliziert das SDK den Listenpreis der Token dieser Antwort mit 1,1. Gebühren pro Anfrage, etwa für die Websuche, werden nicht multipliziert. Erfordert TypeScript Agent SDK v0.3.239 oder höher bzw. Python Agent SDK v0.2.144 oder höher.

21 

22 Verwenden Sie diese Felder für Einblicke während der Entwicklung und für eine ungefähre Budgetplanung. Für verbindliche Abrechnungsdaten nutzen Sie die [Usage and Cost API](https://platform.claude.com/docs/en/build-with-claude/usage-cost-api) oder die Seite „Usage“ in der [Claude Console](https://platform.claude.com/usage). Stellen Sie Endnutzern keine Beträge auf Grundlage dieser Felder in Rechnung und treffen Sie keine finanziellen Entscheidungen auf ihrer Basis.

21</Warning>23</Warning>

22 24 

23<h2 id="understand-token-usage">25<h2 id="understand-token-usage">

24 Token-Nutzung verstehen26 Token-Nutzung verstehen

25</h2>27</h2>

26 28 

27Die TypeScript- und Python-SDKs stellen die gleichen Nutzungsdaten mit unterschiedlichen Feldnamen bereit:29Die TypeScript- und Python-SDKs stellen dieselben Nutzungsdaten mit unterschiedlichen Feldnamen bereit:

30 

31* **TypeScript** bietet Token-Aufschlüsselungen pro Schritt für jede Assistenten-Nachricht (`message.message.id`, `message.message.usage`), Kosten pro Modell über `modelUsage` in der Ergebnisnachricht sowie eine kumulierte Gesamtsumme in der Ergebnisnachricht.

32* **Python** bietet Token-Aufschlüsselungen pro Schritt für jede Assistenten-Nachricht als `message.usage` und `message.message_id`, Kosten pro Modell über `model_usage` in der Ergebnisnachricht sowie die kumulierte Gesamtsumme in der Ergebnisnachricht als `total_cost_usd`.

28 33 

29* **TypeScript** bietet Token-Aufschlüsselungen pro Schritt auf jeder Assistenten-Nachricht (`message.message.id`, `message.message.usage`), Kosten pro Modell über `modelUsage` auf der Ergebnis-Nachricht und eine kumulative Summe auf der Ergebnis-Nachricht.34Beide SDKs verwenden dasselbe zugrunde liegende Kostenmodell und bieten dieselbe Granularität. Der Unterschied liegt in der Benennung der Felder und darin, wo die Nutzung pro Schritt verschachtelt ist.

30* **Python** bietet Token-Aufschlüsselungen pro Schritt auf jeder Assistenten-Nachricht (`message.usage`, `message.message_id`), Kosten pro Modell über `model_usage` auf der Ergebnis-Nachricht und die akkumulierte Summe auf der Ergebnis-Nachricht (`total_cost_usd` und `usage` dict).

31 35 

32Beide SDKs verwenden das gleiche zugrunde liegende Kostenmodell und stellen die gleiche Granularität bereit. Der Unterschied liegt in der Feldbennung und wo die Nutzung pro Schritt verschachtelt ist.36Die Kostenverfolgung setzt voraus, dass Sie verstehen, wie das SDK Nutzungsdaten abgrenzt:

33 37 

34Die Kostenverfolgung hängt davon ab, zu verstehen, wie das SDK Nutzungsdaten umfasst:38* **`query()`-Aufruf:** ein Aufruf der `query()`-Funktion des SDK. Ein einzelner Aufruf kann mehrere Schritte umfassen: Claude antwortet, verwendet Tools, erhält Ergebnisse und antwortet erneut. Jeder Aufruf erzeugt am Ende eine [`result`](/docs/de/agent-sdk/typescript#sdkresultmessage)-Nachricht, außer im [Streaming-Eingabemodus](/docs/de/agent-sdk/streaming-vs-single-mode), in dem ein `query()`-Aufruf mehrere Benutzer-Turns umfasst und jeder Turn seine eigene `result`-Nachricht ausgibt.

39* **Schritt:** ein einzelner Anfrage-/Antwort-Zyklus innerhalb eines `query()`-Aufrufs. Jeder Schritt erzeugt Assistenten-Nachrichten mit Token-Nutzung.

40* **Sitzung:** eine Reihe von `query()`-Aufrufen, die über eine Sitzungs-ID mithilfe der Option `resume` verknüpft sind. Die Ergebnisse eines fortgesetzten Aufrufs geben die gesamten Ausgaben der Sitzung an, nicht nur die des jeweiligen Aufrufs. Unter [Kosten über mehrere Aufrufe hinweg kumulieren](#accumulate-costs-across-multiple-calls) erfahren Sie, wie die Summen übernommen werden.

35 41 

36* **`query()` Aufruf:** eine Invokation der `query()` Funktion des SDK. Ein einzelner Aufruf kann mehrere Schritte beinhalten (Claude antwortet, verwendet Tools, erhält Ergebnisse, antwortet erneut). Jeder Aufruf erzeugt am Ende eine [`result`](/docs/de/agent-sdk/typescript#sdkresultmessage) Nachricht.42Das folgende Diagramm zeigt den Nachrichtenstrom eines einzelnen `query()`-Aufrufs, wobei die Token-Nutzung bei jedem Schritt und die kumulierte Schätzung am Ende gemeldet werden:

37* **Schritt:** ein einzelner Request/Response-Zyklus innerhalb eines `query()` Aufrufs. Jeder Schritt erzeugt Assistenten-Nachrichten mit Token-Nutzung.

38* **Sitzung:** eine Serie von `query()` Aufrufen, die durch eine Sitzungs-ID verknüpft sind (mit der `resume` Option). Jeder `query()` Aufruf innerhalb einer Sitzung meldet seine eigenen Kosten unabhängig.

39 43 

40Das folgende Diagramm zeigt den Nachrichtenstrom aus einem einzelnen `query()` Aufruf, mit Token-Nutzung, die bei jedem Schritt gemeldet wird, und der kumulativen Schätzung am Ende:44<img src="https://mintcdn.com/claude-code/ikqp3_70mqIahteV/images/agent-sdk/message-usage-flow.svg?fit=max&auto=format&n=ikqp3_70mqIahteV&q=85&s=68497aee338e01cc745323af7aea378e" className="dark:hidden" alt="Diagramm, das eine Abfrage zeigt, die zwei Schritte von Nachrichten erzeugt. Schritt 1 hat vier Assistenten-Nachrichten mit derselben ID und Nutzung (einmal zählen), Schritt 2 hat eine Assistenten-Nachricht mit einer neuen ID, und die abschließende Ergebnisnachricht zeigt die geschätzten total_cost_usd." width="760" height="520" data-path="images/agent-sdk/message-usage-flow.svg" />

41 45 

42<img src="https://mintcdn.com/claude-code/ikqp3_70mqIahteV/images/agent-sdk/message-usage-flow.svg?fit=max&auto=format&n=ikqp3_70mqIahteV&q=85&s=68497aee338e01cc745323af7aea378e" alt="Diagramm, das eine Abfrage zeigt, die zwei Schritte von Nachrichten erzeugt. Schritt 1 hat vier Assistenten-Nachrichten, die die gleiche ID und Nutzung teilen (einmal zählen), Schritt 2 hat eine Assistenten-Nachricht mit einer neuen ID, und die endgültige Ergebnis-Nachricht zeigt die geschätzte total_cost_usd." width="760" height="520" data-path="images/agent-sdk/message-usage-flow.svg" />46<img src="https://mintcdn.com/claude-code/_xqph1dUOslCOwsj/images/agent-sdk/message-usage-flow-dark.svg?fit=max&auto=format&n=_xqph1dUOslCOwsj&q=85&s=8ea95085abc0a6b7f55ecef498bd4d14" className="hidden dark:block" alt="Diagramm, das eine Abfrage zeigt, die zwei Schritte von Nachrichten erzeugt. Schritt 1 hat vier Assistenten-Nachrichten mit derselben ID und Nutzung (einmal zählen), Schritt 2 hat eine Assistenten-Nachricht mit einer neuen ID, und die abschließende Ergebnisnachricht zeigt die geschätzten total_cost_usd." width="760" height="520" data-path="images/agent-sdk/message-usage-flow-dark.svg" />

43 47 

44<Steps>48<Steps>

45 <Step title="Jeder Schritt erzeugt Assistenten-Nachrichten">49 <Step title="Jeder Schritt erzeugt Assistenten-Nachrichten">

46 Wenn Claude antwortet, sendet es eine oder mehrere Assistenten-Nachrichten. In TypeScript enthält jede Assistenten-Nachricht eine verschachtelte `BetaMessage` (zugänglich über `message.message`) mit einer `id` und einem [`usage`](https://platform.claude.com/docs/en/api/messages) Objekt mit Token-Zählungen (`input_tokens`, `output_tokens`). In Python stellt die `AssistantMessage` Dataclass die gleichen Daten direkt über `message.usage` und `message.message_id` bereit. Wenn Claude mehrere Tools in einer Runde verwendet, teilen alle Nachrichten in dieser Runde die gleiche ID, daher deduplizieren Sie nach ID, um Doppelzählungen zu vermeiden.50 Wenn Claude antwortet, sendet es eine oder mehrere Assistenten-Nachrichten. In TypeScript enthält jede Assistenten-Nachricht eine verschachtelte `BetaMessage` (Zugriff über `message.message`) mit einer `id` und einem [`usage`](https://platform.claude.com/docs/en/api/messages)-Objekt mit Token-Zählungen (`input_tokens`, `output_tokens`). In Python stellt die Dataclass `AssistantMessage` dieselben Daten direkt über `message.usage` und `message.message_id` bereit. Wenn Claude mehrere Tools in einem Turn verwendet, teilen alle Nachrichten in diesem Turn dieselbe ID. Deduplizieren Sie daher nach ID, um Doppelzählungen zu vermeiden.

47 </Step>51 </Step>

48 52 

49 <Step title="Die Ergebnis-Nachricht bietet die kumulative Schätzung">53 <Step title="Die Ergebnisnachricht liefert die kumulierte Schätzung">

50 Wenn der `query()` Aufruf abgeschlossen ist, gibt das SDK eine Ergebnis-Nachricht mit `total_cost_usd` und kumulativer `usage` aus. Dies ist in TypeScript ([`SDKResultMessage`](/docs/de/agent-sdk/typescript#sdkresultmessage)) und Python ([`ResultMessage`](/docs/de/agent-sdk/python#resultmessage)) verfügbar. Wenn Sie mehrere `query()` Aufrufe tätigen (zum Beispiel in einer mehrstufigen Sitzung), spiegelt jedes Ergebnis nur die Kosten dieses einzelnen Aufrufs wider. Wenn Sie nur die geschätzte Summe benötigen, können Sie die Nutzung pro Schritt ignorieren und diesen einzelnen Wert lesen.54 Wenn der `query()`-Aufruf abgeschlossen ist, gibt das SDK eine Ergebnisnachricht mit `total_cost_usd` und kumulierter `usage` aus, typisiert als [`SDKResultMessage`](/docs/de/agent-sdk/typescript#sdkresultmessage) in TypeScript und [`ResultMessage`](/docs/de/agent-sdk/python#resultmessage) in Python. Wenn Sie nur die geschätzte Gesamtsumme benötigen, können Sie die Nutzung pro Schritt ignorieren und diesen einzelnen Wert auslesen.

55 

56 Wenn Sie mehrere unabhängige `query()`-Aufrufe durchführen, spiegelt jedes Ergebnis nur die Kosten des jeweiligen Aufrufs wider. Ein Aufruf, der eine Sitzung fortsetzt, zählt auch die früheren Ausgaben der Sitzung mit.

57 

58 Im Streaming-Eingabemodus gibt jeder Turn seine eigene Ergebnisnachricht aus. Unter [Kosten im Streaming-Eingabemodus verfolgen](#track-costs-in-streaming-input-mode) erfahren Sie, wie Sie in diesem Modus die Gesamtsummen der Aufrufe auslesen.

51 </Step>59 </Step>

52</Steps>60</Steps>

53 61 

62<h2 id="track-costs-in-streaming-input-mode">

63 Kosten im Streaming-Eingabemodus verfolgen

64</h2>

65 

66Im [Streaming-Eingabemodus](/docs/de/agent-sdk/streaming-vs-single-mode) umfasst ein einzelner `query()`-Aufruf mehrere Benutzer-Turns, und jeder Turn gibt seine eigene Ergebnisnachricht aus. Die Ergebnisfelder unterscheiden sich in ihrem Umfang:

67 

68* **`usage`**: umfasst nur diesen Turn und darin nur die Hauptagentenschleife, nicht die Subagenten, die sie ausgeführt hat.

69* **`total_cost_usd` und `modelUsage` bzw. `model_usage` in Python**: enthalten die laufende Gesamtsumme für den gesamten bisherigen Aufruf sowie alle Ausgaben, die wiederhergestellt wurden, als der Aufruf eine Sitzung fortgesetzt hat.

70 

71Lesen Sie in einem Aufruf, in dem Ihre App niemals `/clear`, `/reset` oder `/new` sendet, das neueste Ergebnis für die Gesamtsummen des Aufrufs, anstatt über alle Ergebnisse zu summieren.

72 

73Die laufenden Gesamtsummen beginnen jedes Mal neu, wenn Ihre App einen dieser drei Befehle sendet, und innerhalb eines `query()`-Aufrufs setzt sie nichts anderes zurück. Drei Ergebnisse sind für Ihre Abrechnung relevant:

74 

75* **Das eigene Ergebnis des `/clear`-Turns**: umfasst nur das, was seit dem Zurücksetzen ausgeführt wurde, und enthält eine neue `session_id`.

76* **Jedes spätere Ergebnis**: zählt ab diesem Zurücksetzen weiter.

77* **Das letzte Ergebnis vor jedem `/clear`**: enthält die Gesamtsumme für die Turns seit dem vorherigen Zurücksetzen.

78 

79Um die Gesamtsumme des gesamten Aufrufs zu ermitteln, addieren Sie das letzte Ergebnis vor jedem `/clear` zum abschließenden Ergebnis des Aufrufs. Jedes andere Ergebnis, einschließlich des eigenen Ergebnisses des `/clear`-Turns, wird durch ein späteres ersetzt.

80 

81In TypeScript gibt das SDK bei jedem Zurücksetzen außerdem eine [`SDKConversationResetMessage`](/docs/de/agent-sdk/typescript#sdkconversationresetmessage) aus, sodass Sie Zurücksetzungen im Stream erkennen können. In Python gibt das SDK entsprechend eine `ConversationResetMessage` aus. Vor Python SDK v0.2.137 hat der Python-Iterator diese Nachricht verworfen; zählen Sie die Zurücksetzungen bei diesen Versionen daher selbst anhand der `/clear`-Turns, die Ihre App sendet.

82 

83`maxBudgetUsd` (TypeScript) bzw. `max_budget_usd` (Python) zählt nur die eigenen Ausgaben des Aufrufs: Aus einer fortgesetzten Sitzung wiederhergestellte Gesamtsummen werden nicht darauf angerechnet, und ein `/clear` lässt das Budget von vorne beginnen.

84 

54<h2 id="get-the-total-cost-of-a-query">85<h2 id="get-the-total-cost-of-a-query">

55 Gesamtkosten einer Abfrage abrufen86 Die Gesamtkosten einer Abfrage ermitteln

56</h2>87</h2>

57 88 

58Die Ergebnis-Nachricht ([TypeScript](/docs/de/agent-sdk/typescript#sdkresultmessage), [Python](/docs/de/agent-sdk/python#resultmessage)) markiert das Ende der Agent-Schleife für einen `query()`-Aufruf. Sie enthält `total_cost_usd`, die geschätzte kumulative Kosten über alle Schritte in diesem Aufruf. Dies funktioniert sowohl für erfolgreiche als auch für Fehler-Ergebnisse. Wenn Sie Sitzungen verwenden, um mehrere `query()`-Aufrufe zu tätigen, spiegelt jedes Ergebnis nur die Kosten dieses einzelnen Aufrufs wider.89Die Ergebnisnachricht, in TypeScript als [`SDKResultMessage`](/docs/de/agent-sdk/typescript#sdkresultmessage) und in Python als [`ResultMessage`](/docs/de/agent-sdk/python#resultmessage) typisiert, markiert das Ende der Agentenschleife für einen `query()`-Aufruf. Sie enthält `total_cost_usd`, die kumulierten geschätzten Kosten über alle Schritte dieses Aufrufs. Ein Aufruf, der eine Sitzung fortsetzt, zählt auch die früheren Ausgaben der Sitzung mit. Beim Auslesen des Werts gelten zwei Einschränkungen:

59 90 

60Die drei Felder auf Ergebnis-Ebene unterscheiden sich darin, was sie zählen, wenn der Agent [Subagenten](/docs/de/agent-sdk/subagents) erzeugt. Verwenden Sie `modelUsage` oder `model_usage` in Python für die Gesamtbaum-Token-Abrechnung; das Feld `usage` unterschätzt, sobald Verschachtelung auftritt.91* In Python ist das Feld als optional typisiert. Prüfen Sie daher, dass es nicht `None` ist, bevor Sie es auslesen.

92* Sowohl Erfolgs- als auch Fehlerergebnisse enthalten es, allerdings kann das endgültige Ergebnis nach einem [Sitzungsabsturz](#recover-totals-after-a-session-crash) den Wert auf null gesetzt enthalten.

61 93 

62| Feld | Subagenten-Aktivität |94Im Streaming-Eingabemodus lesen Sie die Aufrufsummen wie unter [Kosten im Streaming-Eingabemodus verfolgen](#track-costs-in-streaming-input-mode) beschrieben aus.

95 

96Die drei Felder auf Ergebnisebene unterscheiden sich darin, was sie zählen, wenn der Agent [Subagenten](/docs/de/agent-sdk/subagents) startet. Verwenden Sie `modelUsage` bzw. `model_usage` in Python für die Token-Abrechnung über den gesamten Baum; das Feld `usage` zählt zu wenig, sobald eine Verschachtelung auftritt.

97 

98| Feld | Aktivität von Subagenten |

63| - | - |99| - | - |

64| `usage` | Ausgeschlossen. Zählt nur die Agent-Schleife auf oberster Ebene, daher werden Token, die in Subagenten verbraucht werden, nicht hinzugefügt |100| `usage` | Ausgeschlossen. Zählt nur die Agentenschleife der obersten Ebene, sodass innerhalb von Subagenten verbrauchte Token nicht hinzugerechnet werden |

65| `total_cost_usd` | Eingeschlossen. Zählt Subagenten-Anfragen zusammen mit der Schleife auf oberster Ebene |101| `total_cost_usd` | Eingeschlossen. Zählt Anfragen von Subagenten zusammen mit der Schleife der obersten Ebene |

66| `modelUsage` / `model_usage` | Eingeschlossen. Zählt Subagenten-Anfragen zusammen mit der Schleife auf oberster Ebene, aufgeschlüsselt nach Modell |102| `modelUsage` / `model_usage` | Eingeschlossen. Zählt Anfragen von Subagenten zusammen mit der Schleife der obersten Ebene, aufgeschlüsselt nach Modell |

67 103 

68Die folgenden Beispiele durchlaufen den Nachrichtenstrom aus einem `query()`-Aufruf und geben die Gesamtkosten aus, wenn die `result`-Nachricht ankommt:104Im [Einzelnachrichten-Eingabemodus](/docs/de/agent-sdk/streaming-vs-single-mode#single-message-input) wartet Claude Code, wenn am Ende des letzten Turns noch Subagenten im Hintergrund laufen, bis zu der unter [Hintergrundaufgaben beim Beenden](/docs/de/headless#background-tasks-at-exit) beschriebenen Obergrenze auf diese, bevor das Ergebnis ausgegeben wird. Die Werte `total_cost_usd`, `duration_api_ms` und `modelUsage` bzw. `model_usage` in Python des Ergebnisses schließen die während dieser Wartezeit geleistete Arbeit ein.

105 

106Die folgenden Beispiele durchlaufen den Nachrichtenstrom eines `query()`-Aufrufs und geben die Gesamtkosten aus, sobald die `result`-Nachricht eintrifft:

69 107 

70<CodeGroup>108<CodeGroup>

71 ```typescript TypeScript theme={null}109 ```typescript TypeScript theme={null}


98 print(f"Total cost: ${message.total_cost_usd or 0}")136 print(f"Total cost: ${message.total_cost_usd or 0}")

99 except Exception as error:137 except Exception as error:

100 # A single-shot query() raises after yielding an error result. If the138 # A single-shot query() raises after yielding an error result. If the

101 # failure was an error result, it still carried total_cost_usd and the139 # failure was an error result, the branch above has already run;

102 # branch above has already run; connection or process failures yield140 # connection or process failures yield no result message.

103 # no result message.

104 print(f"Session ended with an error: {error}")141 print(f"Session ended with an error: {error}")

105 142 

106 143 


108 ```145 ```

109</CodeGroup>146</CodeGroup>

110 147 

148Um zu begrenzen, wie viel Subagenten zu `total_cost_usd` beitragen können, legen Sie für die Abfrage die [Limits für Tiefe, Parallelität und Ausgaben](/docs/de/agent-sdk/subagents#cap-subagent-depth-concurrency-and-spend) fest.

149 

111<h2 id="track-per-step-and-per-model-usage">150<h2 id="track-per-step-and-per-model-usage">

112 Nutzung pro Schritt und pro Modell verfolgen151 Nutzung pro Schritt und pro Modell verfolgen

113</h2>152</h2>

114 153 

115Die Beispiele in diesem Abschnitt verwenden TypeScript-Feldnamen. In Python sind die entsprechenden Felder [`AssistantMessage.usage`](/docs/de/agent-sdk/python#assistantmessage) und `AssistantMessage.message_id` für die Nutzung pro Schritt, und [`ResultMessage.model_usage`](/docs/de/agent-sdk/python#resultmessage) für Aufschlüsselungen pro Modell.154Die Beispiele in diesem Abschnitt verwenden TypeScript-Feldnamen. In Python sind die entsprechenden Felder [`AssistantMessage.usage`](/docs/de/agent-sdk/python#assistantmessage) und `AssistantMessage.message_id` für die Nutzung pro Schritt sowie [`ResultMessage.model_usage`](/docs/de/agent-sdk/python#resultmessage) für Aufschlüsselungen pro Modell.

116 155 

117<h3 id="track-per-step-usage">156<h3 id="track-per-step-usage">

118 Nutzung pro Schritt verfolgen157 Nutzung pro Schritt verfolgen

119</h3>158</h3>

120 159 

121Jede Assistenten-Nachricht enthält eine verschachtelte `BetaMessage` (zugänglich über `message.message`) mit einer `id` und einem `usage` Objekt mit Token-Zählungen. Wenn Claude Tools parallel verwendet, teilen mehrere Nachrichten die gleiche `id` mit identischen Nutzungsdaten. Verfolgen Sie, welche IDs Sie bereits gezählt haben, und überspringen Sie Duplikate, um aufgeblähte Summen zu vermeiden.160Jede Assistant-Nachricht enthält eine verschachtelte `BetaMessage` (Zugriff über `message.message`) mit einer `id` und einem `usage`-Objekt mit Token-Zählungen. Wenn Claude Tools parallel verwendet, teilen sich mehrere Nachrichten dieselbe `id` mit identischen Nutzungsdaten. Verfolgen Sie, welche IDs Sie bereits gezählt haben, und überspringen Sie Duplikate, um überhöhte Summen zu vermeiden.

122 161 

123<Warning>162<Warning>

124 Parallele Tool-Aufrufe erzeugen mehrere Assistenten-Nachrichten, deren verschachtelte `BetaMessage` die gleiche `id` und identische Nutzung teilt. Deduplizieren Sie immer nach ID, um genaue Token-Zählungen pro Schritt zu erhalten.163 Die deduplizierten Werte pro Schritt sind für Eingabe- und Cache-Token genau. Das `output_tokens` pro Schritt ist ein Platzhalterwert, daher sollten Sie [die Ausgabe-Token aus der Ergebnisnachricht lesen](#read-output-tokens-from-the-result-message).

125</Warning>164</Warning>

126 165 

127Das folgende Beispiel akkumuliert Input- und Output-Tokens über alle Schritte, zählt jede eindeutige Nachrichten-ID nur einmal:166Das folgende Beispiel summiert die Eingabe-Token über alle Schritte hinweg, wobei jede eindeutige Nachrichten-ID der Hauptschleife nur einmal gezählt und Nachrichten von Subagenten übersprungen werden. Die Gesamtzahl der Ausgabe-Token wird aus der Ergebnisnachricht gelesen, die die Hauptschleife abdeckt:

128 167 

129```typescript theme={null}168```typescript theme={null}

130import { query } from "@anthropic-ai/claude-agent-sdk";169import { query } from "@anthropic-ai/claude-agent-sdk";

131 170 

132const seenIds = new Set<string>();171const seenIds = new Set<string>();

133let totalInputTokens = 0;172let totalInputTokens = 0;

134let totalOutputTokens = 0;173let resultOutputTokens = 0;

135 174 

136try {175try {

137 for await (const message of query({ prompt: "Summarize this project" })) {176 for await (const message of query({ prompt: "Summarize this project" })) {

138 if (message.type === "assistant") {177 if (message.type === "assistant" && !message.parent_tool_use_id) {

139 const msgId = message.message.id;178 const msgId = message.message.id;

140 179 

141 // Parallel tool calls share the same ID, only count once180 // Parallel tool calls share the same ID, only count once

142 if (!seenIds.has(msgId)) {181 if (!seenIds.has(msgId)) {

143 seenIds.add(msgId);182 seenIds.add(msgId);

144 totalInputTokens += message.message.usage.input_tokens;183 totalInputTokens += message.message.usage.input_tokens;

145 totalOutputTokens += message.message.usage.output_tokens;

146 }184 }

147 }185 }

186 if (message.type === "result") {

187 // Per-step output_tokens is a placeholder; the result message

188 // carries the accumulated output total.

189 resultOutputTokens = message.usage.output_tokens;

190 }

148 }191 }

149} catch (error) {192} catch (error) {

150 // A single-shot query() throws after yielding an error result, so the193 // A single-shot query() throws after yielding an error result, so the

151 // totals below still reflect the steps that ran before the failure.194 // input total below still reflects the steps that ran before the failure.

152 console.error(`Session ended with an error: ${error}`);195 console.error(`Session ended with an error: ${error}`);

153}196}

154 197 

155console.log(`Steps: ${seenIds.size}`);198console.log(`Steps: ${seenIds.size}`);

156console.log(`Input tokens: ${totalInputTokens}`);199console.log(`Input tokens: ${totalInputTokens}`);

157console.log(`Output tokens: ${totalOutputTokens}`);200console.log(`Output tokens: ${resultOutputTokens}`);

158```201```

159 202 

160<h3 id="break-down-usage-per-model">203<h3 id="break-down-usage-per-model">

161 Nutzung pro Modell aufschlüsseln204 Nutzung pro Modell aufschlüsseln

162</h3>205</h3>

163 206 

164Die Ergebnis-Nachricht enthält [`modelUsage`](/docs/de/agent-sdk/typescript#modelusage), eine Zuordnung von Modellname zu Token-Zählungen und Kosten pro Modell. Dies ist nützlich, wenn Sie mehrere Modelle ausführen (zum Beispiel Haiku für Sub-Agenten und Opus für den Haupt-Agenten) und sehen möchten, wohin die Tokens gehen.207Die Ergebnisnachricht enthält [`modelUsage`](/docs/de/agent-sdk/typescript#modelusage), eine Zuordnung von Modellnamen zu Token-Zählungen und Kosten pro Modell. Dies ist nützlich, wenn Sie mehrere Modelle ausführen (zum Beispiel Haiku für Subagenten und Opus für den Hauptagenten) und sehen möchten, wohin die Token fließen.

208 

209Das Feld `costBasis` jedes Eintrags gibt an, mit welcher Preistabelle die letzte Anfrage dieses Modells berechnet wurde: `list` für den Listenpreis, `managed` für eine [`modelPricing`](/docs/de/settings-reference#modelpricing)-Tabelle oder `unknown`, wenn keine der beiden auf die Modell-ID zutraf. Das Feld erfordert Claude Code v2.1.246 oder höher.

165 210 

166Das folgende Beispiel führt eine Abfrage aus und gibt die Kosten und Token-Aufschlüsselung für jedes verwendete Modell aus:211Das folgende Beispiel führt eine Abfrage aus und gibt die Kosten- und Token-Aufschlüsselung für jedes verwendete Modell aus:

167 212 

168```typescript theme={null}213```typescript theme={null}

169import { query } from "@anthropic-ai/claude-agent-sdk";214import { query } from "@anthropic-ai/claude-agent-sdk";


189```234```

190 235 

191<h2 id="accumulate-costs-across-multiple-calls">236<h2 id="accumulate-costs-across-multiple-calls">

192 Kosten über mehrere Aufrufe akkumulieren237 Kosten über mehrere Aufrufe hinweg akkumulieren

193</h2>238</h2>

194 239 

195Jeder `query()` Aufruf gibt seinen eigenen `total_cost_usd` zurück. Das SDK bietet keine Sitzungs-Ebenen-Summe, daher müssen Sie, wenn Ihre Anwendung mehrere `query()` Aufrufe tätigt (zum Beispiel in einer mehrstufigen Sitzung oder über verschiedene Benutzer), die Summen selbst akkumulieren.240Jeder `query()`-Aufruf gibt in seinen Ergebnissen `total_cost_usd` zurück. Wie Sie die Werte kombinieren, hängt davon ab, ob die Aufrufe eine Sitzung gemeinsam nutzen:

241 

242* **Unabhängige Aufrufe ohne die Option `resume` oder `continue`**: Jedes Ergebnis deckt nur den eigenen Aufruf ab, daher addieren Sie die Gesamtwerte selbst, wie es die folgenden Beispiele tun.

243* **Aufrufe, die dieselbe Sitzung fortsetzen**: Claude Code speichert die Gesamtwerte der Sitzung in ihrem [Transkript](/docs/de/sessions#where-transcripts-are-stored), wenn der Prozess normal beendet wird, und stellt sie wieder her, wenn ein späterer Aufruf die Sitzung fortsetzt oder forkt. Jedes Ergebnis enthält bereits die früheren Ausgaben der Sitzung. Lesen Sie das neueste Ergebnis, um den Gesamtwert der Sitzung zu erhalten; wenn Sie die Ergebnisse summieren, werden die wiederhergestellten Ausgaben doppelt gezählt. Vor v2.1.277 begannen die Gesamtwerte einer Sitzung, die Sie über das SDK oder `claude -p` fortgesetzt haben, bei null, sodass die Ergebnisse jedes Aufrufs nur diesen Aufruf abdeckten.

244 

245Im Streaming-Eingabemodus lesen Sie den Gesamtwert jedes Aufrufs wie unter [Kosten im Streaming-Eingabemodus verfolgen](#track-costs-in-streaming-input-mode) beschrieben. Für einen Aufruf, der mit einem Absturz endete, siehe [Gesamtwerte nach einem Sitzungsabsturz wiederherstellen](#recover-totals-after-a-session-crash).

196 246 

197Die folgenden Beispiele führen zwei `query()` Aufrufe nacheinander aus, addieren den `total_cost_usd` jedes Aufrufs zu einer laufenden Summe und geben sowohl die Kosten pro Aufruf als auch die kombinierten Kosten aus:247Die folgenden Beispiele führen zwei `query()`-Aufrufe nacheinander aus, addieren das `total_cost_usd` jedes Aufrufs zu einer laufenden Summe und geben sowohl die Kosten pro Aufruf als auch die kombinierten Kosten aus:

198 248 

199<CodeGroup>249<CodeGroup>

200 ```typescript TypeScript theme={null}250 ```typescript TypeScript theme={null}


263 ```313 ```

264</CodeGroup>314</CodeGroup>

265 315 

266<h2 id="handle-errors-caching-and-token-discrepancies">316<h2 id="handle-errors-caching-and-output-token-counts">

267 Fehler, Caching und Token-Diskrepanzen behandeln317 Fehler, Caching und Ausgabe-Token-Zählungen behandeln

268</h2>318</h2>

269 319 

270Für genaue Kostenverfolgung müssen Sie fehlgeschlagene Gespräche, Cache-Token-Preisgestaltung und gelegentliche Berichterstattungsinkonsistenzen berücksichtigen.320Für eine genaue Kostenverfolgung sollten Sie die Platzhalter-Ausgabezählung bei Assistentennachrichten, die von einer fehlgeschlagenen Konversation verbrauchten Token und die Preise für Cache-Token berücksichtigen.

271 321 

272<h3 id="resolve-output-token-discrepancies">322<h3 id="read-output-tokens-from-the-result-message">

273 Output-Token-Diskrepanzen auflösen323 Ausgabe-Token aus der Ergebnisnachricht lesen

274</h3>324</h3>

275 325 

276In seltenen Fällen können Sie unterschiedliche `output_tokens` Werte für Nachrichten mit der gleichen ID beobachten. Wenn dies auftritt:326Claude Code erstellt jede Assistentennachricht aus der Nutzung, die die API zu Beginn der Antwort gemeldet hat. Daher ist `output_tokens` einer Nachricht nur die Zählung, die die API bei `message_start` gemeldet hatte, bevor die Antwort generiert wurde. Eine API-Antwort kann mehrere Assistentennachrichten erzeugen, und jede von ihnen enthält denselben Platzhalter.

277 327 

2781. **Verwenden Sie den höchsten Wert:** die letzte Nachricht in einer Gruppe enthält typischerweise die genaue Summe.328Die API meldet die tatsächliche Ausgabezählung am Ende der Antwort, und Claude Code fügt sie der Ergebnisnachricht hinzu. Lesen Sie Ausgabe-Token aus `usage` des Ergebnisses oder aus `modelUsage` für eine Aufschlüsselung pro Modell.

2792. **Bevorzugen Sie die Ergebnis-Nachricht:** die `total_cost_usd` in der Ergebnis-Nachricht spiegelt die akkumulierte Schätzung des SDK über alle Schritte wider, daher ist sie zuverlässiger als die Summe der Werte pro Schritt selbst. Es ist immer noch eine Schätzung und kann von Ihrer tatsächlichen Rechnung abweichen.329 

2803. **Melden Sie Inkonsistenzen:** reichen Sie Probleme im [Claude Code GitHub Repository](https://github.com/anthropics/claude-code/issues) ein.330Um zu beobachten, wie die Ausgabezählung einer Antwort während des Streamings wächst, setzen Sie `includePartialMessages` bzw. `include_partial_messages` in Python und lesen Sie `usage` aus jedem `message_delta`-Stream-Event, typisiert als [`SDKPartialAssistantMessage`](/docs/de/agent-sdk/typescript#sdkpartialassistantmessage) in TypeScript und [`StreamEvent`](/docs/de/agent-sdk/python#streamevent) in Python.

281 331 

282<h3 id="track-costs-on-failed-conversations">332<h3 id="track-costs-on-failed-conversations">

283 Kosten bei fehlgeschlagenen Gesprächen verfolgen333 Kosten bei fehlgeschlagenen Konversationen verfolgen

284</h3>334</h3>

285 335 

286Sowohl erfolgreiche als auch Fehler-Ergebnis-Nachrichten enthalten `usage` und `total_cost_usd`. Wenn ein Gespräch in der Mitte fehlschlägt, haben Sie immer noch Tokens bis zum Punkt des Fehlers verbraucht. Lesen Sie Kostendaten immer aus der Ergebnis-Nachricht, unabhängig von ihrem `subtype`.336Sowohl Erfolgs- als auch Fehler-Ergebnisnachrichten enthalten `usage` und `total_cost_usd`. In Python sind beide Felder als optional typisiert, prüfen Sie also, dass sie nicht `None` sind, bevor Sie sie lesen.

337 

338Wenn eine Konversation mittendrin fehlschlägt, haben Sie bis zum Zeitpunkt des Fehlers trotzdem Token verbraucht. Lesen Sie Kostendaten aus jeder Ergebnisnachricht, unabhängig davon, ob ihr `subtype` `success` oder einer der Fehler-Subtypen ist. Bei einigen Fehlerergebnissen meldet `usage` weniger, als der Aufruf tatsächlich verbraucht hat:

339 

340* **`error_during_execution` nach einem [Sitzungsabsturz](#recover-totals-after-a-session-crash)**: Alle Kostenfelder können auf null gesetzt sein.

341* **`error_max_budget_usd`**: `usage` lässt die Antwort aus, die das Budget überschritten hat, während `total_cost_usd` und `modelUsage` sie enthalten.

342 

343Wenn Sie die Wahl haben, rechnen Sie auf Basis von `total_cost_usd` oder `modelUsage` statt `usage` ab.

344 

345<h3 id="recover-totals-after-a-session-crash">

346 Summen nach einem Sitzungsabsturz wiederherstellen

347</h3>

348 

349Wenn der Claude-Code-Prozess abstürzt, gibt er ein abschließendes `error_during_execution`-Ergebnis aus und beendet sich, sowohl im Single-Shot- als auch im Streaming-Eingabemodus. Dieses Ergebnis kann auf null gesetzte Werte für `usage`, `total_cost_usd` und `modelUsage` enthalten. Stellen Sie die Summen des Aufrufs daher aus dem wieder her, was davor eingetroffen ist. Schritt 1 stellt die vollständigen Summen wieder her, sofern ein früheres Ergebnis existiert; der Fallback in Schritt 2 stellt nur die Eingabe- und Cache-Token der Hauptschleife wieder her.

350 

3511. Verwenden Sie das Ergebnis des Turns vor dem Absturz. Im Streaming-Eingabemodus enthält es die laufende Summe, die unter [Kosten im Streaming-Eingabemodus verfolgen](#track-costs-in-streaming-input-mode) beschrieben ist. Gehen Sie stattdessen zu Schritt 2, wenn Ihnen dieses Ergebnis nicht weiterhilft:

352 * Der Aufruf war Single-Shot, daher existiert kein früheres Ergebnis.

353 * Der Absturz trat im ersten Turn auf.

354 * Der Turn vor dem Absturz war das `/clear` selbst, sodass sein Ergebnis nur das Zurücksetzen abdeckt.

3552. Summieren Sie stattdessen `usage` der Assistentennachrichten und zählen Sie jede API-Antwort nur einmal, wie es das Beispiel unter [Nutzung pro Schritt verfolgen](#track-per-step-usage) tut. Im Single-Shot-Modus summieren Sie alle; im Streaming-Eingabemodus summieren Sie diejenigen, die nach dem letzten Ergebnis eingetroffen sind. Dadurch erhalten Sie die Eingabe- und Cache-Token der Hauptschleife. Die Nutzung von Subagenten lässt sich auf diese Weise nicht wiederherstellen, ebenso wenig Ausgabe-Token oder USD-Kosten, da [`output_tokens` pro Schritt ein Platzhalter ist](#read-output-tokens-from-the-result-message).

287 356 

288<h3 id="track-cache-tokens">357<h3 id="track-cache-tokens">

289 Cache-Tokens verfolgen358 Cache-Token verfolgen

290</h3>359</h3>

291 360 

292Das Agent SDK verwendet automatisch [prompt caching](https://platform.claude.com/docs/en/build-with-claude/prompt-caching), um Kosten bei wiederholtem Inhalt zu reduzieren. Sie müssen Caching nicht selbst konfigurieren. Das Nutzungs-Objekt enthält zwei zusätzliche Felder für Cache-Verfolgung:361Das Agent SDK verwendet automatisch [Prompt-Caching](https://platform.claude.com/docs/en/build-with-claude/prompt-caching), um die Kosten für wiederholte Inhalte zu senken. Sie müssen das Caching nicht selbst konfigurieren. Das Nutzungsobjekt enthält zwei zusätzliche Felder zur Cache-Verfolgung:

293 362 

294* `cache_creation_input_tokens`: Tokens, die zum Erstellen neuer Cache-Einträge verwendet werden (berechnet zu einem höheren Satz als Standard-Input-Tokens).363* `cache_creation_input_tokens`: Token, die zum Erstellen neuer Cache-Einträge verwendet werden (zu einem höheren Tarif abgerechnet als Standard-Eingabe-Token).

295* `cache_read_input_tokens`: Tokens, die aus vorhandenen Cache-Einträgen gelesen werden (berechnet zu einem reduzierten Satz).364* `cache_read_input_tokens`: Token, die aus vorhandenen Cache-Einträgen gelesen werden (zu einem reduzierten Tarif abgerechnet).

296 365 

297Verfolgen Sie diese separat von `input_tokens`, um Cache-Einsparungen zu verstehen. In TypeScript sind diese Felder auf dem [`Usage`](/docs/de/agent-sdk/typescript#usage) Objekt typisiert. In Python erscheinen sie als Schlüssel im [`ResultMessage.usage`](/docs/de/agent-sdk/python#resultmessage) dict (zum Beispiel, `message.usage.get("cache_read_input_tokens", 0)`).366Verfolgen Sie diese getrennt von `input_tokens`, um die Einsparungen durch Caching nachzuvollziehen. In TypeScript sind diese Felder im [`Usage`](/docs/de/agent-sdk/typescript#usage)-Objekt typisiert. In Python erscheinen sie als Schlüssel im Dict [`ResultMessage.usage`](/docs/de/agent-sdk/python#resultmessage) (zum Beispiel `message.usage.get("cache_read_input_tokens", 0)`).

298 367 

299<h3 id="extend-the-prompt-cache-ttl-to-one-hour">368<h3 id="extend-the-prompt-cache-ttl-to-one-hour">

300 Prompt-Cache-TTL auf eine Stunde verlängern369 Die TTL des Prompt-Caches auf eine Stunde verlängern

301</h3>370</h3>

302 371 

303Cache-Einträge, die vom SDK geschrieben werden, verwenden standardmäßig eine 5-Minuten-TTL, wenn Sie sich mit einem API-Schlüssel authentifizieren oder auf Amazon Bedrock, Google Cloud's Agent Platform oder Microsoft Foundry ausführen. Wenn Ihre Workload viele kurze Sitzungen gegen das gleiche System-Prompt und den gleichen Kontext mit Lücken länger als 5 Minuten zwischen ihnen ausführt, läuft der Cache zwischen Sitzungen ab und jede neue Sitzung zahlt den vollen Input-Preis.372Ihre eigenen Turns fallen in den [TTL-Bereich der Hauptkonversation](/docs/de/prompt-caching#which-ttl-each-request-gets), zusammen mit den Hilfsanfragen, die Claude Code inline mit ihnen ausführt. Die Anfragen, die Claude Code außerhalb dieser Konversation stellt, etwa [Subagenten](/docs/de/agent-sdk/subagents), haben eine [separate TTL-Steuerung](/docs/de/prompt-caching#choose-the-ttl-yourself).

304 373 

305Um eine 1-Stunden-TTL bei Cache-Schreibvorgängen anzufordern, setzen Sie die [`ENABLE_PROMPT_CACHING_1H`](/docs/de/env-vars) Umgebungsvariable. Sie können sie in Ihrer Shell- oder Container-Umgebung exportieren oder sie durch `options.env` übergeben.374Cache-Einträge für Ihre eigenen Turns verwenden standardmäßig eine TTL von 5 Minuten, wenn Sie sich mit einem API-Schlüssel authentifizieren oder auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder [Claude Platform on AWS](/docs/de/claude-platform-on-aws) ausführen. Wenn Ihr Workload viele kurze Sitzungen mit demselben System-Prompt und Kontext ausführt und zwischen ihnen Pausen von mehr als 5 Minuten liegen, läuft der Cache zwischen den Sitzungen ab, und jede neue Sitzung zahlt den vollen Eingabepreis.

306 375 

307Das folgende Beispiel aktiviert 1-Stunden-TTL für einen Agenten, der auf Amazon Bedrock ausgeführt wird:376Um eine TTL von 1 Stunde für Cache-Schreibvorgänge anzufordern, setzen Sie die Umgebungsvariable [`ENABLE_PROMPT_CACHING_1H`](/docs/de/env-vars). Sie können sie in Ihrer Shell- oder Container-Umgebung exportieren oder über `options.env` übergeben.

377 

378Das folgende Beispiel aktiviert die 1-Stunden-TTL für einen Agenten, der auf Amazon Bedrock läuft. Da es `CLAUDE_CODE_USE_BEDROCK` setzt, benötigt es funktionierende AWS-Anmeldedaten für [Amazon Bedrock](/docs/de/amazon-bedrock); ohne diese schlägt die Abfrage fehl.

308 379 

309<CodeGroup>380<CodeGroup>

310 ```python Python theme={null}381 ```python Python theme={null}


344 ```415 ```

345</CodeGroup>416</CodeGroup>

346 417 

347Cache-Schreibvorgänge mit einer 1-Stunden-TTL werden zu einem höheren Satz als 5-Minuten-Schreibvorgänge berechnet, daher aktiviert dies einen Austausch von höheren Schreibkosten für mehr Cache-Lesevorgänge. Siehe [prompt caching Preisgestaltung](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) für Details. Claude-Abonnement-Benutzer erhalten bereits automatisch 1-Stunden-TTL und müssen diese Variable nicht setzen.418Cache-Schreibvorgänge mit einer TTL von 1 Stunde werden zu einem höheren Tarif abgerechnet als 5-Minuten-Schreibvorgänge. Durch das Aktivieren tauschen Sie also höhere Schreibkosten gegen mehr Cache-Lesevorgänge. Details finden Sie unter [Preise für Prompt-Caching](https://platform.claude.com/docs/en/build-with-claude/prompt-caching). Mit einem Claude-Abonnement erhalten Sie innerhalb der in Ihrem Plan enthaltenen Nutzung die 1-Stunden-TTL für Ihre eigenen Turns und für einige der Hilfsanfragen, die Claude Code daneben stellt, ohne diese Variable zu setzen. Claude Code stuft diese Turns auf die 5-Minuten-TTL herab, sobald Sie [Nutzungsguthaben](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) in Anspruch nehmen.

419 

420`ENABLE_PROMPT_CACHING_1H` fordert die 1-Stunden-TTL für jede Anfrage in beiden Bereichen an. Um für jeden Bereich separat eine TTL zu wählen, verwenden Sie stattdessen diese Steuerungen. Jede akzeptiert `5m` oder `1h` und hat Vorrang vor `ENABLE_PROMPT_CACHING_1H`:

421 

422* Hauptkonversation: die [Umgebungsvariable](/docs/de/env-vars) `CLAUDE_CODE_PROMPT_CACHE_TTL` oder die Einstellung [`promptCacheTtl`](/docs/de/settings-reference#promptcachettl)

423* Alles andere: die Umgebungsvariable `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL` oder die Einstellung [`subagentPromptCacheTtl`](/docs/de/settings-reference#subagentpromptcachettl)

424 

425Wenn Sie `promptCacheTtl` auf `1h` setzen, bleibt der 1-Stunden-Cache für die Hauptkonversation erhalten, während Sie Nutzungsguthaben in Anspruch nehmen. Die vollständige Rangfolge finden Sie unter [die TTL selbst wählen](/docs/de/prompt-caching#choose-the-ttl-yourself).

348 426 

349<h2 id="related-documentation">427<h2 id="related-documentation">

350 Verwandte Dokumentation428 Verwandte Dokumentation

Details

261 261 

262* **Top-Level-Felder** werden bei jedem Ereignis akzeptiert: `systemMessage` zeigt eine Nachricht für den Benutzer an, und `continue` (`continue_` in Python) bestimmt, ob der Agent nach diesem Hook weiterläuft. Einige Ereignisse verwerfen sie oder liefern sie an anderer Stelle. Jeder [Abschnitt des Ereignisses](/docs/de/hooks#hook-events) auf der Hooks-Seite sagt, wo sie landen.262* **Top-Level-Felder** werden bei jedem Ereignis akzeptiert: `systemMessage` zeigt eine Nachricht für den Benutzer an, und `continue` (`continue_` in Python) bestimmt, ob der Agent nach diesem Hook weiterläuft. Einige Ereignisse verwerfen sie oder liefern sie an anderer Stelle. Jeder [Abschnitt des Ereignisses](/docs/de/hooks#hook-events) auf der Hooks-Seite sagt, wo sie landen.

263* **`hookSpecificOutput`** steuert die aktuelle Operation. Die Felder, die Sie darin setzen, hängen vom Hook-Ereignistyp ab:263* **`hookSpecificOutput`** steuert die aktuelle Operation. Die Felder, die Sie darin setzen, hängen vom Hook-Ereignistyp ab:

264 * Für `PreToolUse` Hooks ist dies der Ort, an dem Sie `permissionDecision` (`"allow"`, `"deny"`, `"ask"` oder `"defer"`), `permissionDecisionReason` und `updatedInput` setzen. Wenn Sie `"defer"` zurückgeben, endet die Abfrage, damit Sie sie [später fortsetzen](/docs/de/hooks#defer-a-tool-call-for-later) können.264 * Für `PreToolUse` Hooks ist dies der Ort, an dem Sie `permissionDecision` (`"allow"`, `"deny"`, `"ask"` oder `"defer"`), `permissionDecisionReason` und `updatedInput` setzen. Wenn Sie `"defer"` zurückgeben, endet der Turn mit einer Ergebnisnachricht, deren `stop_reason` `"tool_deferred"` ist, sodass Sie den Aufruf [später fortsetzen](/docs/de/hooks#defer-a-tool-call-for-later) können.

265 * Für `PostToolUse` Hooks können Sie `additionalContext` setzen, um Informationen zum Tool-Ergebnis anzuhängen. Um die Ausgabe des Tools vor Claude zu ersetzen, setzen Sie `updatedToolOutput`, das für jedes Tool in beiden SDKs funktioniert. Das ältere `updatedMCPToolOutput` Feld ersetzt nur MCP-Tool-Ausgabe und ist veraltet.265 * Für `PostToolUse` Hooks können Sie `additionalContext` setzen, um Informationen zum Tool-Ergebnis anzuhängen. Um die Ausgabe des Tools zu ersetzen, bevor Claude sie sieht, setzen Sie `updatedToolOutput`, das für jedes Tool in beiden SDKs funktioniert. Das ältere `updatedMCPToolOutput` Feld ersetzt nur MCP-Tool-Ausgabe und ist veraltet.

266 * Im TypeScript SDK kann ein `PostToolUse` Callback auch `classifierContext` zurückgeben, eine kurze Notiz über das Ergebnis des Tool-Aufrufs für den [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) Berechtigungsklassifizierer. Da Ihr Callback in Ihrem eigenen Anwendungsprozess ausgeführt wird, kann der Klassifizierer eine Benutzeraussage, die Sie in der Notiz weitergeben, als Benutzerabsicht gewichten. Das Feld erfordert TypeScript Agent SDK v0.3.236 oder später. [Annotieren Sie ein Ergebnis für den Auto-Modus Klassifizierer](/docs/de/hooks#annotate-a-result-for-the-auto-mode-classifier) behandelt die Längenbegrenzung, die Nur-Synchron-Regel und was nicht in die Notiz gehört.266 * Im TypeScript SDK kann ein `PostToolUse` Callback auch `classifierContext` zurückgeben, eine kurze Notiz über das Ergebnis des Tool-Aufrufs für den Berechtigungsklassifikator des [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode). Da Ihr Callback in Ihrem eigenen Anwendungsprozess ausgeführt wird, kann der Klassifikator eine Benutzeraussage, die Sie in der Notiz weitergeben, als Benutzerabsicht gewichten. Das Feld erfordert TypeScript Agent SDK v0.3.236 oder später. [Ein Ergebnis für den Auto-Modus-Klassifikator annotieren](/docs/de/hooks#annotate-a-result-for-the-auto-mode-classifier) behandelt die Längenbegrenzung, die Nur-Synchron-Regel und was nicht in die Notiz gehört.

267 267 

268Geben Sie `{}` zurück, um die Operation ohne Änderungen zuzulassen. SDK-Callback-Hooks verwenden das gleiche JSON-Ausgabeformat wie [Claude Code Shell-Befehls-Hooks](/docs/de/hooks#json-output), das jedes Feld und ereignisspezifische Option dokumentiert. Für die SDK-Typdefinitionen siehe die [TypeScript](/docs/de/agent-sdk/typescript#synchookjsonoutput) und [Python](/docs/de/agent-sdk/python#synchookjsonoutput) SDK-Referenzen.268Geben Sie `{}` zurück, um die Operation ohne Änderungen zuzulassen. SDK-Callback-Hooks verwenden das gleiche JSON-Ausgabeformat wie [Claude Code Shell-Befehls-Hooks](/docs/de/hooks#json-output), das jedes Feld und ereignisspezifische Option dokumentiert. Für die SDK-Typdefinitionen siehe die [TypeScript](/docs/de/agent-sdk/typescript#synchookjsonoutput) und [Python](/docs/de/agent-sdk/python#synchookjsonoutput) SDK-Referenzen.

269 269 

Details

896| Eigenschaft | Typ | Standard | Beschreibung |896| Eigenschaft | Typ | Standard | Beschreibung |

897| :- | :- | :- | :- |897| :- | :- | :- | :- |

898| `tools` | `list[str] \| ToolsPreset \| None` | `None` | Tools-Konfiguration. Verwenden Sie `{"type": "preset", "preset": "claude_code"}` für die Standard-Tools von Claude Code |898| `tools` | `list[str] \| ToolsPreset \| None` | `None` | Tools-Konfiguration. Verwenden Sie `{"type": "preset", "preset": "claude_code"}` für die Standard-Tools von Claude Code |

899| `allowed_tools` | `list[str]` | `[]` | Tools, die automatisch genehmigt werden, ohne zu fragen. Dies beschränkt Claude nicht nur auf diese Tools. Wenn Sie einen der [Task-Tracking-Tools](/docs/de/agent-sdk/todo-tracking#model-availability) hier nennen, aktiviert Claude Code die Sitzung auch. Andere nicht aufgelistete Tools fallen durch `permission_mode` und `can_use_tool`. Verwenden Sie `disallowed_tools`, um Tools zu blockieren. Siehe [Berechtigungen](/docs/de/agent-sdk/permissions#allow-and-deny-rules) |899| `allowed_tools` | `list[str]` | `[]` | Tools, die automatisch genehmigt werden, ohne nachzufragen. Dies beschränkt Claude nicht nur auf diese Tools. Wenn Sie eines der [Task-Tracking-Tools](/docs/de/agent-sdk/todo-tracking#model-availability) hier nennen, aktiviert Claude Code diese auch für die Sitzung. Andere nicht aufgelistete Tools fallen auf `permission_mode` und `can_use_tool` durch. Verwenden Sie `disallowed_tools`, um Tools zu blockieren. Siehe [Berechtigungen](/docs/de/agent-sdk/permissions#allow-and-deny-rules) |

900| `system_prompt` | `str \| SystemPromptPreset \| SystemPromptCustom \| SystemPromptFile \| None` | `None` | System-Prompt-Konfiguration. Übergeben Sie eine Zeichenkette für einen benutzerdefinierten Prompt, `{"type": "preset", "preset": "claude_code"}` für den System-Prompt von Claude Code mit optionalem `"append"`, `{"type": "custom", "prompt": "..."}` für einen benutzerdefinierten Prompt, der auch `"snapshot"` setzen kann, oder `{"type": "file", "path": "..."}` zum Laden eines großen Prompts von der Festplatte. Siehe [`SystemPromptPreset`](#systempromptpreset), [`SystemPromptCustom`](#systempromptcustom) und [`SystemPromptFile`](#systempromptfile) |900| `system_prompt` | `str \| SystemPromptPreset \| SystemPromptCustom \| SystemPromptFile \| None` | `None` | System-Prompt-Konfiguration. Übergeben Sie eine Zeichenkette für einen benutzerdefinierten Prompt, `{"type": "preset", "preset": "claude_code"}` für den System-Prompt von Claude Code mit optionalem `"append"`, `{"type": "custom", "prompt": "..."}` für einen benutzerdefinierten Prompt, der auch `"snapshot"` setzen kann, oder `{"type": "file", "path": "..."}` zum Laden eines großen Prompts von der Festplatte. Siehe [`SystemPromptPreset`](#systempromptpreset), [`SystemPromptCustom`](#systempromptcustom) und [`SystemPromptFile`](#systempromptfile) |

901| `mcp_servers` | `dict[str, McpServerConfig] \| str \| Path` | `{}` | MCP-Server-Konfigurationen oder Pfad zur Konfigurationsdatei |901| `mcp_servers` | `dict[str, McpServerConfig] \| str \| Path` | `{}` | MCP-Server-Konfigurationen oder Pfad zur Konfigurationsdatei |

902| `strict_mcp_config` | `bool` | `False` | Wenn `True`, verwenden Sie nur die Server, die in `mcp_servers` übergeben werden, und ignorieren Sie das Projekt `.mcp.json`, Benutzereinstellungen, von Plugins bereitgestellte MCP-Server und [claude.ai-Konnektoren](/docs/de/mcp#use-mcp-servers-from-claude-ai). Entspricht dem CLI-Flag `--strict-mcp-config` |902| `strict_mcp_config` | `bool` | `False` | Wenn `True`, werden nur die in `mcp_servers` übergebenen Server verwendet und die Projektdatei `.mcp.json`, Benutzereinstellungen, von Plugins bereitgestellte MCP-Server und [claude.ai-Konnektoren](/docs/de/mcp#use-mcp-servers-from-claude-ai) ignoriert. Entspricht dem CLI-Flag `--strict-mcp-config` |

903| `permission_mode` | `PermissionMode \| None` | `None` | Berechtigungsmodus für die Tool-Nutzung |903| `permission_mode` | `PermissionMode \| None` | `None` | Berechtigungsmodus für die Tool-Nutzung |

904| `continue_conversation` | `bool` | `False` | Setzen Sie die neueste Konversation fort |904| `continue_conversation` | `bool` | `False` | Setzen Sie die neueste Konversation fort |

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

906| `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 |906| `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 |

907| `max_turns` | `int \| None` | `None` | Maximale agentengesteuerte Umdrehungen (Tool-Use-Rundgänge) |907| `max_turns` | `int \| None` | `None` | Maximale Anzahl agentischer Turns (Tool-Use-Rundläufe) |

908| `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 Genauigkeitsvorbehalt und Zurücksetzen-Verhalten siehe [Kosten und Nutzung verfolgen](/docs/de/agent-sdk/cost-tracking) |908| `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) |

909| `disallowed_tools` | `list[str]` | `[]` | Tools, die verweigert werden. Ein einfacher Name wie `"Bash"` entfernt das Tool aus Claudes Kontext. Eine scoped-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) |909| `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) |

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

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

912| `fallback_model` | `str \| None` | `None` | Fallback-Modell, das verwendet wird, wenn das primäre Modell fehlschlägt. Akzeptiert eine kommagetrennte Liste. Anleitungen finden Sie unter [Modell auswählen](/docs/de/agent-sdk/configuration#choose-a-model) |912| `fallback_model` | `str \| None` | `None` | Fallback-Modell, das verwendet wird, wenn das primäre Modell fehlschlägt. Akzeptiert eine kommagetrennte Liste. Anleitungen finden Sie unter [Modell auswählen](/docs/de/agent-sdk/configuration#choose-a-model) |

913| `betas` | `list[SdkBeta]` | `[]` | Beta-Funktionen zum Aktivieren. Siehe [`SdkBeta`](#sdkbeta) für verfügbare Optionen |913| `betas` | `list[SdkBeta]` | `[]` | Beta-Funktionen zum Aktivieren. Siehe [`SdkBeta`](#sdkbeta) für verfügbare Optionen |

914| `output_format` | `dict[str, Any] \| None` | `None` | Ausgabeformat für strukturierte Antworten (z. B. `{"type": "json_schema", "schema": {...}}`). Siehe [Strukturierte Ausgaben](/docs/de/agent-sdk/structured-outputs) für Details |914| `output_format` | `dict[str, Any] \| None` | `None` | Ausgabeformat für strukturierte Antworten (z. B. `{"type": "json_schema", "schema": {...}}`). Siehe [Strukturierte Ausgaben](/docs/de/agent-sdk/structured-outputs) für Details |

915| `permission_prompt_tool_name` | `str \| None` | `None` | MCP-Tool-Name für Berechtigungsaufforderungen |915| `permission_prompt_tool_name` | `str \| None` | `None` | MCP-Tool-Name für Berechtigungsabfragen |

916| `cwd` | `str \| Path \| None` | `None` | Aktuelles Arbeitsverzeichnis |916| `cwd` | `str \| Path \| None` | `None` | Aktuelles Arbeitsverzeichnis |

917| `cli_path` | `str \| Path \| None` | `None` | Benutzerdefinierter Pfad zur Claude Code CLI-Ausführungsdatei |917| `cli_path` | `str \| Path \| None` | `None` | Benutzerdefinierter Pfad zur ausführbaren Datei der Claude Code CLI |

918| `settings` | `str \| None` | `None` | Pfad zu einer Einstellungsdatei oder einer Inline-JSON-Zeichenkette |918| `settings` | `str \| None` | `None` | Pfad zu einer Einstellungsdatei oder einer Inline-JSON-Zeichenkette |

919| `add_dirs` | `list[str \| Path]` | `[]` | Zusätzliche Verzeichnisse, auf die Claude zugreifen kann. Das SDK übergibt jeden Eintrag an Claude Code als `--add-dir`, daher lädt Claude Code mit der `project`-Einstellungsquelle auch [die Skills, Befehle und Subagenten des Verzeichnisses](/docs/de/permissions#additional-directories-grant-file-access-not-configuration) |919| `add_dirs` | `list[str \| Path]` | `[]` | Zusätzliche Verzeichnisse, auf die Claude zugreifen kann. Das SDK übergibt jeden Eintrag an Claude Code als `--add-dir`, daher lädt Claude Code mit der `project`-Einstellungsquelle auch [die Skills, Befehle und Subagenten des Verzeichnisses](/docs/de/permissions#additional-directories-grant-file-access-not-configuration) |

920| `env` | `dict[str, str]` | `{}` | Umgebungsvariablen, die auf der geerbten Prozessumgebung zusammengeführt werden. Siehe [Umgebungsvariablen](/docs/de/env-vars) für Variablen, die die zugrunde liegende CLI liest, und [Langsame oder steckengebliebene API-Antworten handhaben](#handle-slow-or-stalled-api-responses) für Timeout-bezogene Variablen. Setzen Sie `CLAUDE_AGENT_SDK_CLIENT_APP`, um Ihre App im User-Agent-Header zu identifizieren |920| `env` | `dict[str, str]` | `{}` | Umgebungsvariablen, die über die geerbte Prozessumgebung gelegt werden. Siehe [Umgebungsvariablen](/docs/de/env-vars) für Variablen, die die zugrunde liegende CLI liest, und [Langsame oder steckengebliebene API-Antworten handhaben](#handle-slow-or-stalled-api-responses) für Timeout-bezogene Variablen. Setzen Sie `CLAUDE_AGENT_SDK_CLIENT_APP`, um Ihre App im User-Agent-Header zu identifizieren |

921| `extra_args` | `dict[str, str \| None]` | `{}` | Zusätzliche CLI-Argumente, die direkt an die CLI übergeben werden |921| `extra_args` | `dict[str, str \| None]` | `{}` | Zusätzliche CLI-Argumente, die direkt an die CLI übergeben werden |

922| `max_buffer_size` | `int \| None` | `None` | Maximale Bytes beim Puffern der CLI-Stdout |922| `max_buffer_size` | `int \| None` | `None` | Maximale Bytes beim Puffern von CLI-stdout |

923| `debug_stderr` | `Any` | `sys.stderr` | *Veraltet* - Das SDK ignoriert diesen Wert. Verwenden Sie den `stderr`-Callback für CLI-stderr-Ausgabe |923| `debug_stderr` | `Any` | `sys.stderr` | *Veraltet* - Das SDK ignoriert diesen Wert. Verwenden Sie den `stderr`-Callback für die stderr-Ausgabe der CLI |

924| `stderr` | `Callable[[str], None] \| None` | `None` | Callback-Funktion für stderr-Ausgabe von CLI |924| `stderr` | `Callable[[str], None] \| None` | `None` | Callback-Funktion für die stderr-Ausgabe der CLI |

925| `can_use_tool` | [`CanUseTool`](#canusetool) ` \| None` | `None` | Tool-Berechtigungs-Callback, der nur aufgerufen wird, wenn der [Berechtigungsfluss](/docs/de/agent-sdk/permissions#how-permissions-are-evaluated) zu einer Aufforderung führt. Nicht aufgerufen für Aufrufe, die automatisch von `allowed_tools`, Allow-Regeln oder `permission_mode` genehmigt werden. Eine Allow-Regel genehmigt nicht vorab die [Aktionen, die kein Modus automatisch genehmigt](/docs/de/permission-modes#actions-no-mode-auto-approves). Siehe [`CanUseTool`](#canusetool) für Details |925| `can_use_tool` | [`CanUseTool`](#canusetool) ` \| None` | `None` | Tool-Berechtigungs-Callback, der nur aufgerufen wird, wenn der [Berechtigungsablauf](/docs/de/agent-sdk/permissions#how-permissions-are-evaluated) zu einer Berechtigungsabfrage führt. Wird nicht für Aufrufe ausgeführt, die automatisch durch `allowed_tools`, Allow-Regeln oder `permission_mode` genehmigt werden. Eine Allow-Regel genehmigt nicht vorab die [Aktionen, die kein Modus automatisch genehmigt](/docs/de/permission-modes#actions-no-mode-auto-approves). Siehe [`CanUseTool`](#canusetool) für Details |

926| `hooks` | `dict[HookEvent, list[HookMatcher]] \| None` | `None` | Hook-Konfigurationen zum Abfangen von Ereignissen |926| `hooks` | `dict[HookEvent, list[HookMatcher]] \| None` | `None` | Hook-Konfigurationen zum Abfangen von Ereignissen |

927| `user` | `str \| None` | `None` | Auf POSIX-Plattformen das OS-Benutzerkonto, unter dem der Claude Code-Subprozess läuft. Claude Code behält die Umgebung des übergeordneten Prozesses bei, einschließlich `HOME`, und läuft in `cwd` |927| `user` | `str \| None` | `None` | Auf POSIX-Plattformen das OS-Benutzerkonto, unter dem der Claude Code-Subprozess läuft. Claude Code behält die Umgebung des übergeordneten Prozesses bei, einschließlich `HOME`, und läuft in `cwd` |

928| `include_partial_messages` | `bool` | `False` | Schließen Sie partielle Nachrichtenstreaming-Ereignisse ein. Wenn aktiviert, werden [`StreamEvent`](#streamevent)-Nachrichten geliefert |928| `include_partial_messages` | `bool` | `False` | Schließen Sie partielle Nachrichtenstreaming-Ereignisse ein. Wenn aktiviert, werden [`StreamEvent`](#streamevent)-Nachrichten geliefert |

929| `include_hook_events` | `bool` | `False` | Schließen Sie Hook-Lebenszyklusereignisse im Nachrichtenstrom als `HookEventMessage`-Objekte ein |929| `include_hook_events` | `bool` | `False` | Schließen Sie Hook-Lebenszyklusereignisse im Nachrichtenstrom als `HookEventMessage`-Objekte ein |

930| `forward_subagent_text` | `bool` | `False` | Leiten Sie Subagenten-Text und Thinking-Blöcke im Nachrichtenstrom weiter. Ohne diese Option gibt Claude Code nur Subagenten-`tool_use`- und `tool_result`-Blöcke aus, aber keinen Text oder Thinking. Erfordert Python Agent SDK 0.2.140 oder später |930| `forward_subagent_text` | `bool` | `False` | Leiten Sie Subagenten-Text und Thinking-Blöcke im Nachrichtenstrom weiter. Ohne diese Option gibt Claude Code die `tool_use`- und `tool_result`-Blöcke von Subagenten aus, aber keinen Text und kein Thinking. Erfordert Python Agent SDK 0.2.140 oder später |

931| `verbatim_prompts` | `bool` | `False` | Liefern Sie jeden Prompt wie geschrieben. Das SDK sendet jede Benutzernachricht mit `client_composed` auf `True` gesetzt. Siehe [`client_composed`](/docs/de/agent-sdk/typescript#sdkusermessage) für das, was Claude Code bei diesen Nachrichten überspringt. Verwenden Sie diese Option, wenn Ihr Prompt-Text Inhalte enthält, die der Endbenutzer nicht eingegeben hat. Für Pro-Turn-Kontrolle lassen Sie es aus und setzen Sie stattdessen `"client_composed": True` auf einzelnen gestreamten Nachrichten. Während die Option an ist, überschreibt das SDK jeden `client_composed`-Wert, den Sie setzen. Erfordert Python Agent SDK 0.2.158 oder später und Claude Code v2.1.248 oder später; die mit diesen SDK-Versionen gebündelte CLI erfüllt die Claude Code-Anforderung |931| `verbatim_prompts` | `bool` | `False` | Liefern Sie jeden Prompt wie geschrieben. Das SDK sendet jede Benutzernachricht mit `client_composed` auf `True` gesetzt. Siehe [`client_composed`](/docs/de/agent-sdk/typescript#sdkusermessage) für das, was Claude Code bei diesen Nachrichten überspringt. Verwenden Sie diese Option, wenn Ihr Prompt-Text Inhalte enthält, die der Endbenutzer nicht eingegeben hat. Für eine Steuerung pro Turn lassen Sie die Option ausgeschaltet und setzen Sie stattdessen `"client_composed": True` auf einzelnen gestreamten Nachrichten. Während die Option eingeschaltet ist, überschreibt das SDK jeden `client_composed`-Wert, den Sie setzen. Erfordert Python Agent SDK 0.2.158 oder später und Claude Code v2.1.248 oder später; die mit diesen SDK-Versionen gebündelte CLI erfüllt die Claude Code-Anforderung |

932| `fork_session` | `bool` | `False` | Wenn Sie mit `resume` fortsetzen, verzweigen Sie sich zu einer neuen Sitzungs-ID, anstatt die ursprüngliche Sitzung fortzusetzen |932| `fork_session` | `bool` | `False` | Wenn Sie mit `resume` fortsetzen, verzweigen Sie zu einer neuen Sitzungs-ID, anstatt die ursprüngliche Sitzung fortzusetzen |

933| `resume_session_at` | `str \| None` | `None` | Beim Fortsetzen laden Sie die Konversation nur bis zu und einschließlich der Nachricht mit dieser UUID. Verwenden Sie mit `resume`, und normalerweise `fork_session`, um von einem früheren Punkt zu verzweigen. Erfordert Python Agent SDK 0.2.137 oder später |933| `resume_session_at` | `str \| None` | `None` | Beim Fortsetzen wird die Konversation nur bis einschließlich der Nachricht mit dieser UUID geladen. Verwenden Sie dies mit `resume` und normalerweise `fork_session`, um von einem früheren Punkt aus zu verzweigen. Erfordert Python Agent SDK 0.2.137 oder später |

934| `resume_drops_turn` | `str \| None` | `None` | UUID der Benutzereingabe, deren Umdrehung eine `resume_session_at`-Kürzung verwirft. Wenn gesetzt, weigert sich die CLI, die Wiederaufnahme durchzuführen, wenn der verworfene Bereich Einträge enthält, die nicht dieser Umdrehung zugeordnet werden können. Erfordert Python Agent SDK 0.2.137 oder später und Claude Code v2.1.223 oder später; die mit diesen SDK-Versionen gebündelte CLI erfüllt die Claude Code-Anforderung |934| `resume_drops_turn` | `str \| None` | `None` | UUID des Benutzer-Prompts, dessen Turn eine `resume_session_at`-Kürzung verwirft. Wenn gesetzt, verweigert die CLI die Wiederaufnahme, wenn der verworfene Bereich Einträge enthält, die nicht diesem Turn zugeordnet werden können. Erfordert Python Agent SDK 0.2.137 oder später und Claude Code v2.1.223 oder später; die mit diesen SDK-Versionen gebündelte CLI erfüllt die Claude Code-Anforderung |

935| `agents` | `dict[str, AgentDefinition] \| None` | `None` | Programmgesteuert definierte Subagenten |935| `agents` | `dict[str, AgentDefinition] \| None` | `None` | Programmgesteuert definierte Subagenten |

936| `plugins` | `list[SdkPluginConfig]` | `[]` | Laden Sie benutzerdefinierte Plugins aus lokalen Pfaden. Siehe [Plugins](/docs/de/agent-sdk/plugins) für Details |936| `plugins` | `list[SdkPluginConfig]` | `[]` | Laden Sie benutzerdefinierte Plugins aus lokalen Pfaden. Siehe [Plugins](/docs/de/agent-sdk/plugins) für Details |

937| `sandbox` | [`SandboxSettings`](#sandboxsettings) ` \| None` | `None` | Konfigurieren Sie das Sandbox-Verhalten programmgesteuert. Siehe [Sandbox-Einstellungen](#sandboxsettings) für Details |937| `sandbox` | [`SandboxSettings`](#sandboxsettings) ` \| None` | `None` | Konfigurieren Sie das Sandbox-Verhalten programmgesteuert. Siehe [Sandbox-Einstellungen](#sandboxsettings) für Details |

938| `setting_sources` | `list[SettingSource] \| None` | `None` (CLI-Standard: alle Quellen) | Kontrollieren Sie, welche Dateisystem-Einstellungen geladen werden. Übergeben Sie `[]`, um Benutzer-, Projekt- und lokale Einstellungen zu deaktivieren. Mit `skills` gesetzt und dieses Feld nicht gesetzt, werden nur Benutzer- und Projektquellen geladen. Setzen Sie `setting_sources` explizit, um lokale Einstellungen zu behalten. Endpoint-verwaltete Richtlinie wird unabhängig davon geladen; Server-verwaltete Einstellungen werden abgerufen, wenn sich die Sitzung mit einer Organisationsanmeldedaten auf einer [berechtigten Konfiguration](/docs/de/server-managed-settings#platform-availability) authentifiziert. Für Eingaben, die unabhängig von dieser Option gelesen werden, siehe [Was settingSources nicht kontrolliert](/docs/de/agent-sdk/claude-code-features#what-settingsources-does-not-control) |938| `setting_sources` | `list[SettingSource] \| None` | `None` (CLI-Standard: alle Quellen) | Steuern Sie, welche Dateisystem-Einstellungen geladen werden. Übergeben Sie `[]`, um Benutzer-, Projekt- und lokale Einstellungen zu deaktivieren. Wenn `skills` gesetzt ist und dieses Feld nicht, werden nur Benutzer- und Projektquellen geladen. Setzen Sie `setting_sources` explizit, um lokale Einstellungen zu behalten. Endpoint-verwaltete Richtlinien werden unabhängig davon geladen; serververwaltete Einstellungen werden abgerufen, wenn sich die Sitzung mit Anmeldedaten einer Organisation auf einer [berechtigten Konfiguration](/docs/de/server-managed-settings#platform-availability) authentifiziert. Für Eingaben, die unabhängig von dieser Option gelesen werden, siehe [Was settingSources nicht steuert](/docs/de/agent-sdk/claude-code-features#what-settingsources-does-not-control) |

939| `skills` | `list[str] \| Literal["all"] \| None` | `None` | Skills, die der Sitzung zur Verfügung stehen. Übergeben Sie `"all"`, um jeden erkannten Skill zu aktivieren, oder eine Liste von Skill-Namen. Übergeben Sie nur exakte Namen. Das SDK lehnt fehlerhafte und Wildcard-Form-Namen mit einem `ValueError` ab, bevor der Claude Code-Prozess gestartet wird; diese Überprüfung erfordert Python Agent SDK 0.2.129 oder später. Wenn gesetzt, aktiviert das SDK das Skill-Tool automatisch in `allowed_tools`. Wenn Sie auch `tools` übergeben, schließen Sie `"Skill"` in diese Liste ein. Siehe [Skills](/docs/de/agent-sdk/skills) |939| `skills` | `list[str] \| Literal["all"] \| None` | `None` | Skills, die der Sitzung zur Verfügung stehen. Übergeben Sie `"all"`, um jeden erkannten Skill zu aktivieren, oder eine Liste von Skill-Namen. Übergeben Sie nur exakte Namen. Das SDK lehnt fehlerhafte Namen und Namen in Wildcard-Form mit einem `ValueError` ab, bevor der Claude Code-Prozess gestartet wird; diese Überprüfung erfordert Python Agent SDK 0.2.129 oder später. Wenn gesetzt, fügt das SDK das Skill-Tool automatisch zu `allowed_tools` hinzu. Wenn Sie auch `tools` übergeben, schließen Sie `"Skill"` in diese Liste ein. Siehe [Skills](/docs/de/agent-sdk/skills) |

940| `max_thinking_tokens` | `int \| None` | `None` | *Veraltet* - Maximale Token für Thinking-Blöcke. Verwenden Sie stattdessen `thinking` |940| `max_thinking_tokens` | `int \| None` | `None` | *Veraltet* - Maximale Token für Thinking-Blöcke. Verwenden Sie stattdessen `thinking` |

941| `thinking` | [`ThinkingConfig`](#thinkingconfig) ` \| None` | `None` | Steuert das Verhalten des erweiterten Denkens. Hat Vorrang vor `max_thinking_tokens` |941| `thinking` | [`ThinkingConfig`](#thinkingconfig) ` \| None` | `None` | Steuert das Verhalten von Extended Thinking. Hat Vorrang vor `max_thinking_tokens` |

942| `effort` | [`EffortLevel`](#effortlevel) ` \| None` | `None` | Anstrengungsstufe für die Denktiefe. Siehe [Anstrengungsstufe anpassen](/docs/de/model-config#adjust-effort-level) |942| `effort` | [`EffortLevel`](#effortlevel) ` \| None` | `None` | Effort-Stufe für die Denktiefe. Siehe [Effort-Stufe anpassen](/docs/de/model-config#adjust-effort-level) |

943| `session_store` | [`SessionStore`](/docs/de/agent-sdk/session-storage#the-sessionstore-interface) ` \| None` | `None` | Spiegeln Sie Sitzungstranskripte zu einem externen Backend, damit jeder Host sie fortsetzen kann. Siehe [Sitzungen im externen Speicher beibehalten](/docs/de/agent-sdk/session-storage) |943| `session_store` | [`SessionStore`](/docs/de/agent-sdk/session-storage#the-sessionstore-interface) ` \| None` | `None` | Spiegeln Sie Sitzungstranskripte in ein externes Backend, damit ein anderer Host sie fortsetzen kann. Siehe [Sitzungen in externem Speicher persistieren](/docs/de/agent-sdk/session-storage) |

944| `session_store_flush` | `Literal["batched", "eager"]` | `"batched"` | Wann sollen gespiegelte Transkripteinträge zu `session_store` geleert werden. `"batched"` leert einmal pro Umdrehung oder wenn der Puffer voll wird; `"eager"` löst nach jedem Frame einen Hintergrund-Flush aus. Wird ignoriert, wenn `session_store` `None` ist |944| `session_store_flush` | `Literal["batched", "eager"]` | `"batched"` | Wann gespiegelte Transkripteinträge an `session_store` übertragen werden. `"batched"` überträgt einmal pro Turn oder wenn der Puffer voll ist; `"eager"` löst nach jedem Frame einen Flush im Hintergrund aus. Wird ignoriert, wenn `session_store` `None` ist |

945| `load_timeout_ms` | `int` | `60000` | Pro-Aufruf-Timeout für `session_store.load()` und `list_subkeys()` während der Wiederaufnahme-Materialisierung in Millisekunden |945| `load_timeout_ms` | `int` | `60000` | Timeout pro Aufruf für `session_store.load()` und `list_subkeys()` während der Materialisierung bei der Wiederaufnahme, in Millisekunden |

946| `task_budget` | `TaskBudget \| None` | `None` | API-seitiges Token-Budget. Wird als `output_config.task_budget` mit dem `task-budgets-2026-03-13`-Beta-Header gesendet. Übergeben Sie `{"total": <int>}`. |946| `task_budget` | `TaskBudget \| None` | `None` | API-seitiges Token-Budget. Wird als `output_config.task_budget` mit dem Beta-Header `task-budgets-2026-03-13` gesendet. Übergeben Sie `{"total": <int>}`. |

947 947 

948<h4 id="handle-slow-or-stalled-api-responses">948<h4 id="handle-slow-or-stalled-api-responses">

949 Langsame oder steckengebliebene API-Antworten handhaben949 Langsame oder steckengebliebene API-Antworten handhaben

950</h4>950</h4>

951 951 

952Die CLI-Subprozess liest mehrere Umgebungsvariablen, die API-Timeouts und Stall-Erkennung steuern. Übergeben Sie sie durch `ClaudeAgentOptions.env`:952Der CLI-Subprozess liest mehrere Umgebungsvariablen, die API-Timeouts und die Erkennung von Stillständen steuern. Übergeben Sie sie über `ClaudeAgentOptions.env`:

953 953 

954```python theme={null}954```python theme={null}

955from claude_agent_sdk import ClaudeAgentOptions955from claude_agent_sdk import ClaudeAgentOptions


963)963)

964```964```

965 965 

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

967* `CLAUDE_CODE_MAX_RETRIES`: Maximale API-Wiederholungen. Standard `10`, begrenzt auf `15`. Jede Wiederholung erhält sein eigenes `API_TIMEOUT_MS`-Fenster, daher ist die schlimmste Wandzeit ungefähr `API_TIMEOUT_MS × (CLAUDE_CODE_MAX_RETRIES + 1)` plus Backoff. Für unbeaufsichtigte Läufe, die längere Ausfallzeiten abwarten müssen, setzen Sie [`CLAUDE_CODE_RETRY_WATCHDOG=1`](/docs/de/errors#tune-retry-behavior): Es wiederholt Kapazitätsfehler unbegrenzt und ab Claude Code v2.1.199 erhöht sich der Standard für andere vorübergehende Fehler auf `300` und entfernt die Obergrenze für diese Variable.967* `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.

968* `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS`: Stall-Watchdog für Subagenten. Während der Stream-Watchdog an ist, ist der Standard `CLAUDE_STREAM_IDLE_TIMEOUT_MS` plus 5 Minuten, was `600000` ergibt, es sei denn, Sie erhöhen diese Variable. Mit dem Stream-Watchdog aus ist der Standard `600000`. Vor v2.1.257 war der Standard immer `600000`.968* `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`.

969 969 

970 Der Timer setzt sich bei jedem Stream-Ereignis zurück. Bei Stall bricht Claude Code den Subagenten ab und meldet den Stall dem übergeordneten Element. Für einen Hintergrund-Subagenten markiert es auch die Aufgabe als fehlgeschlagen und hängt jedes Teilergebnis an.970 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.

971* `CLAUDE_ENABLE_STREAM_WATCHDOG` mit `CLAUDE_STREAM_IDLE_TIMEOUT_MS`: Stream-Watchdog, der die Anfrage abbricht, wenn Header angekommen sind, aber der Antwortkörper nicht mehr streamt. Der Watchdog ist standardmäßig für alle Anbieter aktiviert; setzen Sie `CLAUDE_ENABLE_STREAM_WATCHDOG=0`, um ihn zu deaktivieren. `CLAUDE_STREAM_IDLE_TIMEOUT_MS` hat einen Standard von `300000` und ist auf dieses Minimum begrenzt. Nach dem Abbruch behandelt [Automatische Wiederholungen](/docs/de/errors#automatic-retries) das, was Claude Code tut, basierend darauf, wie weit die Antwort fortgeschritten war.971* `CLAUDE_ENABLE_STREAM_WATCHDOG` mit `CLAUDE_STREAM_IDLE_TIMEOUT_MS`: Stream-Watchdog, der die Anfrage abbricht, wenn Header angekommen sind, aber der Response-Body nicht mehr streamt. Der Watchdog ist standardmäßig für alle Anbieter aktiviert; setzen Sie `CLAUDE_ENABLE_STREAM_WATCHDOG=0`, um ihn zu deaktivieren. `CLAUDE_STREAM_IDLE_TIMEOUT_MS` hat einen Standard von `300000` und wird auf dieses Minimum begrenzt. Was Claude Code nach dem Abbruch tut, abhängig davon, wie weit die Antwort fortgeschritten war, beschreibt [Automatische Wiederholungsversuche](/docs/de/errors#automatic-retries).

972 972 

973 Während der Watchdog auf eine Antwort wartet, die ein Gateway hinter `ANTHROPIC_BASE_URL` mit Keep-Alive-Pings offen hält, empfängt ein Host, der `include_partial_messages` setzt, weiterhin `ping`-[`StreamEvent`](#streamevent)-Nachrichten. Lesen Sie diese Frames als Lebenszeichen, anstatt die Sitzung bei Stille zu unterbrechen. Vor v2.1.257 stoppten die Frames 5 Minuten nach dem letzten echten Stream-Ereignis.973 Während der Watchdog auf eine Antwort wartet, die ein Gateway hinter `ANTHROPIC_BASE_URL` mit Keep-Alive-Pings offen hält, empfängt ein Host, der `include_partial_messages` setzt, weiterhin `ping`-[`StreamEvent`](#streamevent)-Nachrichten. Werten Sie diese Frames als Lebenszeichen, anstatt die Sitzung bei Stille per Timeout zu beenden. Vor v2.1.257 stoppten die Frames 5 Minuten nach dem letzten echten Stream-Ereignis.

974 974 

975<h3 id="outputformat">975<h3 id="outputformat">

976 `OutputFormat`976 `OutputFormat`


1011| `type` | Ja | Muss `"preset"` sein, um einen Preset-System-Prompt zu verwenden |1011| `type` | Ja | Muss `"preset"` sein, um einen Preset-System-Prompt zu verwenden |

1012| `preset` | Ja | Muss `"claude_code"` sein, um den System-Prompt von Claude Code zu verwenden |1012| `preset` | Ja | Muss `"claude_code"` sein, um den System-Prompt von Claude Code zu verwenden |

1013| `append` | Nein | Zusätzliche Anweisungen, die an den Preset-System-Prompt angehängt werden |1013| `append` | Nein | Zusätzliche Anweisungen, die an den Preset-System-Prompt angehängt werden |

1014| `exclude_dynamic_sections` | Nein | Verschieben Sie sitzungsspezifischen Kontext wie Arbeitsverzeichnis, Git-Repo-Flag und Auto-Memory-Pfade aus dem System-Prompt in die erste Benutzernachricht. Verbessert die Prompt-Cache-Wiederverwendung über Benutzer und Maschinen hinweg. Siehe [System-Prompts ändern](/docs/de/agent-sdk/modifying-system-prompts#improve-prompt-caching-across-users-and-machines) |1014| `exclude_dynamic_sections` | Nein | Verschieben Sie benutzerspezifischen Kontext, etwa den Speicherort des Auto-Memory, aus dem System-Prompt in die erste Benutzernachricht. Verbessert die Wiederverwendung des Prompt-Cache über Benutzer und Maschinen hinweg. Siehe [System-Prompts ändern](/docs/de/agent-sdk/modifying-system-prompts#improve-prompt-caching-across-users-and-machines) |

1015| `snapshot` | Nein | Setzen Sie auf `False`, um den System-Prompt bei jeder Anfrage neu zu erstellen, anstatt [den Prompt wiederzuverwenden, den die Sitzung bei ihrer ersten Anfrage aufgezeichnet hat](/docs/de/agent-sdk/modifying-system-prompts#change-the-prompt-of-an-existing-session). Erfordert `claude-agent-sdk` v0.2.153 oder später |1015| `snapshot` | Nein | Setzen Sie auf `False`, um den System-Prompt bei jeder Anfrage neu zu erstellen, anstatt [den Prompt wiederzuverwenden, den die Sitzung bei ihrer ersten Anfrage aufgezeichnet hat](/docs/de/agent-sdk/modifying-system-prompts#change-the-prompt-of-an-existing-session). Erfordert `claude-agent-sdk` v0.2.153 oder später |

1016 1016 

1017<h3 id="systempromptcustom">1017<h3 id="systempromptcustom">


1030| Feld | Erforderlich | Beschreibung |1030| Feld | Erforderlich | Beschreibung |

1031| :- | :- | :- |1031| :- | :- | :- |

1032| `type` | Ja | Muss `"custom"` sein |1032| `type` | Ja | Muss `"custom"` sein |

1033| `prompt` | Ja | Der System-Prompt-Text. Wird an die CLI als Befehlszeilenargument übergeben, daher gelten die [Befehlszeilenlängenbeschränkungen](#systempromptfile) |1033| `prompt` | Ja | Der System-Prompt-Text. Wird an die CLI als Befehlszeilenargument übergeben, daher gelten die [Längenbeschränkungen der Befehlszeile](#systempromptfile) |

1034| `snapshot` | Nein | Gleich wie [`SystemPromptPreset.snapshot`](#systempromptpreset), angewendet auf `prompt` |1034| `snapshot` | Nein | Wie [`SystemPromptPreset.snapshot`](#systempromptpreset), angewendet auf `prompt` |

1035 1035 

1036<h3 id="systempromptfile">1036<h3 id="systempromptfile">

1037 `SystemPromptFile`1037 `SystemPromptFile`

1038</h3>1038</h3>

1039 1039 

1040Konfiguration zum Laden eines benutzerdefinierten System-Prompts aus einer Datei, anstatt ihn als Zeichenkette zu übergeben. Das SDK ordnet dies dem CLI-Flag [`--system-prompt-file`](/docs/de/cli-reference#system-prompt-flags) zu. Verwenden Sie die Dateiform, wenn der Prompt groß ist: Das SDK übergibt einen Zeichenketten-`system_prompt` auf der CLI-Subprozess-argv, die OS-Befehlszeilenlängenbeschränkungen unterliegt, bevor das SDK eine API-Anfrage sendet. Auf Linux schlägt ein einzelnes Argument, das länger als ungefähr 128 KB ist, beim Prozessstart mit `Argument list too long` fehl. Unter Windows ist die gesamte Befehlszeile auf ungefähr 32 KB begrenzt, daher schlägt die Zeichenkettenform bei einem niedrigeren Schwellenwert fehl.1040Konfiguration zum Laden eines benutzerdefinierten System-Prompts aus einer Datei, anstatt ihn als Zeichenkette zu übergeben. Das SDK ordnet dies dem CLI-Flag [`--system-prompt-file`](/docs/de/cli-reference#system-prompt-flags) zu. Verwenden Sie die Dateiform, wenn der Prompt groß ist: Das SDK übergibt einen `system_prompt` als Zeichenkette in der argv des CLI-Subprozesses, die den Längenbeschränkungen der Befehlszeile des Betriebssystems unterliegt, bevor das SDK eine API-Anfrage sendet. Unter Linux schlägt ein einzelnes Argument, das länger als ungefähr 128 KB ist, beim Prozessstart mit `Argument list too long` fehl. Unter Windows ist die gesamte Befehlszeile auf ungefähr 32 KB begrenzt, daher schlägt die Zeichenkettenform bei einem niedrigeren Schwellenwert fehl.

1041 1041 

1042```python theme={null}1042```python theme={null}

1043class SystemPromptFile(TypedDict):1043class SystemPromptFile(TypedDict):


1054 `SettingSource`1054 `SettingSource`

1055</h3>1055</h3>

1056 1056 

1057Steuert, welche dateisystembasierte Konfigurationsquellen das SDK Einstellungen aus lädt.1057Steuert, aus welchen dateisystembasierten Konfigurationsquellen das SDK Einstellungen lädt.

1058 1058 

1059```python theme={null}1059```python theme={null}

1060SettingSource = Literal["user", "project", "local"]1060SettingSource = Literal["user", "project", "local"]


1064| :- | :- | :- |1064| :- | :- | :- |

1065| `"user"` | Globale Benutzereinstellungen | `~/.claude/settings.json` |1065| `"user"` | Globale Benutzereinstellungen | `~/.claude/settings.json` |

1066| `"project"` | Gemeinsame Projekteinstellungen (versionskontrolliert) | `.claude/settings.json` |1066| `"project"` | Gemeinsame Projekteinstellungen (versionskontrolliert) | `.claude/settings.json` |

1067| `"local"` | Lokale Projekteinstellungen, gitignored, wenn Claude Code eine Einstellung darin speichert | `.claude/settings.local.json` |1067| `"local"` | Lokale Projekteinstellungen, per gitignore ausgeschlossen, wenn Claude Code eine Einstellung darin speichert | `.claude/settings.local.json` |

1068 1068 

1069<h4 id="default-behavior">1069<h4 id="default-behavior">

1070 Standardverhalten1070 Standardverhalten

1071</h4>1071</h4>

1072 1072 

1073Wenn `setting_sources` weggelassen oder `None` ist und `skills` nicht gesetzt ist, lädt `query()` die gleichen Dateisystem-Einstellungen wie die Claude Code CLI: Benutzer, Projekt und lokal. Mit `skills` gesetzt, beschreibt die [`setting_sources`](#claudeagentoptions)-Zeile den aktuellen Standard. Endpoint-verwaltete Richtlinie wird in allen Fällen geladen; Server-verwaltete Einstellungen werden abgerufen, wenn sich die Sitzung mit einer Organisationsanmeldedaten auf einer [berechtigten Konfiguration](/docs/de/server-managed-settings#platform-availability) authentifiziert. Weitere Informationen finden Sie unter [Was settingSources nicht kontrolliert](/docs/de/agent-sdk/claude-code-features#what-settingsources-does-not-control).1073Wenn `setting_sources` weggelassen oder `None` ist und `skills` nicht gesetzt ist, lädt `query()` die gleichen Dateisystem-Einstellungen wie die Claude Code CLI: Benutzer, Projekt und lokal. Wenn `skills` gesetzt ist, beschreibt die Zeile [`setting_sources`](#claudeagentoptions) den aktuellen Standard. Endpoint-verwaltete Richtlinien werden in allen Fällen geladen; serververwaltete Einstellungen werden abgerufen, wenn sich die Sitzung mit Anmeldedaten einer Organisation auf einer [berechtigten Konfiguration](/docs/de/server-managed-settings#platform-availability) authentifiziert. Weitere Informationen finden Sie unter [Was settingSources nicht steuert](/docs/de/agent-sdk/claude-code-features#what-settingsources-does-not-control).

1074 1074 

1075<h4 id="why-use-setting_sources">1075<h4 id="why-use-setting_sources">

1076 Warum setting\_sources verwenden1076 Warum setting\_sources verwenden


1098```1098```

1099 1099 

1100<Note>1100<Note>

1101 Im Python SDK 0.1.59 und früher wurde eine leere Liste gleich behandelt wie das Weglassen der Option, daher hatte `setting_sources=[]` keine Auswirkung auf die Deaktivierung von Dateisystem-Einstellungen. Aktualisieren Sie auf eine neuere Version, wenn Sie benötigen, dass eine leere Liste wirksam wird. Das TypeScript SDK ist nicht betroffen.1101 Im Python SDK 0.1.59 und früher wurde eine leere Liste genauso behandelt wie das Weglassen der Option, daher hat `setting_sources=[]` Dateisystem-Einstellungen nicht deaktiviert. Aktualisieren Sie auf eine neuere Version, wenn eine leere Liste wirksam werden soll. Das TypeScript SDK ist nicht betroffen.

1102</Note>1102</Note>

1103 1103 

1104**Nur bestimmte Einstellungsquellen laden:**1104**Nur bestimmte Einstellungsquellen laden:**


1122asyncio.run(main())1122asyncio.run(main())

1123```1123```

1124 1124 

1125**SDK-only-Anwendungen:**1125**Reine SDK-Anwendungen:**

1126 1126 

1127```python theme={null}1127```python theme={null}

1128# Define everything programmatically.1128# Define everything programmatically.


1151asyncio.run(main())1151asyncio.run(main())

1152```1152```

1153 1153 

1154Um CLAUDE.md-Projektanweisungen zu laden, schließen Sie `"project"` in `setting_sources` ein. Siehe [System-Prompts ändern](/docs/de/agent-sdk/modifying-system-prompts#claude-md-files-for-project-level-instructions) für die Interaktion des CLAUDE.md-Ladens mit den System-Prompt-Optionen.1154Um CLAUDE.md-Projektanweisungen zu laden, schließen Sie `"project"` in `setting_sources` ein. Siehe [System-Prompts ändern](/docs/de/agent-sdk/modifying-system-prompts#claude-md-files-for-project-level-instructions) für das Zusammenspiel des Ladens von CLAUDE.md mit den System-Prompt-Optionen.

1155 1155 

1156<h4 id="settings-precedence">1156<h4 id="settings-precedence">

1157 Einstellungspriorität1157 Vorrang der Einstellungen

1158</h4>1158</h4>

1159 1159 

1160Wenn mehrere Quellen geladen werden, werden Einstellungen mit dieser Priorität zusammengeführt (höchste zu niedrigste):1160Wenn mehrere Quellen geladen werden, werden Einstellungen in dieser Rangfolge zusammengeführt (höchste zu niedrigste):

1161 1161 

11621. Lokale Einstellungen (`.claude/settings.local.json`)11621. Lokale Einstellungen (`.claude/settings.local.json`)

11632. Projekteinstellungen (`.claude/settings.json`)11632. Projekteinstellungen (`.claude/settings.json`)


1193| :- | :- | :- |1193| :- | :- | :- |

1194| `description` | Ja | Natürlichsprachige Beschreibung, wann dieser Agent verwendet werden sollte |1194| `description` | Ja | Natürlichsprachige Beschreibung, wann dieser Agent verwendet werden sollte |

1195| `prompt` | Ja | Der System-Prompt des Agenten |1195| `prompt` | Ja | Der System-Prompt des Agenten |

1196| `tools` | Nein | Array von zulässigen Tool-Namen. Wenn weggelassen, erbt jeden [Tool, der Subagenten zur Verfügung steht](/docs/de/sub-agents#available-tools) |1196| `tools` | Nein | Array von zulässigen Tool-Namen. Wenn weggelassen, wird jedes [für Subagenten verfügbare Tool](/docs/de/sub-agents#available-tools) geerbt |

1197| `disallowedTools` | Nein | Array von Tool-Namen, die aus dem Tool-Set des Agenten entfernt werden. MCP-Server-Level-Muster werden auch akzeptiert: `mcp__server` oder `mcp__server__*` entfernt jedes Tool von diesem Server, und `mcp__*` entfernt jedes MCP-Tool von jedem Server |1197| `disallowedTools` | Nein | Array von Tool-Namen, die aus dem Tool-Set des Agenten entfernt werden. Muster auf MCP-Server-Ebene werden ebenfalls akzeptiert: `mcp__server` oder `mcp__server__*` entfernt jedes Tool dieses Servers, und `mcp__*` entfernt jedes MCP-Tool aller Server |

1198| `model` | Nein | Modell-Override für diesen Agenten. Akzeptiert einen Alias wie `"sonnet"`, `"opus"`, `"haiku"` oder `"inherit"`, oder eine vollständige Modell-ID. Wenn Sie es weglassen, wählt Claude Code das Modell in der [Subagenten-Modellreihenfolge](/docs/de/sub-agents#choose-a-model) |1198| `model` | Nein | Modell-Override für diesen Agenten. Akzeptiert einen Alias wie `"sonnet"`, `"opus"`, `"haiku"` oder `"inherit"`, oder eine vollständige Modell-ID. Wenn Sie es weglassen, wählt Claude Code das Modell gemäß der [Subagenten-Modellreihenfolge](/docs/de/sub-agents#choose-a-model) |

1199| `skills` | Nein | Liste von Skill-Namen, die beim Start in den Kontext des Agenten vorgeladen werden. Nicht aufgelistete Skills bleiben über das Skill-Tool aufrufbar |1199| `skills` | Nein | Liste von Skill-Namen, die beim Start in den Kontext des Agenten vorgeladen werden. Nicht aufgelistete Skills bleiben über das Skill-Tool aufrufbar |

1200| `memory` | Nein | Memory-Quelle für diesen Agenten: `"user"`, `"project"` oder `"local"` |1200| `memory` | Nein | Memory-Quelle für diesen Agenten: `"user"`, `"project"` oder `"local"` |

1201| `mcpServers` | Nein | MCP-Server, die diesem Agenten zur Verfügung stehen. Jeder Eintrag ist ein Servername oder ein Inline-`{name: config}`-Dict |1201| `mcpServers` | Nein | MCP-Server, die diesem Agenten zur Verfügung stehen. Jeder Eintrag ist ein Servername oder ein Inline-`{name: config}`-Dict |

1202| `initialPrompt` | Nein | Wird automatisch als erste Benutzerdrehung eingereicht, wenn dieser Agent als Haupt-Thread-Agent läuft |1202| `initialPrompt` | Nein | Wird automatisch als erster Benutzer-Turn übermittelt, wenn dieser Agent als Haupt-Thread-Agent läuft |

1203| `maxTurns` | Nein | Maximale Anzahl von Agenten-Umdrehungen, bevor der Agent stoppt |1203| `maxTurns` | Nein | Maximale Anzahl agentischer Turns, bevor der Agent stoppt |

1204| `background` | Nein | Führen Sie diesen Agenten als nicht-blockierende Hintergrundaufgabe aus, wenn aufgerufen |1204| `background` | Nein | Führen Sie diesen Agenten beim Aufruf als nicht blockierende Hintergrundaufgabe aus |

1205| `effort` | Nein | Reasoning-Anstrengungsstufe für diesen Agenten. Akzeptiert eine benannte Stufe oder eine Ganzzahl. Siehe [`EffortLevel`](#effortlevel) |1205| `effort` | Nein | Effort-Stufe für das Reasoning dieses Agenten. Akzeptiert eine benannte Stufe oder eine Ganzzahl. Siehe [`EffortLevel`](#effortlevel) |

1206| `permissionMode` | Nein | Berechtigungsmodus für die Tool-Ausführung innerhalb dieses Agenten. Die [Subagenten-Vererbungsregeln](/docs/de/agent-sdk/permissions#available-modes) entscheiden, wann er angewendet wird. Siehe [`PermissionMode`](#permissionmode) |1206| `permissionMode` | Nein | Berechtigungsmodus für die Tool-Ausführung innerhalb dieses Agenten. Die [Vererbungsregeln für Subagenten](/docs/de/agent-sdk/permissions#available-modes) entscheiden, wann er angewendet wird. Siehe [`PermissionMode`](#permissionmode) |

1207 1207 

1208<Note>1208<Note>

1209 `AgentDefinition`-Feldnamen verwenden camelCase, wie `disallowedTools`, `permissionMode` und `maxTurns`. Diese Namen werden direkt dem Drahtformat zugeordnet, das mit dem TypeScript SDK geteilt wird. Dies unterscheidet sich von `ClaudeAgentOptions`, das Python snake\_case für die entsprechenden Top-Level-Felder wie `disallowed_tools` und `permission_mode` verwendet. Da `AgentDefinition` eine Dataclass ist, wirft das Übergeben eines snake\_case-Schlüsselworts einen `TypeError` zur Konstruktionszeit auf.1209 `AgentDefinition`-Feldnamen verwenden camelCase, wie `disallowedTools`, `permissionMode` und `maxTurns`. Diese Namen entsprechen direkt dem Wire-Format, das mit dem TypeScript SDK geteilt wird. Dies unterscheidet sich von `ClaudeAgentOptions`, das für die entsprechenden Top-Level-Felder wie `disallowed_tools` und `permission_mode` Python-snake\_case verwendet. Da `AgentDefinition` eine Dataclass ist, löst das Übergeben eines snake\_case-Schlüsselworts bei der Konstruktion einen `TypeError` aus.

1210</Note>1210</Note>

1211 1211 

1212<h3 id="permissionmode">1212<h3 id="permissionmode">

1213 `PermissionMode`1213 `PermissionMode`

1214</h3>1214</h3>

1215 1215 

1216Berechtigungsmodi zur Kontrolle der Tool-Ausführung.1216Berechtigungsmodi zur Steuerung der Tool-Ausführung.

1217 1217 

1218```python theme={null}1218```python theme={null}

1219PermissionMode = Literal[1219PermissionMode = Literal[


1230 `EffortLevel`1230 `EffortLevel`

1231</h3>1231</h3>

1232 1232 

1233Anstrengungsstufen zur Steuerung der Denktiefe.1233Effort-Stufen zur Steuerung der Denktiefe.

1234 1234 

1235```python theme={null}1235```python theme={null}

1236EffortLevel = Literal[1236EffortLevel = Literal[


1262 1262 

1263Gibt ein `PermissionResult` zurück (entweder `PermissionResultAllow` oder `PermissionResultDeny`).1263Gibt ein `PermissionResult` zurück (entweder `PermissionResultAllow` oder `PermissionResultDeny`).

1264 1264 

1265Der Callback ist der SDK-Ersatz für die interaktive Berechtigungsaufforderung: Er wird nur aufgerufen, wenn der [Berechtigungsbewertungsfluss](/docs/de/agent-sdk/permissions#how-permissions-are-evaluated) zu einer Aufforderung führt. Tool-Aufrufe, die bereits von einem `allowed_tools`-Eintrag, einer Settings-Allow-Regel oder dem Berechtigungsmodus wie `acceptEdits` oder `bypassPermissions` genehmigt wurden, rufen ihn nie auf. Um jeden Tool-Aufruf zu kontrollieren, verwenden Sie stattdessen einen [`PreToolUse`-Hook](/docs/de/agent-sdk/hooks). Eine Allow-Regel genehmigt nicht vorab die [Aktionen, die kein Modus automatisch genehmigt](/docs/de/permission-modes#actions-no-mode-auto-approves); siehe [Wie Berechtigungen bewertet werden](/docs/de/agent-sdk/permissions#how-permissions-are-evaluated) für welche von ihnen den Callback erreichen und was in `dontAsk`- und `auto`-Modus passiert.1265Der Callback ist der SDK-Ersatz für die interaktive Berechtigungsabfrage: Er wird nur aufgerufen, wenn der [Ablauf der Berechtigungsprüfung](/docs/de/agent-sdk/permissions#how-permissions-are-evaluated) zu einer Berechtigungsabfrage führt. Tool-Aufrufe, die bereits durch einen `allowed_tools`-Eintrag, eine Allow-Regel in den Einstellungen oder den Berechtigungsmodus wie `acceptEdits` oder `bypassPermissions` genehmigt wurden, rufen ihn nie auf. Um jeden Tool-Aufruf zu kontrollieren, verwenden Sie stattdessen einen [`PreToolUse`-Hook](/docs/de/agent-sdk/hooks).

1266 

1267Eine Allow-Regel genehmigt nicht vorab die [Aktionen, die kein Modus automatisch genehmigt](/docs/de/permission-modes#actions-no-mode-auto-approves); siehe [Wie Berechtigungen ausgewertet werden](/docs/de/agent-sdk/permissions#how-permissions-are-evaluated) dazu, welche davon den Callback erreichen und was im Modus `dontAsk` und `auto` geschieht.

1266 1268 

1267<h3 id="toolpermissioncontext">1269<h3 id="toolpermissioncontext">

1268 `ToolPermissionContext`1270 `ToolPermissionContext`


1286 1288 

1287| Feld | Typ | Beschreibung |1289| Feld | Typ | Beschreibung |

1288| :- | :- | :- |1290| :- | :- | :- |

1289| `signal` | `Any \| None` | Reserviert für zukünftige Abort-Signal-Unterstützung |1291| `signal` | `Any \| None` | Reserviert für zukünftige Unterstützung von Abbruchsignalen |

1290| `suggestions` | `list[PermissionUpdate]` | Berechtigungsaktualisierungsvorschläge von der CLI. Bash-Aufforderungen enthalten einen Vorschlag mit dem `localSettings`-Ziel, daher gibt das Zurückgeben in `updated_permissions` die Regel in `.claude/settings.local.json` aus und bleibt über Sitzungen hinweg bestehen. |1292| `suggestions` | `list[PermissionUpdate]` | Vorschläge für Berechtigungsaktualisierungen von der CLI. Bash-Berechtigungsabfragen enthalten einen Vorschlag mit dem Ziel `localSettings`, daher schreibt das Zurückgeben dieses Vorschlags in `updated_permissions` die Regel in `.claude/settings.local.json`, wo sie über Sitzungen hinweg bestehen bleibt. |

1291| `tool_use_id` | `str \| None` | Kennung des spezifischen Tool-Aufrufs, für den diese Aufforderung gilt. Wird immer gefüllt, wenn an `can_use_tool` geliefert |1293| `tool_use_id` | `str \| None` | Kennung des spezifischen Tool-Aufrufs, für den diese Berechtigungsabfrage gilt. Immer gefüllt, wenn an `can_use_tool` geliefert |

1292| `agent_id` | `str \| None` | Sub-Agent-ID, wenn der Aufruf von einem Subagenten stammt; `None` für den Haupt-Agent |1294| `agent_id` | `str \| None` | Subagenten-ID, wenn der Aufruf von einem Subagenten stammt; `None` für den Hauptagenten |

1293| `blocked_path` | `str \| None` | Dateipfad, der die Berechtigungsanfrage ausgelöst hat, falls zutreffend. Zum Beispiel, wenn ein Bash-Befehl versucht, auf einen Pfad außerhalb zulässiger Verzeichnisse zuzugreifen |1295| `blocked_path` | `str \| None` | Dateipfad, der die Berechtigungsanfrage ausgelöst hat, falls zutreffend. Zum Beispiel, wenn ein Bash-Befehl versucht, auf einen Pfad außerhalb zulässiger Verzeichnisse zuzugreifen |

1294| `decision_reason` | `str \| None` | Grund, warum diese Berechtigungsanfrage ausgelöst wurde. Weitergeleitet von einem PreToolUse-Hook's `permissionDecisionReason`, wenn der Hook `"ask"` zurückgegeben hat |1296| `decision_reason` | `str \| None` | Grund, warum diese Berechtigungsanfrage ausgelöst wurde. Wird aus dem `permissionDecisionReason` eines PreToolUse-Hooks weitergeleitet, wenn der Hook `"ask"` zurückgegeben hat |

1295| `title` | `str \| None` | Vollständiger Berechtigungsaufforderungssatz, wie `Claude wants to read foo.txt`. Verwenden Sie als primären Aufforderungstext, wenn vorhanden |1297| `title` | `str \| None` | Vollständiger Satz der Berechtigungsabfrage, wie `Claude wants to read foo.txt`. Verwenden Sie ihn, wenn vorhanden, als primären Text der Abfrage |

1296| `display_name` | `str \| None` | Kurze Nominalphrase für die Tool-Aktion, wie `Read file`, geeignet für Schaltflächenbeschriftungen |1298| `display_name` | `str \| None` | Kurze Nominalphrase für die Tool-Aktion, wie `Read file`, geeignet für Schaltflächenbeschriftungen |

1297| `description` | `str \| None` | Lesbare Untertitel für die Berechtigungs-UI |1299| `description` | `str \| None` | Lesbarer Untertitel für die Berechtigungs-UI |

1298 1300 

1299<h3 id="permissionresult">1301<h3 id="permissionresult">

1300 `PermissionResult`1302 `PermissionResult`

1301</h3>1303</h3>

1302 1304 

1303Union-Typ für Berechtigungs-Callback-Ergebnisse.1305Union-Typ für Ergebnisse von Berechtigungs-Callbacks.

1304 1306 

1305```python theme={null}1307```python theme={null}

1306PermissionResult = PermissionResultAllow | PermissionResultDeny1308PermissionResult = PermissionResultAllow | PermissionResultDeny


1310 `PermissionResultAllow`1312 `PermissionResultAllow`

1311</h3>1313</h3>

1312 1314 

1313Ergebnis, das angibt, dass der Tool-Aufruf zulässig sein sollte.1315Ergebnis, das angibt, dass der Tool-Aufruf erlaubt werden soll.

1314 1316 

1315```python theme={null}1317```python theme={null}

1316@dataclass1318@dataclass


1323| Feld | Typ | Standard | Beschreibung |1325| Feld | Typ | Standard | Beschreibung |

1324| :- | :- | :- | :- |1326| :- | :- | :- | :- |

1325| `behavior` | `Literal["allow"]` | `"allow"` | Muss "allow" sein |1327| `behavior` | `Literal["allow"]` | `"allow"` | Muss "allow" sein |

1326| `updated_input` | `dict[str, Any] \| None` | `None` | Geänderte Eingabe, die stattdessen verwendet werden soll |1328| `updated_input` | `dict[str, Any] \| None` | `None` | Geänderte Eingabe, die anstelle der ursprünglichen verwendet werden soll |

1327| `updated_permissions` | `list[PermissionUpdate] \| None` | `None` | Berechtigungsaktualisierungen zum Anwenden |1329| `updated_permissions` | `list[PermissionUpdate] \| None` | `None` | Anzuwendende Berechtigungsaktualisierungen |

1328 1330 

1329<h3 id="permissionresultdeny">1331<h3 id="permissionresultdeny">

1330 `PermissionResultDeny`1332 `PermissionResultDeny`

1331</h3>1333</h3>

1332 1334 

1333Ergebnis, das angibt, dass der Tool-Aufruf verweigert werden sollte.1335Ergebnis, das angibt, dass der Tool-Aufruf verweigert werden soll.

1334 1336 

1335```python theme={null}1337```python theme={null}

1336@dataclass1338@dataclass


1375| Feld | Typ | Beschreibung |1377| Feld | Typ | Beschreibung |

1376| :- | :- | :- |1378| :- | :- | :- |

1377| `type` | `Literal[...]` | Der Typ der Berechtigungsaktualisierungsoperation |1379| `type` | `Literal[...]` | Der Typ der Berechtigungsaktualisierungsoperation |

1378| `rules` | `list[PermissionRuleValue] \| None` | Regeln für Add/Replace/Remove-Operationen |1380| `rules` | `list[PermissionRuleValue] \| None` | Regeln für Hinzufügen-/Ersetzen-/Entfernen-Operationen |

1379| `behavior` | `Literal["allow", "deny", "ask"] \| None` | Verhalten für regelbasierte Operationen |1381| `behavior` | `Literal["allow", "deny", "ask"] \| None` | Verhalten für regelbasierte Operationen |

1380| `mode` | `PermissionMode \| None` | Modus für setMode-Operation |1382| `mode` | `PermissionMode \| None` | Modus für die setMode-Operation |

1381| `directories` | `list[str] \| None` | Verzeichnisse für Add/Remove-Verzeichnis-Operationen |1383| `directories` | `list[str] \| None` | Verzeichnisse für Operationen zum Hinzufügen/Entfernen von Verzeichnissen |

1382| `destination` | `Literal[...] \| None` | Wo die Berechtigungsaktualisierung angewendet werden soll |1384| `destination` | `Literal[...] \| None` | Wo die Berechtigungsaktualisierung angewendet werden soll |

1383 1385 

1384<h3 id="permissionrulevalue">1386<h3 id="permissionrulevalue">


1410 `ThinkingConfig`1412 `ThinkingConfig`

1411</h3>1413</h3>

1412 1414 

1413Steuert das Verhalten des erweiterten Denkens. Eine Union von drei Konfigurationen:1415Steuert das Verhalten von Extended Thinking. Eine Union aus drei Konfigurationen:

1414 1416 

1415```python theme={null}1417```python theme={null}

1416ThinkingDisplay = Literal["summarized", "omitted"]1418ThinkingDisplay = Literal["summarized", "omitted"]


1436 1438 

1437| Variante | Felder | Beschreibung |1439| Variante | Felder | Beschreibung |

1438| :- | :- | :- |1440| :- | :- | :- |

1439| `adaptive` | `type`, `display` | Claude entscheidet adaptiv, wann gedacht werden soll |1441| `adaptive` | `type`, `display` | Claude entscheidet adaptiv, wann nachgedacht wird |

1440| `enabled` | `type`, `budget_tokens`, `display` | Aktivieren Sie das Denken mit einem bestimmten Token-Budget |1442| `enabled` | `type`, `budget_tokens`, `display` | Aktivieren Sie Thinking mit einem bestimmten Token-Budget |

1441| `disabled` | `type` | Deaktivieren Sie das Denken |1443| `disabled` | `type` | Deaktivieren Sie Thinking |

1442 1444 

1443Das optionale Feld `display` steuert, ob Thinking-Text `"summarized"` oder `"omitted"` zurückgegeben wird. Bei Claude Opus 4.7 und später ist der API-Standard `"omitted"`, daher setzen Sie `"summarized"`, um Thinking-Inhalte in [`ThinkingBlock`](#thinkingblock)-Ausgaben zu erhalten. Claude Code sendet `display` nicht an Amazon Bedrock oder Google Cloud's Agent Platform, daher geben Opus 4.7 und später auf diesen Anbietern leere `ThinkingBlock`-Ausgaben zurück, auch wenn Sie `display` auf `"summarized"` setzen.1445Das optionale Feld `display` steuert, ob Thinking-Text `"summarized"` oder `"omitted"` zurückgegeben wird. Bei Claude Opus 4.7 und später ist der API-Standard `"omitted"`, setzen Sie daher `"summarized"`, um Thinking-Inhalte in [`ThinkingBlock`](#thinkingblock)-Ausgaben zu erhalten. Claude Code sendet `display` nicht an Amazon Bedrock oder die Agent Platform von Google Cloud, daher geben Opus 4.7 und später bei diesen Anbietern leere `ThinkingBlock`-Ausgaben zurück, auch wenn Sie `display` auf `"summarized"` setzen.

1444 1446 

1445Da dies `TypedDict`-Klassen sind, sind sie zur Laufzeit einfache Dicts. Konstruieren Sie sie entweder als Dict-Literale oder rufen Sie die Klasse wie einen Konstruktor auf; beide erzeugen ein `dict`. Greifen Sie auf Felder mit `config["budget_tokens"]` zu, nicht mit `config.budget_tokens`:1447Da dies `TypedDict`-Klassen sind, sind sie zur Laufzeit einfache Dicts. Konstruieren Sie sie entweder als Dict-Literale oder rufen Sie die Klasse wie einen Konstruktor auf; beide Varianten erzeugen ein `dict`. Greifen Sie auf Felder mit `config["budget_tokens"]` zu, nicht mit `config.budget_tokens`:

1446 1448 

1447```python theme={null}1449```python theme={null}

1448from claude_agent_sdk import ClaudeAgentOptions, ThinkingConfigEnabled1450from claude_agent_sdk import ClaudeAgentOptions, ThinkingConfigEnabled


1460 `TaskBudget`1462 `TaskBudget`

1461</h3>1463</h3>

1462 1464 

1463API-seitiges Task-Budget in Token, verwendet mit dem Feld `task_budget` in `ClaudeAgentOptions`.1465API-seitiges Aufgabenbudget in Token, verwendet mit dem Feld `task_budget` in `ClaudeAgentOptions`.

1464 1466 

1465```python theme={null}1467```python theme={null}

1466class TaskBudget(TypedDict):1468class TaskBudget(TypedDict):


1471| :- | :- | :- |1473| :- | :- | :- |

1472| `total` | `int` | Gesamtes Token-Budget für die Aufgabe |1474| `total` | `int` | Gesamtes Token-Budget für die Aufgabe |

1473 1475 

1474Da dies eine `TypedDict` ist, übergeben Sie sie als einfaches Dict, wie `ClaudeAgentOptions(task_budget={"total": 50000})`.1476Da dies ein `TypedDict` ist, übergeben Sie es als einfaches Dict, etwa `ClaudeAgentOptions(task_budget={"total": 50000})`.

1475 1477 

1476<h3 id="sdkbeta">1478<h3 id="sdkbeta">

1477 `SdkBeta`1479 `SdkBeta`


1483SdkBeta = Literal["context-1m-2025-08-07"]1485SdkBeta = Literal["context-1m-2025-08-07"]

1484```1486```

1485 1487 

1486Verwenden Sie mit dem Feld `betas` in `ClaudeAgentOptions`, um Beta-Funktionen zu aktivieren.1488Verwenden Sie ihn mit dem Feld `betas` in `ClaudeAgentOptions`, um Beta-Funktionen zu aktivieren.

1487 1489 

1488<Warning>1490<Warning>

1489 Die `context-1m-2025-08-07`-Beta ist seit dem 30. April 2026 veraltet. Das Übergeben dieses Headers mit Claude Sonnet 4.5 oder Sonnet 4 hat keine Auswirkung, und Anfragen, die das Standard-200k-Token-Kontextfenster überschreiten, geben einen Fehler zurück. Um ein 1M-Token-Kontextfenster zu verwenden, migrieren Sie zu [Claude Opus 5.5, Claude Opus 5, Claude Sonnet 5, Claude Sonnet 4.6, Claude Opus 4.6, Claude Opus 4.7 oder Claude Opus 4.8](https://platform.claude.com/docs/en/about-claude/models/overview), die 1M-Kontext zu Standardpreisen ohne Beta-Header enthalten.1491 In der Claude API ist die Beta `context-1m-2025-08-07` für Claude Sonnet 4.5 und Claude Sonnet 4 außer Betrieb genommen. Wenn Sie sie mit einem dieser Modelle weiterhin übergeben, geben Anfragen, die das Standard-Kontextfenster von 200K Token überschreiten, einen Fehler zurück; entfernen Sie sie daher aus `betas`. Um eine Sitzung mit einem Kontextfenster von 1M Token auszuführen, setzen Sie `model` auf ein Modell, das [standardmäßig mit dem 1M-Fenster läuft](/docs/de/model-config#extended-context), etwa `claude-sonnet-5-5` oder `claude-opus-5-5`. Bei einem Modell, das 1M nur über seine `[1m]`-Variante erreicht, hängen Sie das Suffix an die Modell-ID an, wie in `claude-opus-4-6[1m]`.

1490</Warning>1492</Warning>

1491 1493 

1492<h3 id="mcpsdkserverconfig">1494<h3 id="mcpsdkserverconfig">

1493 `McpSdkServerConfig`1495 `McpSdkServerConfig`

1494</h3>1496</h3>

1495 1497 

1496Konfiguration für SDK MCP-Server, die mit `create_sdk_mcp_server()` erstellt wurden.1498Konfiguration für SDK-MCP-Server, die mit `create_sdk_mcp_server()` erstellt wurden.

1497 1499 

1498```python theme={null}1500```python theme={null}

1499class McpSdkServerConfig(TypedDict):1501class McpSdkServerConfig(TypedDict):


1552 `McpServerStatusConfig`1554 `McpServerStatusConfig`

1553</h3>1555</h3>

1554 1556 

1555Die Konfiguration eines MCP-Servers, wie von [`get_mcp_status()`](#methods) gemeldet. Dies ist die Union aller [`McpServerConfig`](#mcpserverconfig)-Transport-Varianten plus eine nur-Ausgabe-`claudeai-proxy`-Variante für Server, die durch claude.ai proxiert werden.1557Die Konfiguration eines MCP-Servers, wie von [`get_mcp_status()`](#methods) gemeldet. Dies ist die Union aller [`McpServerConfig`](#mcpserverconfig)-Transportvarianten plus einer reinen Ausgabevariante `claudeai-proxy` für Server, die über claude.ai proxiert werden.

1556 1558 

1557```python theme={null}1559```python theme={null}

1558McpServerStatusConfig = (1560McpServerStatusConfig = (


1564)1566)

1565```1567```

1566 1568 

1567`McpSdkServerConfigStatus` ist die serialisierbare Form von [`McpSdkServerConfig`](#mcpsdkserverconfig) mit nur `type` (`"sdk"`) und `name` (`str`)-Feldern; die In-Process-`instance` wird weggelassen. `McpClaudeAIProxyServerConfig` hat `type` (`"claudeai-proxy"`), `url` (`str`) und `id` (`str`)-Felder.1569`McpSdkServerConfigStatus` ist die serialisierbare Form von [`McpSdkServerConfig`](#mcpsdkserverconfig) mit nur den Feldern `type` (`"sdk"`) und `name` (`str`); die prozessinterne `instance` wird weggelassen. `McpClaudeAIProxyServerConfig` hat die Felder `type` (`"claudeai-proxy"`), `url` (`str`) und `id` (`str`).

1568 1570 

1569<h3 id="mcpstatusresponse">1571<h3 id="mcpstatusresponse">

1570 `McpStatusResponse`1572 `McpStatusResponse`

1571</h3>1573</h3>

1572 1574 

1573Antwort von [`ClaudeSDKClient.get_mcp_status()`](#methods). Umhüllt die Liste der Server-Status unter dem `mcpServers`-Schlüssel.1575Antwort von [`ClaudeSDKClient.get_mcp_status()`](#methods). Umschließt die Liste der Serverstatus unter dem Schlüssel `mcpServers`.

1574 1576 

1575```python theme={null}1577```python theme={null}

1576class McpStatusResponse(TypedDict):1578class McpStatusResponse(TypedDict):


1600| `status` | `str` | Einer von `"connected"`, `"failed"`, `"needs-auth"`, `"pending"` oder `"disabled"` |1602| `status` | `str` | Einer von `"connected"`, `"failed"`, `"needs-auth"`, `"pending"` oder `"disabled"` |

1601| `serverInfo` | `dict` (optional) | Servername und Version (`{"name": str, "version": str}`) |1603| `serverInfo` | `dict` (optional) | Servername und Version (`{"name": str, "version": str}`) |

1602| `error` | `str` (optional) | Fehlermeldung, wenn der Server keine Verbindung herstellen konnte |1604| `error` | `str` (optional) | Fehlermeldung, wenn der Server keine Verbindung herstellen konnte |

1603| `config` | [`McpServerStatusConfig`](#mcpserverstatusconfig) (optional) | Server-Konfiguration. Gleiche Form wie [`McpServerConfig`](#mcpserverconfig) (stdio, SSE, HTTP oder SDK), plus eine `claudeai-proxy`-Variante für Server, die über claude.ai verbunden sind |1605| `config` | [`McpServerStatusConfig`](#mcpserverstatusconfig) (optional) | Serverkonfiguration. Gleiche Form wie [`McpServerConfig`](#mcpserverconfig) (stdio, SSE, HTTP oder SDK), plus eine `claudeai-proxy`-Variante für Server, die über claude.ai verbunden sind |

1604| `scope` | `str` (optional) | Konfigurationsbereich |1606| `scope` | `str` (optional) | Geltungsbereich der Konfiguration |

1605| `tools` | `list` (optional) | Tools, die von diesem Server bereitgestellt werden, jeweils mit `name`, `description` und `annotations`-Feldern |1607| `tools` | `list` (optional) | Von diesem Server bereitgestellte Tools, jeweils mit den Feldern `name`, `description` und `annotations` |

1606 1608 

1607<h3 id="contextusageresponse">1609<h3 id="contextusageresponse">

1608 `ContextUsageResponse`1610 `ContextUsageResponse`

1609</h3>1611</h3>

1610 1612 

1611Antwort von [`ClaudeSDKClient.get_context_usage()`](#methods). Dies ist die gleiche Nutzlast, die Claude Code für den `/context`-Befehl in einer interaktiven Sitzung rendert, daher trägt sie neben den Token-Zählungen auch Anzeigefelder wie `color` und `gridRows`, die Claude Code verwendet, um das `/context`-Nutzungsgitter zu zeichnen.1613Antwort von [`ClaudeSDKClient.get_context_usage()`](#methods). Dies ist dieselbe Payload, die Claude Code für den Befehl `/context` in einer interaktiven Sitzung rendert, daher enthält sie neben den Token-Zählungen auch Anzeigefelder wie `color` und `gridRows`, mit denen Claude Code das `/context`-Nutzungsraster zeichnet.

1612 1614 

1613Claude Code erstellt diese Nutzlast, indem es mehrere Anfragen an die [Token-Zählung](https://platform.claude.com/docs/en/build-with-claude/token-counting)-API sendet. Diese Anfragen erscheinen nicht im Nachrichtenstrom, daher sieht die Kostenverfolgung, die den Strom liest, sie nicht. Auf der Anthropic API wird die Token-Zählung nicht abgerechnet.1615Claude Code erstellt diese Payload, indem es mehrere Anfragen an die [Token-Counting](https://platform.claude.com/docs/en/build-with-claude/token-counting)-API sendet. Diese Anfragen erscheinen nicht im Nachrichtenstrom, daher sieht eine Kostenverfolgung, die den Strom liest, sie nicht. In der Anthropic API wird Token-Counting nicht abgerechnet.

1614 1616 

1615```python theme={null}1617```python theme={null}

1616class ContextUsageResponse(TypedDict):1618class ContextUsageResponse(TypedDict):


1635 apiUsage: NotRequired[dict[str, Any] | None]1637 apiUsage: NotRequired[dict[str, Any] | None]

1636```1638```

1637 1639 

1638Jeder `ContextUsageCategory`-Eintrag trägt `name`, `tokens`, `color` und ein optionales `isDeferred`-Flag. `totalTokens` ist die aktuelle Kontextnutzung der Sitzung, und `maxTokens` ist das Fenster, gegen das die Nutzung gemessen wird. Dieses Fenster ist das Kontextfenster des Modells oder das niedrigere Auto-Kompaktierungsfenster, wenn eines zutrifft, und `rawMaxTokens` trägt den gleichen Wert wie `maxTokens`. `apiUsage` enthält die Nutzung aus der neuesten API-Antwort, nicht eine laufende Summe für die Sitzung. Claude Code lässt die optionalen Schlüssel `deferredBuiltinTools`, `systemTools` und `systemPromptSections` ungesetzt, daher erwarten Sie, dass sie abwesend sind, auch wenn der Typ sie deklariert.1640Jeder `ContextUsageCategory`-Eintrag enthält `name`, `tokens`, `color` und ein optionales Flag `isDeferred`. `totalTokens` ist die aktuelle Kontextnutzung der Sitzung, und `maxTokens` ist das Fenster, an dem diese Nutzung gemessen wird. Dieses Fenster ist das Kontextfenster des Modells oder das niedrigere Fenster der automatischen Komprimierung, sofern eines gilt, und `rawMaxTokens` enthält denselben Wert wie `maxTokens`. `apiUsage` enthält die Nutzung aus der neuesten API-Antwort, keine laufende Summe für die Sitzung. Claude Code lässt die optionalen Schlüssel `deferredBuiltinTools`, `systemTools` und `systemPromptSections` ungesetzt; rechnen Sie also damit, dass sie fehlen, obwohl der Typ sie deklariert.

1639 1641 

1640<h3 id="sdkpluginconfig">1642<h3 id="sdkpluginconfig">

1641 `SdkPluginConfig`1643 `SdkPluginConfig`

Details

92 Sandbox-Laufzeit92 Sandbox-Laufzeit

93</h3>93</h3>

94 94 

95Für leichte Isolation ohne Container erzwingt [sandbox-runtime](https://github.com/anthropic-experimental/sandbox-runtime) Dateisystem- und Netzwerkbeschränkungen auf OS-Ebene.95Für leichte Isolation ohne Container erzwingt [sandbox-runtime](https://github.com/anthropics/sandbox-runtime) Dateisystem- und Netzwerkbeschränkungen auf OS-Ebene.

96 96 

97Der Hauptvorteil ist Einfachheit: keine Docker-Konfiguration, Container-Images oder Netzwerk-Setup erforderlich. Der Proxy und die Dateisystembeschränkungen sind integriert.97Der Hauptvorteil ist Einfachheit: keine Docker-Konfiguration, Container-Images oder Netzwerk-Setup erforderlich. Der Proxy und die Dateisystembeschränkungen sind integriert.

98 98 


164 164 

165Mit `--network none` hat der Container überhaupt keine Netzwerkschnittstellen. Die einzige Möglichkeit für den Agent, die Außenwelt zu erreichen, ist über den eingebundenen Unix-Socket, der mit einem Proxy auf dem Host verbunden ist. Dieser Proxy kann Domain-Zulassungslisten erzwingen, Anmeldedaten injizieren und den gesamten Verkehr protokollieren.165Mit `--network none` hat der Container überhaupt keine Netzwerkschnittstellen. Die einzige Möglichkeit für den Agent, die Außenwelt zu erreichen, ist über den eingebundenen Unix-Socket, der mit einem Proxy auf dem Host verbunden ist. Dieser Proxy kann Domain-Zulassungslisten erzwingen, Anmeldedaten injizieren und den gesamten Verkehr protokollieren.

166 166 

167Dies ist die gleiche Architektur, die von [sandbox-runtime](https://github.com/anthropic-experimental/sandbox-runtime) verwendet wird. Selbst wenn der Agent über Prompt-Injection kompromittiert wird, kann er Daten nicht zu beliebigen Servern exfiltrieren. Er kann nur über den Proxy kommunizieren, der kontrolliert, welche Domänen erreichbar sind. Weitere Details finden Sie im [Claude Code Sandboxing Blog-Beitrag](https://www.anthropic.com/engineering/claude-code-sandboxing).167Dies ist die gleiche Architektur, die von [sandbox-runtime](https://github.com/anthropics/sandbox-runtime) verwendet wird. Selbst wenn der Agent über Prompt-Injection kompromittiert wird, kann er Daten nicht zu beliebigen Servern exfiltrieren. Er kann nur über den Proxy kommunizieren, der kontrolliert, welche Domänen erreichbar sind. Weitere Details finden Sie im [Claude Code Sandboxing Blog-Beitrag](https://www.anthropic.com/engineering/claude-code-sandboxing).

168 168 

169**Zusätzliche Härtungsoptionen:**169**Zusätzliche Härtungsoptionen:**

170 170 


385* [Claude Code Sicherheitsdokumentation](/docs/de/security)385* [Claude Code Sicherheitsdokumentation](/docs/de/security)

386* [Hosting des Agent SDK](/docs/de/agent-sdk/hosting)386* [Hosting des Agent SDK](/docs/de/agent-sdk/hosting)

387* [Umgang mit Berechtigungen](/docs/de/agent-sdk/permissions)387* [Umgang mit Berechtigungen](/docs/de/agent-sdk/permissions)

388* [Sandbox-Laufzeit](https://github.com/anthropic-experimental/sandbox-runtime)388* [Sandbox-Laufzeit](https://github.com/anthropics/sandbox-runtime)

389* [The Lethal Trifecta for AI Agents](https://simonwillison.net/2025/Jun/16/the-lethal-trifecta/)389* [The Lethal Trifecta for AI Agents](https://simonwillison.net/2025/Jun/16/the-lethal-trifecta/)

390* [OWASP Top 10 for LLM Applications](https://owasp.org/www-project-top-10-for-large-language-model-applications/)390* [OWASP Top 10 for LLM Applications](https://owasp.org/www-project-top-10-for-large-language-model-applications/)

391* [Docker Security Best Practices](https://docs.docker.com/engine/security/)391* [Docker Security Best Practices](https://docs.docker.com/engine/security/)

Details

378</h2>378</h2>

379 379 

380<Note>380<Note>

381 Für Projekt- und persönliche Skills wendet Claude Code das [`allowed-tools`](/docs/de/skills#pre-approve-tools-for-a-skill)-Frontmatter-Feld in SDK-Sitzungen an. Sie können Tools für diese Skills auch über die `allowedTools`-Option (`allowed_tools` in Python) in Ihrer Abfragekonfiguration vorab genehmigen. Skills [synchronisiert von claude.ai](/docs/de/skills#how-claude-code-handles-the-frontmatter-of-a-synced-skill) folgen ihren eigenen Frontmatter-Regeln.381 In SDK-Sitzungen können Sie Tools für einen Projekt- oder persönlichen Skill über das [`allowed-tools`](/docs/de/skills#pre-approve-tools-for-a-skill)-Frontmatter des Skills oder über die `allowedTools`-Option (`allowed_tools` in Python) in Ihrer Abfragekonfiguration vorab genehmigen. Wenn Ihre Organisation [`allowManagedPermissionRulesOnly`](/docs/de/settings-reference#allowmanagedpermissionrulesonly) in den verwalteten Einstellungen setzt, ignoriert Claude Code beides. Skills [synchronisiert von claude.ai](/docs/de/skills#how-claude-code-handles-the-frontmatter-of-a-synced-skill) folgen ihren eigenen Frontmatter-Regeln.

382</Note>382</Note>

383 383 

384Skills laufen mit den Tools der Sitzung. Das folgende Beispiel genehmigt `Read`, `Grep` und `Glob` mit `allowedTools` (`allowed_tools` in Python) vorab, sodass Claude Dateien inspizieren kann, während der [security-check-Skill](#create-and-dispatch-your-first-skill) ausgeführt wird, ohne auf Genehmigung zu warten:384Skills laufen mit den Tools der Sitzung. Das folgende Beispiel genehmigt `Read`, `Grep` und `Glob` mit `allowedTools` (`allowed_tools` in Python) vorab, sodass Claude Dateien inspizieren kann, während der [security-check-Skill](#create-and-dispatch-your-first-skill) ausgeführt wird, ohne auf Genehmigung zu warten:

Details

16* **Einzelne Nachricht-Eingabe**: One-Shot-Abfragen, die Sitzungszustand und Wiederaufnahme verwenden16* **Einzelne Nachricht-Eingabe**: One-Shot-Abfragen, die Sitzungszustand und Wiederaufnahme verwenden

17 17 

18<h2 id="streaming-input-mode-recommended">18<h2 id="streaming-input-mode-recommended">

19 Streaming-Eingabemodus (Empfohlen)19 Streaming-Eingabemodus (empfohlen)

20</h2>20</h2>

21 21 

22Der Streaming-Eingabemodus ist die **bevorzugte** Methode zur Verwendung des Claude Agent SDK. Er bietet vollständigen Zugriff auf die Fähigkeiten des Agenten und ermöglicht umfangreiche, interaktive Erfahrungen.22Der Streaming-Eingabemodus ist die **bevorzugte** Methode zur Verwendung des Claude Agent SDK. Er bietet vollen Zugriff auf die Fähigkeiten des Agenten und ermöglicht umfassende, interaktive Erfahrungen.

23 23 

24Er ermöglicht es dem Agenten, als langlebiger Prozess zu fungieren, der Benutzereingaben entgegennimmt, Unterbrechungen verarbeitet, Berechtigungsanfragen anzeigt und die Sitzungsverwaltung übernimmt.24Er ermöglicht es dem Agenten, als langlebiger Prozess zu arbeiten, der Benutzereingaben entgegennimmt, Unterbrechungen verarbeitet, Berechtigungsanfragen anzeigt und die Sitzungsverwaltung übernimmt.

25 25 

26<h3 id="benefits">26<h3 id="benefits">

27 Vorteile27 Vorteile

28</h3>28</h3>

29 29 

30Im Streaming-Eingabemodus arbeiten Sie in einer persistenten Sitzung mit diesen Fähigkeiten:30Im Streaming-Eingabemodus arbeiten Sie in einer persistenten Sitzung mit diesen Funktionen:

31 31 

32* **Bild-Uploads**: Bilder direkt an Nachrichten anhängen für visuelle Analyse und Verständnis32* **Bild-Uploads**: Hängen Sie Bilder direkt an Nachrichten an, um sie visuell analysieren und verstehen zu lassen

33* **Warteschlangen-Nachrichten**: Mehrere Nachrichten senden, die sequenziell verarbeitet werden, mit der Möglichkeit zu unterbrechen33* **Nachrichten in der Warteschlange**: Senden Sie mehrere Nachrichten, die nacheinander verarbeitet werden, mit der Möglichkeit zur Unterbrechung

34* **Tool-Integration**: Vollständiger Zugriff auf alle Tools und benutzerdefinierten MCP-Server während der Sitzung34* **Tool-Integration**: Voller Zugriff auf alle Tools und benutzerdefinierten MCP-Server während der Sitzung

35* **Echtzeit-Feedback**: Sehen Sie Antworten, während sie generiert werden, nicht nur die endgültigen Ergebnisse35* **Echtzeit-Feedback**: Sehen Sie Antworten, während sie generiert werden, nicht nur die Endergebnisse

36* **Kontext-Persistenz**: Behalten Sie den Gesprächskontext über mehrere Umdrehungen hinweg natürlich bei36* **Kontextpersistenz**: Behalten Sie den Konversationskontext über mehrere Turns hinweg auf natürliche Weise bei

37 37 

38<h3 id="implementation-example">38<h3 id="implementation-example">

39 Implementierungsbeispiel39 Implementierungsbeispiel

40</h3>40</h3>

41 41 

42Diese Beispiele lesen ein Bild namens `diagram.png` aus dem Arbeitsverzeichnis. Erstellen Sie zuerst eines dort, oder ändern Sie den Dateinamen, um auf Ihr eigenes Bild zu verweisen.42Diese Beispiele lesen ein Bild namens `diagram.png` aus dem Arbeitsverzeichnis. Erstellen Sie dort zuerst eines, oder ändern Sie den Dateinamen so, dass er auf Ihr eigenes Bild verweist.

43 43 

44<CodeGroup>44<CodeGroup>

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


164 ```164 ```

165</CodeGroup>165</CodeGroup>

166 166 

167Wenn Sie das Beispiel ausführen, gibt die TypeScript-Version jede Antwort aus, sobald sie abgeschlossen ist. Die `receive_response()`-Schleife der Python-Version endet bei der ersten Ergebnismeldung, daher gibt sie die Sicherheitsanalyse aus. Um beide Antworten zu lesen, verwenden Sie ein `query()`- und `receive_response()`-Paar pro Nachricht, wie im [Beispiel der Python-Referenz zum Fortsetzen einer Konversation](/docs/de/agent-sdk/python#example-continuing-a-conversation) gezeigt.167Wenn Sie das Beispiel ausführen, gibt die TypeScript-Version jede Antwort aus, sobald sie abgeschlossen ist. Die `receive_response()`-Schleife der Python-Version endet bei der ersten Ergebnisnachricht, sodass sie die Sicherheitsanalyse ausgibt; um beide Antworten zu lesen, verwenden Sie pro Nachricht ein Paar aus `query()` und `receive_response()`, wie im [Beispiel der Python-Referenz zum Fortsetzen einer Konversation](/docs/de/agent-sdk/python#example-continuing-a-conversation) gezeigt.

168 

169Wenn die `source` eines Bildblocks fehlt oder kein Objekt ist, meldet das SDK keinen Fehler. Claude Code sendet Claude anstelle des Bildes einen Texthinweis, etwa `[Image could not be processed: image block has no source object]`, und die Sitzung wird fortgesetzt.

168 170 

169<Note>171<Note>

170 Im TypeScript SDK endet der Stream mit einem Fehler, der `Claude Code process aborted by user` lautet, wenn Ihr Nachrichtengenerator beispielsweise eine fehlende Datei liest, anstatt den ursprünglichen Fehler anzuzeigen. Überprüfen Sie daher zuerst den Code in Ihrem Generator, wenn Sie diese Meldung sehen. Der Fehler kann auch einer langen verkleinerten Zeile mit gebündeltem SDK-Quellcode vorangehen, daher lesen Sie bis zum Ende der Ausgabe, um den Fehlertext zu finden.172 Wenn im TypeScript SDK Ihr Nachrichtengenerator eine Ausnahme auslöst, beispielsweise weil eine Datei fehlt, die er liest, endet der Stream mit einem Fehler mit dem Text `Claude Code process aborted by user` anstelle des ursprünglichen Fehlers. Prüfen Sie daher zuerst den Code in Ihrem Generator, wenn Sie diese Meldung sehen. Dem Fehler kann außerdem eine lange minifizierte Zeile des gebündelten SDK-Quellcodes vorangehen, lesen Sie die Ausgabe also bis zum Ende, um den Fehlertext zu finden.

171 173 

172 Im Python SDK wird eine Generatorausnahme auf Debug-Ebene protokolliert und die Sitzung stellt sich ohne Auslösen ein. Wenn also eine Streaming-Sitzung ohne Ausgabe hängen bleibt, aktivieren Sie Debug-Protokollierung und überprüfen Sie Ihren Generator.174 Im Python SDK wird eine Ausnahme im Generator auf Debug-Ebene protokolliert, und die Sitzung bleibt hängen, ohne eine Ausnahme auszulösen. Wenn eine Streaming-Sitzung also ohne Ausgabe hängen bleibt, aktivieren Sie das Debug-Logging und prüfen Sie Ihren Generator.

173</Note>175</Note>

174 176 

175<h2 id="single-message-input">177<h2 id="single-message-input">

Details

204| Tool-Definitionen (geerbt vom übergeordneten Agent oder die Teilmenge in `tools`, [gefiltert für Hintergrund-Läufe](/docs/de/sub-agents#available-tools)) | Der System-Prompt des übergeordneten Agenten |204| Tool-Definitionen (geerbt vom übergeordneten Agent oder die Teilmenge in `tools`, [gefiltert für Hintergrund-Läufe](/docs/de/sub-agents#available-tools)) | Der System-Prompt des übergeordneten Agenten |

205 205 

206<Note>206<Note>

207 Der übergeordnete Agent erhält die letzte Nachricht des Subagenten als Agent-Tool-Ergebnis, kann sie aber in seiner eigenen Antwort zusammenfassen. Um die Ausgabe des Subagenten wörtlich in der benutzerorientierten Antwort zu bewahren, fügen Sie eine Anweisung dazu in den Prompt oder die `systemPrompt`-Option ein, die Sie an den Hauptaufruf `query()` übergeben.207 Der übergeordnete Agent erhält den abschließenden Bericht des Subagenten, kann ihn aber in seiner eigenen Antwort zusammenfassen. Um die Ausgabe des Subagenten wörtlich in der benutzerorientierten Antwort zu bewahren, fügen Sie eine Anweisung dazu in den Prompt oder die `systemPrompt`-Option ein, die Sie an den Hauptaufruf `query()` übergeben.

208 208 

209 In v2.1.210 und später [scannt Claude Code die letzte Nachricht auf anweisungsähnliche Muster](/docs/de/sub-agents#subagent-output-scanning), bevor der übergeordnete Agent sie liest. Der Scan behandelt drei Arten von Mustern unterschiedlich:209 In v2.1.210 und später [scannt Claude Code die letzte Nachricht auf anweisungsähnliche Muster](/docs/de/sub-agents#subagent-output-scanning), bevor der übergeordnete Agent sie liest. Der Scan behandelt drei Arten von Mustern unterschiedlich:

210 210 

Details

1562 1562 

1563`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.1563`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.

1564 1564 

1565`context_usage` ist eine strukturierte Kopie des `/context`-Berichts, typisiert als [`SDKContextUsage`](#sdkcontextusage), und erfordert Agent SDK v0.3.232 oder später. Wenn Sie `/context` als Eingabeaufforderung senden, liefert Claude Code den Bericht als Assistenten-Nachricht, deren `message.content` die Markdown-Tabelle enthält, und fügt `context_usage` an dieselbe Nachricht an. Claude Code setzt das Feld nicht auf andere Assistenten-Nachrichten, und frühere Versionen liefern die `/context`-Tabelle ohne es, daher lesen Sie die Aufschlüsselung aus dem Feld, wenn es vorhanden ist, und greifen Sie auf den Markdown-Text zurück, wenn es nicht vorhanden ist.1565`context_usage` ist eine strukturierte Kopie des `/context`-Berichts, typisiert als [`SDKContextUsage`](#sdkcontextusage), und erfordert Agent SDK v0.3.232 oder später. Wenn Sie `/context` als Prompt senden, liefert Claude Code den Bericht als Assistenten-Nachricht, deren `message.content` die Markdown-Tabelle enthält, und fügt `context_usage` an dieselbe Nachricht an. Claude Code setzt das Feld nicht auf andere Assistenten-Nachrichten, und frühere Versionen liefern die `/context`-Tabelle ohne es, daher lesen Sie die Aufschlüsselung aus dem Feld, wenn es vorhanden ist, und greifen Sie auf den Markdown-Text zurück, wenn es nicht vorhanden ist.

1566 1566 

1567<h3 id="sdkusermessage">1567<h3 id="sdkusermessage">

1568 `SDKUserMessage`1568 `SDKUserMessage`


1587};1587};

1588```1588```

1589 1589 

1590Setzen Sie `pasted_content`, um Inhalte zu senden, die der Benutzer in Ihre Eingabeaufforderungs-Benutzeroberfläche eingefügt hat, anstatt sie einzugeben, einen Eintrag pro Einfügung, jeder ein String oder ein Array von Inhaltsblöcken. Claude Code fügt den Text jedes Eintrags nach dem eingegebenen Text an, in Reihenfolge, und kann jede Einfügung in `<pasted_content>`-Tags einwickeln. Blöcke außer Text werden ignoriert, daher senden Sie Bilder und Dokumente in `message.content`. Erfordert Agent SDK v0.3.277 oder später.1590Setzen Sie `pasted_content`, um Inhalte zu senden, die der Benutzer in Ihre Prompt-Benutzeroberfläche eingefügt hat, anstatt sie einzugeben, einen Eintrag pro Einfügung, jeder ein String oder ein Array von Inhaltsblöcken. Claude Code fügt den Text jedes Eintrags nach dem eingegebenen Text an, in Reihenfolge, und kann jede Einfügung in `<pasted_content>`-Tags einwickeln. Blöcke außer Text werden ignoriert, daher senden Sie Bilder und Dokumente in `message.content`. Erfordert Agent SDK v0.3.277 oder später.

1591 1591 

1592Setzen Sie `shouldQuery` oder `client_composed`, um zu ändern, wie Claude Code eine Nachricht handhabt, die Sie senden:1592Setzen Sie `shouldQuery` oder `client_composed`, um zu ändern, wie Claude Code eine Nachricht handhabt, die Sie senden:

1593 1593 


1596 1596 

1597Auf einer Nachricht, die einen `tool_result`-Block trägt, ist `tool_use_result` das strukturierte Ausgabeobjekt des Tools und nicht der Text, der an das Modell gesendet wird. Seine Form hängt vom Tool ab, das durch den entsprechenden `tool_use`-Block benannt wird, daher ist das Feld als `unknown` typisiert; die integrierten Formen sind unter [Tool-Ausgabetypen](#tool-output-types) aufgelistet.1597Auf einer Nachricht, die einen `tool_result`-Block trägt, ist `tool_use_result` das strukturierte Ausgabeobjekt des Tools und nicht der Text, der an das Modell gesendet wird. Seine Form hängt vom Tool ab, das durch den entsprechenden `tool_use`-Block benannt wird, daher ist das Feld als `unknown` typisiert; die integrierten Formen sind unter [Tool-Ausgabetypen](#tool-output-types) aufgelistet.

1598 1598 

1599Für das `Agent`-Tool ist `tool_use_result` [`AgentOutput`](#agent-2). Bei einem `completed`-Ergebnis enthält `content` den Bericht des Subagenten ohne die Agent-ID und den Nutzungs-Trailer, den Claude Code an den `tool_result`-Text anhängt, daher rendern Sie stattdessen aus `tool_use_result`.1599Für das `Agent`-Tool ist `tool_use_result` [`AgentOutput`](#agent-2). Rendern Sie daraus, anstatt den `tool_result`-Text zu analysieren. Bei einem `completed`-Ergebnis enthält `content` 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.

1600 1600 

1601Für ein MCP-Tool, dessen Ergebnis `resource_link`-Blöcke enthält, ist `tool_use_result` ein Objekt mit einem `resourceLinks`-Array von [`SDKMcpResourceLink`](#sdkmcpresourcelink)-Einträgen. Claude empfängt jeden Link als Textzeile im `tool_result`-Block, daher lesen Sie `resourceLinks`, um die vom Server zurückgegebenen Dateien zu rendern, anstatt diesen Text zu analysieren. Claude Code lässt `resourceLinks` weg, wenn das Ergebnis keine Links hat und bei Ergebnissen von Subagenten, behält höchstens 50 Links pro Ergebnis und stoppt das Hinzufügen von Links, sobald das Array 64 KiB serialisiertes JSON erreicht. `resourceLinks` erfordert Agent SDK v0.3.257 oder später.1601Für ein MCP-Tool, dessen Ergebnis `resource_link`-Blöcke enthält, ist `tool_use_result` ein Objekt mit einem `resourceLinks`-Array von [`SDKMcpResourceLink`](#sdkmcpresourcelink)-Einträgen. Claude empfängt jeden Link als Textzeile im `tool_result`-Block, daher lesen Sie `resourceLinks`, um die vom Server zurückgegebenen Dateien zu rendern, anstatt diesen Text zu analysieren. Claude Code lässt `resourceLinks` weg, wenn das Ergebnis keine Links hat und bei Ergebnissen von Subagenten, behält höchstens 50 Links pro Ergebnis und stoppt das Hinzufügen von Links, sobald das Array 64 KiB serialisiertes JSON erreicht. `resourceLinks` erfordert Agent SDK v0.3.257 oder später.

1602 1602 

1603Setzen Sie `inline_pastes`, um Claude Code mitzuteilen, welche Teile von `message.content` der Benutzer eingefügt hat, anstatt sie einzugeben, einen String pro Einfügung. Der Eingabetext bleibt dort, wo der Benutzer ihn platziert hat. Claude Code kann jede aufgelistete Einfügung in `<pasted_content>`-Tags einwickeln, wo sie steht, damit Claude eingefügte Materialien von den eigenen Worten des Benutzers unterscheiden kann. Nur Einfügungen im letzten Textblock der Eingabeaufforderung werden eingewickelt. Erfordert TypeScript Agent SDK v0.3.280 oder später.1603Setzen Sie `inline_pastes`, um Claude Code mitzuteilen, welche Teile von `message.content` der Benutzer eingefügt hat, anstatt sie einzugeben, einen String pro Einfügung. Der Prompt-Text bleibt dort, wo der Benutzer ihn platziert hat. Claude Code kann jede aufgelistete Einfügung in `<pasted_content>`-Tags einwickeln, wo sie steht, damit Claude eingefügte Materialien von den eigenen Worten des Benutzers unterscheiden kann. Nur Einfügungen im letzten Textblock des Prompts werden eingewickelt. Erfordert TypeScript Agent SDK v0.3.280 oder später.

1604 1604 

1605<h3 id="sdkusermessagereplay">1605<h3 id="sdkusermessagereplay">

1606 `SDKUserMessageReplay`1606 `SDKUserMessageReplay`


1706* `api_error_status`: Der HTTP-Statuscode des API-Fehlers, der die Konversation beendet hat. Fehlt oder ist `null`, wenn der Turn ohne API-Fehler endete.1706* `api_error_status`: Der HTTP-Statuscode des API-Fehlers, der die Konversation beendet hat. Fehlt oder ist `null`, wenn der Turn ohne API-Fehler endete.

1707* `ttft_ms`: Zeit bis zum ersten Token in Millisekunden, gemessen, wenn die erste vollständige Assistenten-Nachricht ankommt. Nur auf dem Success-Arm vorhanden.1707* `ttft_ms`: Zeit bis zum ersten Token in Millisekunden, gemessen, wenn die erste vollständige Assistenten-Nachricht ankommt. Nur auf dem Success-Arm vorhanden.

1708* `ttft_stream_ms`: Zeit in Millisekunden bis zum ersten `message_start`-Stream-Ereignis, wenn der Response-Stream öffnet. Niedriger als `ttft_ms`; die Lücke zwischen den beiden ist die Zeit, die zum Streamen der ersten Nachricht benötigt wird. Nur auf dem Success-Arm vorhanden.1708* `ttft_stream_ms`: Zeit in Millisekunden bis zum ersten `message_start`-Stream-Ereignis, wenn der Response-Stream öffnet. Niedriger als `ttft_ms`; die Lücke zwischen den beiden ist die Zeit, die zum Streamen der ersten Nachricht benötigt wird. Nur auf dem Success-Arm vorhanden.

1709* `user_message_uuid`: Die `uuid` der Nachricht, die Sie gesendet haben und diesen Turn beantwortet hat. Siehe [`user_message_uuid`](#user_message_uuid) für welche Ergebnisse sie tragen.1709* `user_message_uuid`: Die `uuid` der Nachricht, die Sie gesendet haben und die dieser Turn beantwortet hat. Siehe [`user_message_uuid`](#user_message_uuid) dazu, welche Ergebnisse sie tragen.

1710* `user_message_uuids`: Die `uuid`s jeder Nachricht, die Sie gesendet haben und die Claude Code in diesem Turn beantwortet hat. Siehe [`user_message_uuids`](#user_message_uuids).1710* `user_message_uuids`: Die `uuid`s jeder Nachricht, die Sie gesendet haben und die Claude Code in diesem Turn beantwortet hat. Siehe [`user_message_uuids`](#user_message_uuids).

1711* `resume_reason`: Warum Claude Code diesen Turn nach einem Neustart erneut ausgeführt hat, der ihn unterbrochen hat. Vorhanden auf beiden Armen und nur bei einem solchen erneuten Durchlauf. Siehe [`resume_reason`](#resume_reason).1711* `resume_reason`: Warum Claude Code diesen Turn nach einem Neustart erneut ausgeführt hat, der ihn unterbrochen hat. Vorhanden auf beiden Armen und nur bei einem solchen erneuten Durchlauf. Siehe [`resume_reason`](#resume_reason).

1712* `local_command`: Der Name des Befehls, den der Turn versendet hat, auf dem Success-Ergebnis eines Turns, den ein Befehl abgeschlossen hat, ohne die Agent-Schleife zu betreten, wie `/compact`. Der Name wird auf Kleinbuchstaben und Unterstriche gefaltet, daher meldet `/reload-plugins` `reload_plugins`. Ein Befehl, den ein MCP-Server bereitstellt, und das integrierte `/mcp`, melden `mcp`. Ein Befehl, den Sie selbst definiert haben, meldet `custom`. Die Argumente sind nie enthalten. Fehlt bei jedem Turn, der die Agent-Schleife betreten hat, und bei Sends, die keinen Befehl ausgeführt haben. Erfordert Agent SDK v0.3.268 oder später.1712* `local_command`: Der Name des Befehls, den der Turn versendet hat, auf dem Success-Ergebnis eines Turns, den ein Befehl abgeschlossen hat, ohne die Agentenschleife zu betreten, wie `/compact`. Der Name wird auf Kleinbuchstaben und Unterstriche gefaltet, daher meldet `/reload-plugins` `reload_plugins`. Ein Befehl, den ein MCP-Server bereitstellt, und das integrierte `/mcp` melden `mcp`. Ein Befehl, den Sie selbst definiert haben, meldet `custom`. Die Argumente sind nie enthalten. Fehlt bei jedem Turn, der die Agentenschleife betreten hat, und bei Sends, die keinen Befehl ausgeführt haben. Erfordert Agent SDK v0.3.268 oder später.

1713* `request_sent_wall_ms`: Epoch-Millisekunden, zu denen Claude Code die API-Anfrage versendet hat, für Joins gegen Server-seitige Zeitstempel. Nur zusammen mit [`user_message_uuid`](#user_message_uuid) vorhanden, auf einem Success-Ergebnis mit `is_error` false, dessen Turn eine API-Anfrage versendet hat.1713* `request_sent_wall_ms`: Epoch-Millisekunden, zu denen Claude Code die API-Anfrage versendet hat, für Joins gegen Server-seitige Zeitstempel. Nur zusammen mit [`user_message_uuid`](#user_message_uuid) vorhanden, auf einem Success-Ergebnis mit `is_error` false, dessen Turn eine API-Anfrage versendet hat.

1714*1714* `first_content_frame_ms`: Zeit in Millisekunden bis zum ersten `content_block_start`- oder `content_block_delta`-Stream-Ereignis, wobei Thinking-Blöcke als Inhalt gezählt werden. Nur auf dem Success-Arm vorhanden, wenn `is_error` false ist. Erfordert Agent SDK v0.3.260 oder später.

1715 1715* `first_stream_post_ms`, `first_stream_post_ack_ms`, `first_stream_post_wall_ms`: Zeitangaben zum Hochladen des ersten Stream-Ereignisses des Turns. Claude Code zeichnet sie nur in Sitzungen auf, die es zu claude.ai streamt, wie [Cloud-Sitzungen](/docs/de/claude-code-on-the-web), und die Ergebnisse, die `query()` liefert, enthalten sie nicht. Erfordert Agent SDK v0.3.260 oder später.

1716`first_content_frame_ms`: Zeit in Millisekunden bis zum ersten `content_block_start`- oder `content_block_delta`-Stream-Ereignis, wobei Thinking-Blöcke als Inhalt gezählt werden. Nur auf dem Success-Arm vorhanden, wenn `is_error` false ist. Erfordert Agent SDK v0.3.260 oder später.1716* `usage`: Nur Hauptagentenschleife. Schließt Subagenten- und Hilfsmodell-Aufrufe aus und ist pro Turn in Streaming-Input-Sitzungen. Bevorzugen Sie `modelUsage` für Token-/Kostenabrechnung.

1717 1717* `modelUsage`: Pro-Modell-Summen für jeden Modell-Aufruf, der während dieses `query()`-Aufrufs durch die Abfrage-Pipeline gemacht wurde, einschließlich der Hauptschleife, Subagenten und interner Aufrufe wie Komprimierung und Workflow-Agenten. Hilfsaufrufe außerhalb dieser Pipeline, wie der Berechtigungsklassifikator und Token-Zählungsanfragen, sind ausgeschlossen. Ein Aufruf, der eine Sitzung fortsetzt, zählt auch die [Pro-Modell-Summen, die aus den früheren Aufrufen der Sitzung wiederhergestellt wurden](/docs/de/agent-sdk/cost-tracking#accumulate-costs-across-multiple-calls). In Streaming-Input-Sitzungen sind die Summen kumulativ über Turns, daher lesen Sie das neueste Ergebnis, anstatt über Ergebnisse zu summieren. Siehe [Kosten im Streaming-Input-Modus verfolgen](/docs/de/agent-sdk/cost-tracking#track-costs-in-streaming-input-mode) für Zurücksetzungen und [Summen nach einem Sitzungsabsturz wiederherstellen](/docs/de/agent-sdk/cost-tracking#recover-totals-after-a-session-crash) für zurückgesetzte Ergebnisse.

1718*1718* `total_cost_usd`: Kumulative geschätzte Kosten in USD, die die gleichen Aufrufe wie `modelUsage` abdecken und an den gleichen Punkten zurückgesetzt werden. Ein Aufruf, der eine Sitzung fortsetzt, zählt auch die [Summen, die aus den früheren Aufrufen der Sitzung wiederhergestellt wurden](/docs/de/agent-sdk/cost-tracking#accumulate-costs-across-multiple-calls). Es ist eine Schätzung, keine Abrechnungsaussage. Siehe [Kosten und Nutzung verfolgen](/docs/de/agent-sdk/cost-tracking) für Genauigkeitsvorbehalte.

1719 1719* `queued_turn_count`: Die Anzahl der Nachrichten, die Sie mit `origin: { kind: "human" }` gesendet haben und die noch warten, wenn Claude Code das Ergebnis erzeugt hat. Siehe [`queued_turn_count`](#queued_turn_count) dazu, was `0` und ein fehlendes Feld Ihnen sagen.

1720`first_stream_post_ms`, `first_stream_post_ack_ms`, `first_stream_post_wall_ms`: Zeitangaben zum Hochladen des ersten Stream-Ereignisses des Turns. Claude Code zeichnet sie nur in Sitzungen auf, die es zu claude.ai streamt, wie [Cloud-Sitzungen](/docs/de/claude-code-on-the-web), und die Ergebnisse, die `query()` liefert, enthalten sie nicht. Erfordert Agent SDK v0.3.260 oder später.1720* `result_index`: Wo dieses Ergebnis in der Lieferreihenfolge des Durchlaufs fällt, gezählt von 0 über jedes Ergebnis, das der Prozess schreibt. Vorhanden auf beiden Armen. Ein Ergebnis, dessen Schreiben fehlschlägt, verbraucht immer noch seine Nummer, daher bedeutet eine Lücke in der Sequenz, dass ein Ergebnis verloren ging. Erfordert Agent SDK v0.3.268 oder später.

1721 1721* `startup_failure_reason`: Warum Claude Code sich weigerte zu starten, auf dem `error_during_execution`-Ergebnis, das es vor dem Beenden bei einem bekannten Startfehler schreibt. Siehe [`startup_failure_reason`](#startup_failure_reason) für die Werte und welche Fehler es tragen. Erfordert Agent SDK v0.3.274 oder später.

1722* `usage`: Nur Hauptagenten-Schleife. Schließt Subagenten- und Hilfmodell-Aufrufe aus und ist pro Turn in Streaming-Input-Sitzungen. Bevorzugen Sie `modelUsage` für Token-/Kostenabrechnung.

1723* `modelUsage`: Pro-Modell-Summen für jeden Modell-Aufruf, der während dieses `query()`-Aufrufs durch die Abfrage-Pipeline gemacht wurde, einschließlich der Hauptschleife, Subagenten und interner Aufrufe wie Komprimierung und Workflow-Agenten. Hilfaufrufe außerhalb dieser Pipeline, wie der Berechtigungsklassifizierer und Token-Zählungsanfragen, sind ausgeschlossen. Ein Aufruf, der eine Sitzung fortgesetzt, zählt auch die [Pro-Modell-Summen, die aus den früheren Aufrufen der Sitzung wiederhergestellt wurden](/docs/de/agent-sdk/cost-tracking#accumulate-costs-across-multiple-calls). In Streaming-Input-Sitzungen sind die Summen kumulativ über Turns, daher lesen Sie das neueste Ergebnis, anstatt über Ergebnisse zu summieren. Siehe [Kosten im Streaming-Input-Modus verfolgen](/docs/de/agent-sdk/cost-tracking#track-costs-in-streaming-input-mode) für Zurückstellungen und [Summen nach einem Sitzungsabsturz wiederherstellen](/docs/de/agent-sdk/cost-tracking#recover-totals-after-a-session-crash) für zurückgesetzte Ergebnisse.

1724* `total_cost_usd`: Kumulativer geschätzter Kosten in USD, abdeckend die gleichen Aufrufe wie `modelUsage` und Zurückstellung an den gleichen Punkten. Ein Aufruf, der eine Sitzung fortgesetzt, zählt auch die [Summen, die aus den früheren Aufrufen der Sitzung wiederhergestellt wurden](/docs/de/agent-sdk/cost-tracking#accumulate-costs-across-multiple-calls). Es ist eine Schätzung, keine Abrechnungsaussage. Siehe [Kosten und Nutzung verfolgen](/docs/de/agent-sdk/cost-tracking) für Genauigkeitsvorbehalt.

1725* `queued_turn_count`: Die Anzahl der Nachrichten, die Sie mit `origin: { kind: "human" }` gesendet haben und die noch warten, wenn Claude Code das Ergebnis erzeugt hat. Siehe [`queued_turn_count`](#queued_turn_count) für was `0` und ein fehlendes Feld Ihnen sagen.

1726*

1727 

1728`result_index`: Wo dieses Ergebnis in der Lieferreihenfolge des Durchlaufs fällt, gezählt von 0 über jedes Ergebnis, das der Prozess schreibt. Vorhanden auf beiden Armen. Ein Ergebnis, dessen Schreiben fehlschlägt, verbraucht immer noch seine Nummer, daher bedeutet eine Lücke in der Sequenz, dass ein Ergebnis verloren ging. Erfordert Agent SDK v0.3.268 oder später.

1729 

1730*

1731 

1732`startup_failure_reason`: Warum Claude Code sich weigerte zu starten, auf dem `error_during_execution`-Ergebnis, das es vor dem Beenden bei einem bekannten Startfehler schreibt. Siehe [`startup_failure_reason`](#startup_failure_reason) für die Werte und welche Fehler es tragen. Erfordert Agent SDK v0.3.274 oder später.

1733 

1734* `terminal_reason`: Warum die Schleife endete. Einer von `"completed"`, `"max_turns"`, `"tool_deferred"`, `"aborted_streaming"`, `"aborted_tools"`, `"hook_stopped"`, `"stop_hook_prevented"`, `"background_requested"`, `"blocking_limit"`, `"rapid_refill_breaker"`, `"prompt_too_long"`, `"image_error"`, `"model_error"`, `"api_error"`, `"malformed_tool_use_exhausted"`, `"budget_exhausted"`, `"structured_output_retry_exhausted"`, `"tool_deferred_unavailable"` oder `"turn_setup_failed"`.1722* `terminal_reason`: Warum die Schleife endete. Einer von `"completed"`, `"max_turns"`, `"tool_deferred"`, `"aborted_streaming"`, `"aborted_tools"`, `"hook_stopped"`, `"stop_hook_prevented"`, `"background_requested"`, `"blocking_limit"`, `"rapid_refill_breaker"`, `"prompt_too_long"`, `"image_error"`, `"model_error"`, `"api_error"`, `"malformed_tool_use_exhausted"`, `"budget_exhausted"`, `"structured_output_retry_exhausted"`, `"tool_deferred_unavailable"` oder `"turn_setup_failed"`.

1735* `fast_mode_state`: Einer von `"on"`, `"off"` oder `"cooldown"`.1723* `fast_mode_state`: Einer von `"on"`, `"off"` oder `"cooldown"`.

1736* `fast_mode_disabled_reason`: Warum [Fast Mode](/docs/de/fast-mode) gerade nicht verfügbar ist. Fehlt, wenn nichts Fast Mode blockiert, obwohl eine Anfrage möglicherweise immer noch mit Standardgeschwindigkeit ausgeführt wird. Während der Abkühlung nach einem Fast Mode Rate Limit meldet Claude Code `fast_mode_state: "cooldown"` ohne Grund-Code und reaktiviert Fast Mode, wenn die Abkühlung abläuft. Erfordert Claude Code v2.1.219 oder später.1724* `fast_mode_disabled_reason`: Warum der [Fast-Modus](/docs/de/fast-mode) gerade nicht verfügbar ist. Fehlt, wenn nichts den Fast-Modus blockiert, obwohl eine Anfrage möglicherweise immer noch mit Standardgeschwindigkeit ausgeführt wird. Während der Abkühlung nach einem Rate-Limit des Fast-Modus meldet Claude Code `fast_mode_state: "cooldown"` ohne Grund-Code und reaktiviert den Fast-Modus, wenn die Abkühlung abläuft. Erfordert Claude Code v2.1.219 oder später.

1737 1725 

1738Verwenden Sie den Grund-Code, um zu erklären, warum Fast Mode in Ihrer eigenen Benutzeroberfläche aus ist, anstatt die Verfügbarkeit neu abzuleiten. Jeder Code benennt die Überprüfung, die Fast Mode blockiert hat:1726Verwenden Sie den Grund-Code, um zu erklären, warum der Fast-Modus in Ihrer eigenen Benutzeroberfläche aus ist, anstatt die Verfügbarkeit neu abzuleiten. Jeder Code benennt die Überprüfung, die den Fast-Modus blockiert hat:

1739 1727 

1740| Grund-Code | Bedeutung |1728| Grund-Code | Bedeutung |

1741| - | - |1729| - | - |

1742| `free` | Das Konto hat nicht das bezahlte Abonnement oder die Nutzungsguthaben, die Fast Mode erfordert |1730| `free` | Das Konto hat nicht das bezahlte Abonnement oder das Nutzungsguthaben, das der Fast-Modus erfordert |

1743| `preference` | Die Organisation hat Fast Mode deaktiviert |1731| `preference` | Die Organisation hat den Fast-Modus deaktiviert |

1744| `extra_usage_disabled` | Nutzungsguthaben sind für das Konto ausgeschaltet |1732| `extra_usage_disabled` | Nutzungsguthaben ist für das Konto ausgeschaltet |

1745| `network_error` | Die [Verfügbarkeitsprüfung](/docs/de/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways) konnte `api.anthropic.com` nicht erreichen |1733| `network_error` | Die [Verfügbarkeitsprüfung](/docs/de/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways) konnte `api.anthropic.com` nicht erreichen |

1746| `unknown` | Claude Code konnte die Verfügbarkeit nicht bestimmen |1734| `unknown` | Claude Code konnte die Verfügbarkeit nicht bestimmen |

1747| `not_first_party` | Die Sitzung verwendet einen anderen Anbieter als die Anthropic API |1735| `not_first_party` | Die Sitzung verwendet einen anderen Anbieter als die Anthropic API |

1748| `disabled_by_env` | [`CLAUDE_CODE_DISABLE_FAST_MODE`](/docs/de/env-vars) ist gesetzt |1736| `disabled_by_env` | [`CLAUDE_CODE_DISABLE_FAST_MODE`](/docs/de/env-vars) ist gesetzt |

1749| `model_not_allowed` | Das Fast Mode Opus-Modell ist nicht in der [`availableModels`](/docs/de/model-config#restrict-model-selection)-Zulassungsliste der Organisation |1737| `model_not_allowed` | Das Opus-Modell des Fast-Modus ist nicht in der [`availableModels`](/docs/de/model-config#restrict-model-selection)-Allowlist der Organisation |

1750| `sdk_opt_in_required` | Die Sitzung hat sich nicht für Fast Mode angemeldet: Übergeben Sie `fastMode: true` in der [`settings`](#options)-Option oder durch [`applyFlagSettings()`](#applyflagsettings) |1738| `sdk_opt_in_required` | Die Sitzung hat sich nicht für den Fast-Modus angemeldet: Übergeben Sie `fastMode: true` in der [`settings`](#options)-Option oder durch [`applyFlagSettings()`](#applyflagsettings) |

1751| `pending` | Die Verfügbarkeitsprüfung ist noch nicht abgeschlossen |1739| `pending` | Die Verfügbarkeitsprüfung ist noch nicht abgeschlossen |

1752 1740 

1753Das gleiche Feldpaar erscheint auf [`SDKSystemMessage`](#sdksystemmessage) und auf [`SDKControlInitializeResponse`](#sdkcontrolinitializeresponse), daher können Sie den Fast Mode-Status vor dem ersten Turn lesen.1741Das gleiche Feldpaar erscheint auf [`SDKSystemMessage`](#sdksystemmessage) und auf [`SDKControlInitializeResponse`](#sdkcontrolinitializeresponse), daher können Sie den Status des Fast-Modus vor dem ersten Turn lesen.

1754 1742 

1755Das `origin`-Feld leitet die [`SDKMessageOrigin`](#sdkmessageorigin) der Benutzer-Nachricht weiter, die dieses Ergebnis ausgelöst hat. Wenn das SDK einen synthetischen Follow-up-Turn einfügt, wie für eine beendete Hintergrund-Aufgabe, trägt die resultierende `SDKResultMessage` `origin: { kind: "task-notification" }`. Routinen, deren Trigger ausgelöst wurde, und von Servern verifizierte Nachrichten von Ihren anderen Sitzungen kommen mit dieser Art an, jede mit dem `subkind`, der in [Task-Notification-Subkinds](#task-notification-subkinds) beschrieben ist. Überprüfen Sie `kind`, um Ergebnisse zu unterscheiden, die Ihre Eingabeaufforderung beantworten, von eingefügten Follow-ups, bevor Sie sie weiterleiten oder unterdrücken. Wenn Ihre Anwendung [geplante Ausführungen erklärt](#declare-a-scheduled-run), tragen ihre Ergebnisse auch `kind: "task-notification"`, daher unterdrücken Sie nicht nur auf `kind` allein.1743Das `origin`-Feld leitet die [`SDKMessageOrigin`](#sdkmessageorigin) der Benutzer-Nachricht weiter, die dieses Ergebnis ausgelöst hat. Wenn das SDK einen synthetischen Follow-up-Turn einfügt, wie für eine beendete Hintergrundaufgabe, trägt die resultierende `SDKResultMessage` `origin: { kind: "task-notification" }`. Routinen, deren Trigger ausgelöst wurde, und von Servern verifizierte Nachrichten von Ihren anderen Sitzungen kommen mit dieser Art an, jede mit dem `subkind`, der in [Task-Notification-Subkinds](#task-notification-subkinds) beschrieben ist. Überprüfen Sie `kind`, um Ergebnisse, die Ihren Prompt beantworten, von eingefügten Follow-ups zu unterscheiden, bevor Sie sie weiterleiten oder unterdrücken. Wenn Ihre Anwendung [geplante Ausführungen erklärt](#declare-a-scheduled-run), tragen ihre Ergebnisse auch `kind: "task-notification"`, daher unterdrücken Sie nicht allein anhand von `kind`.

1756 1744 

1757Wenn mehrere Hintergrund-Task-Abschlüsse zusammen in die Warteschlange eingereiht werden, kann Claude Code sie in einem Turn beantworten, anstatt einen Turn pro Abschluss. Jeder Abschluss erzeugt immer noch sein eigenes Ergebnis mit dieser Herkunft. Alle außer dem letzten der Abschlüsse, die Claude Code zusammen beantwortet, erzeugen leere Ergebnisse mit `num_turns: 0`, in Reihenfolge, und das Ergebnis des letzten trägt den Turn, der sie alle beantwortet.1745Wenn mehrere Abschlüsse von Hintergrundaufgaben zusammen in die Warteschlange eingereiht werden, kann Claude Code sie in einem Turn beantworten, anstatt einen Turn pro Abschluss. Jeder Abschluss erzeugt immer noch sein eigenes Ergebnis mit dieser Herkunft. Alle außer dem letzten der Abschlüsse, die Claude Code zusammen beantwortet, erzeugen leere Ergebnisse mit `num_turns: 0`, in Reihenfolge, und das Ergebnis des letzten trägt den Turn, der sie alle beantwortet.

1758 1746 

1759Das Feld fehlt bei Ergebnissen, die vor einem Benutzer-Turn ausgegeben werden, z. B. Startfehler.1747Das Feld fehlt bei Ergebnissen, die vor einem Benutzer-Turn ausgegeben werden, z. B. Startfehler.

1760 1748 


1764 `user_message_uuid`1752 `user_message_uuid`

1765</h4>1753</h4>

1766 1754 

1767Die `uuid` der [`SDKUserMessage`](#sdkusermessage), die den Turn beantwortet, wiedergegeben, damit Sie Claude Codes Antwort mit der Nachricht abgleichen können, die Sie gesendet haben. Claude Code wiederholt eine `uuid` nur, wenn Sie eine auf der Nachricht setzen. Das Feld ist optional auf `SDKUserMessage`, und eine String-Eingabeaufforderung, die an `query()` übergeben wird, trägt keine.1755Die `uuid` der [`SDKUserMessage`](#sdkusermessage), die der Turn beantwortet, wiedergegeben, damit Sie Claude Codes Antwort mit der Nachricht abgleichen können, die Sie gesendet haben. Claude Code wiederholt eine `uuid` nur, wenn Sie eine auf der Nachricht setzen. Das Feld ist optional auf `SDKUserMessage`, und ein String-Prompt, der an `query()` übergeben wird, trägt keine.

1768 1756 

1769Welche Ihrer Nachrichten ein Turn beantwortet, hängt davon ab, wie der Turn gestartet wurde:1757Welche Ihrer Nachrichten ein Turn beantwortet, hängt davon ab, wie der Turn gestartet wurde:

1770 1758 

1771* **Eine reguläre Nachricht, die Sie gesendet haben**, d. h. eine ohne `isSynthetic: true`: Der Turn beantwortet diese Nachricht für seinen gesamten Lauf. Wenn Sie mehrere Nachrichten dicht beieinander senden, kann Claude Code sie in einen Turn zusammenführen, und das Feld trägt dann nur die `uuid` der letzten Nachricht. Um die Antwort mit einer der zusammengeführten Nachrichten abzugleichen, verwenden Sie [`user_message_uuids`](#user_message_uuids).1759* **Eine reguläre Nachricht, die Sie gesendet haben**, d. h. eine ohne `isSynthetic: true`: Der Turn beantwortet diese Nachricht für seinen gesamten Lauf. Wenn Sie mehrere Nachrichten dicht beieinander senden, kann Claude Code sie in einen Turn zusammenführen, und das Feld trägt dann nur die `uuid` der letzten Nachricht. Um die Antwort mit einer der zusammengeführten Nachrichten abzugleichen, verwenden Sie [`user_message_uuids`](#user_message_uuids).

1772*1760* **Eine Nachricht, die Sie mit `isSynthetic: true` gesendet haben**: Der Turn beantwortet diese Nachricht zunächst. Wenn Claude Code eine reguläre Nachricht von Ihnen zwischen Tool-Aufrufen aufgreift, beantwortet der Turn die aufgegriffene Nachricht von da an. Das Wiederholen der `uuid` einer synthetischen Nachricht erfordert Agent SDK v0.3.265 oder später; frühere Versionen wiederholen nichts bei synthetischen Turns.

1773 1761* **Der Prompt, den Claude Code generiert, um einen unterbrochenen Turn unter [`CLAUDE_CODE_RESUME_INTERRUPTED_TURN`](/docs/de/env-vars) erneut auszuführen**: Wenn der letzte Prompt des unterbrochenen Turns eine reguläre Nachricht ist, die Sie gesendet haben, ob sie den Turn öffnete oder Claude Code sie während des Turns aufgriff, beantwortet der erneute Durchlauf diese Nachricht zunächst. [`resume_reason`](#resume_reason) unterscheidet die Frames des erneuten Durchlaufs von denen des unterbrochenen Versuchs. Wenn der letzte Prompt keine reguläre Nachricht von Ihnen ist, beantwortet der erneute Durchlauf zunächst keine Nachricht von Ihnen. Wenn Claude Code eine reguläre Nachricht von Ihnen zwischen Tool-Aufrufen aufgreift, beantwortet der Turn die aufgegriffene Nachricht von da an. Das Wiederholen des Prompts des unterbrochenen Turns erfordert Agent SDK v0.3.268 oder später.

1774**Eine Nachricht, die Sie mit `isSynthetic: true` gesendet haben**: Der Turn beantwortet diese Nachricht zunächst. Wenn Claude Code eine reguläre Nachricht von Ihnen zwischen Tool-Aufrufen aufgreift, beantwortet der Turn die aufgegriffene Nachricht von da an. Das Wiederholen einer synthetischen Nachricht `uuid` erfordert Agent SDK v0.3.265 oder später; frühere Versionen wiederholen nichts bei synthetischen Turns.1762* **Jeder andere Prompt, den Claude Code selbst generiert hat**: Der Turn beantwortet zunächst keine Nachricht von Ihnen und seine Frames tragen keine Wiederholung. Wenn Claude Code eine reguläre Nachricht von Ihnen zwischen Tool-Aufrufen aufgreift, beantwortet der Turn diese Nachricht von da an. Die Aufgreif-Wiederholung erfordert Agent SDK v0.3.265 oder später; frühere Versionen wiederholen nichts bei diesen Turns.

1775 

1776*

1777 

1778**Die Eingabeaufforderung, die Claude Code generiert, um einen unterbrochenen Turn unter [`CLAUDE_CODE_RESUME_INTERRUPTED_TURN`](/docs/de/env-vars) erneut auszuführen**: Wenn die letzte Eingabeaufforderung des unterbrochenen Turns eine reguläre Nachricht ist, die Sie gesendet haben, ob sie den Turn öffnete oder Claude Code sie während des Turns aufgriff, beantwortet der erneute Durchlauf diese Nachricht zunächst. [`resume_reason`](#resume_reason) sagt die Frames des erneuten Durchlaufs vom unterbrochenen Versuch. Wenn die letzte Eingabeaufforderung keine reguläre Nachricht von Ihnen ist, beantwortet der erneute Durchlauf zunächst keine Nachricht von Ihnen. Wenn Claude Code eine reguläre Nachricht von Ihnen zwischen Tool-Aufrufen aufgreift, beantwortet der Turn die aufgegriffene Nachricht von da an. Das Wiederholen der Eingabeaufforderung des unterbrochenen Turns erfordert Agent SDK v0.3.268 oder später.

1779 

1780*

1781 

1782**Jede andere Eingabeaufforderung, die Claude Code selbst generiert hat**: Der Turn beantwortet zunächst keine Nachricht von Ihnen und seine Frames tragen keine Wiederholung. Wenn Claude Code eine reguläre Nachricht von Ihnen zwischen Tool-Aufrufen aufgreift, beantwortet der Turn diese Nachricht von da an. Die Aufgreif-Wiederholung erfordert Agent SDK v0.3.265 oder später; frühere Versionen wiederholen nichts bei diesen Turns.

1783 1763 

1784Claude Code wiederholt die `uuid` der beantworteten Nachricht auf drei Arten von Frames:1764Claude Code wiederholt die `uuid` der beantworteten Nachricht auf drei Arten von Frames:

1785 1765 

1786* **Das Ergebnis**: Jedes Ergebnis eines Turns, der eine Nachricht beantwortet, die Sie gesendet haben. Jedes solche Ergebnis trägt es auf Agent SDK v0.3.265 oder später. Vor v0.3.265 fehlte das Success-Ergebnis eines Turns, den eine reguläre Nachricht gestartet hat, wenn der Turn keine API-Anfrage versendet hat oder mit einem aufgeschobenen Tool-Aufruf endete. Vor v0.3.246 fehlte es auch auf Fehler-Ergebnissen, und vor v0.3.216 auf jedem Ergebnis.1766* **Das Ergebnis**: Jedes Ergebnis eines Turns, der eine Nachricht beantwortet, die Sie gesendet haben. Jedes solche Ergebnis trägt es auf Agent SDK v0.3.265 oder später. Vor v0.3.265 fehlte es auf dem Success-Ergebnis eines Turns, den eine reguläre Nachricht gestartet hat, wenn der Turn keine API-Anfrage versendet hat oder mit einem aufgeschobenen Tool-Aufruf endete. Vor v0.3.246 fehlte es auch auf Fehler-Ergebnissen, und vor v0.3.216 auf jedem Ergebnis.

1787*1767* **Die erste Antwort des Turns**: die erste [Assistenten-Nachricht](#sdkassistantmessage) und mit `includePartialMessages` außerdem das erste [Stream-Ereignis](#sdkpartialassistantmessage), dessen `event.type` nicht `ping` ist, damit Sie die Antwort binden können, bevor das Ergebnis ankommt. Die Erste-Antwort-Wiederholung erfordert Agent SDK v0.3.246 oder später. Vor v0.3.269 setzte Claude Code es mit `includePartialMessages` nur auf dieses erste Stream-Ereignis oder, wenn der Turn nichts streamte, auf die erste Assistenten-Nachricht. Wenn sich die Nachricht, die der Turn beantwortet, mitten im Turn ändert, trägt die erste Antwort nach der Änderung das Feld auch auf Agent SDK v0.3.265 oder später; frühere Versionen setzen es auf einen Antwort-Frame pro Turn.

1788 1768* **Jeder [`thinking_tokens`](#sdkthinkingtokensmessage)-Frame des Turns**: damit Sie den Thinking-Fortschritt der Nachricht zuordnen können, die Sie gesendet haben, ohne auf die erste Antwort des Turns zu warten. Erfordert Agent SDK v0.3.260 oder später.

1789**Die erste Antwort des Turns**: die erste [Assistenten-Nachricht](#sdkassistantmessage), oder mit `includePartialMessages` das erste [Stream-Ereignis](#sdkpartialassistantmessage), dessen `event.type` nicht `ping` ist, damit Sie die Antwort binden können, bevor das Ergebnis ankommt. Wenn ein Turn nichts streamt, setzt Claude Code es auf die erste Assistenten-Nachricht statt. Die erste-Antwort-Wiederholung erfordert Agent SDK v0.3.246 oder später. Wenn sich die Nachricht, die der Turn beantwortet, mitten im Turn ändert, trägt die erste Antwort nach der Änderung das Feld auch auf Agent SDK v0.3.265 oder später; frühere Versionen setzen es auf einen Antwort-Frame pro Turn.

1790 

1791*

1792 

1793**Jeder [`thinking_tokens`](#sdkthinkingtokensmessage)-Frame des Turns**: damit Sie den Thinking-Fortschritt der Nachricht zuordnen können, die Sie gesendet haben, ohne auf die erste Antwort des Turns zu warten. Erfordert Agent SDK v0.3.260 oder später.

1794 1769 

1795Claude Code lässt das Feld in diesen Fällen weg:1770Claude Code lässt das Feld in diesen Fällen weg:

1796 1771 

1797* Antwort-Frames außer diesen ersten Antworten1772* Antwort-Frames außer diesen ersten Antworten

1798* Subagenten-Frames1773* Subagenten-Frames

1799* Turns, die keine Nachricht mit einer `uuid` beantworten: Der Turn beantwortete eine Nachricht, die Sie ohne eine gesendet haben, oder Claude Code startete den Turn selbst und griff keine reguläre Nachricht auf, die eine hat1774* Turns, die keine Nachricht von Ihnen beantworten oder eine Nachricht beantworten, die Sie ohne `uuid` gesendet haben

1800* Ergebnisse, die keine Nachricht beantworten, die Sie gesendet haben, wie das zurückgesetzte Ergebnis nach einem abgestürzten Worker-Prozess1775* Ergebnisse, die keine Nachricht beantworten, die Sie gesendet haben, wie das zurückgesetzte Ergebnis nach einem abgestürzten Worker-Prozess

1801 1776 

1802<h4 id="user_message_uuids">1777<h4 id="user_message_uuids">


1805 1780 

1806Die `uuid`s jeder Nachricht, die Sie gesendet haben und die Claude Code in diesem Turn beantwortet hat. Wenn Sie mehrere Nachrichten dicht beieinander senden, kann Claude Code sie in einen Turn zusammenführen, und `user_message_uuid` benennt dann nur die letzte davon. Um die Antwort mit einer der zusammengeführten Nachrichten abzugleichen, suchen Sie nach der `uuid` dieser Nachricht überall in dieser Liste. Erfordert Agent SDK v0.3.259 oder später.1781Die `uuid`s jeder Nachricht, die Sie gesendet haben und die Claude Code in diesem Turn beantwortet hat. Wenn Sie mehrere Nachrichten dicht beieinander senden, kann Claude Code sie in einen Turn zusammenführen, und `user_message_uuid` benennt dann nur die letzte davon. Um die Antwort mit einer der zusammengeführten Nachrichten abzugleichen, suchen Sie nach der `uuid` dieser Nachricht überall in dieser Liste. Erfordert Agent SDK v0.3.259 oder später.

1807 1782 

1808Claude Code setzt die Liste zusammen mit `user_message_uuid` auf jeden Antwort-Frame, der dieses Feld trägt, und auf das Ergebnis. Für den vollständigen Satz von Frames, die `user_message_uuid` tragen, und die Version, die jeder erfordert, siehe [`user_message_uuid`](#user_message_uuid). Die Liste enthält immer `user_message_uuid` und hält höchstens 64 Einträge.1783Claude Code setzt die Liste zusammen mit `user_message_uuid` auf jeden Antwort-Frame, der dieses Feld trägt, und auf das Ergebnis. Für den vollständigen Satz von Turn-Frames, die die `uuid` der beantworteten Nachricht wiederholen, und die Version, die jeder erfordert, siehe [`user_message_uuid`](#user_message_uuid). Die Liste enthält immer `user_message_uuid` und hält höchstens 64 Einträge.

1809 1784 

1810Wenn Claude Code eine reguläre Nachricht aufgreift, die Sie während eines Turns versendet haben, fügt es die `uuid` dieser Nachricht zur Ergebnis-Liste hinzu.1785Wenn Claude Code eine reguläre Nachricht aufgreift, die Sie während eines Turns gesendet haben, fügt es die `uuid` dieser Nachricht zur Liste des Ergebnisses hinzu.

1811 1786 

1812Wenn eine erste Antwort oder ein Ergebnis `user_message_uuid` ohne die Liste trägt, kam es von einer früheren Claude Code-Version, daher greifen Sie auf das einzelne Feld zurück.1787Wenn eine erste Antwort oder ein Ergebnis `user_message_uuid` ohne die Liste trägt, kam es von einer früheren Claude Code-Version, daher greifen Sie auf das einzelne Feld zurück.

1813 1788 


1815 `resume_reason`1790 `resume_reason`

1816</h4>1791</h4>

1817 1792 

1818Warum Claude Code diesen Turn nach einem Neustart erneut ausgeführt hat. Claude Code setzt dieses Feld auf einen Turn, den es unter [`CLAUDE_CODE_RESUME_INTERRUPTED_TURN`](/docs/de/env-vars) erneut ausgeführt hat, damit Sie die Frames des erneuten Durchlaufs vom unterbrochenen Versuch unterscheiden können. Erfordert Agent SDK v0.3.268 oder später.1793Warum Claude Code diesen Turn nach einem Neustart erneut ausgeführt hat. Claude Code setzt dieses Feld auf einen Turn, den es unter [`CLAUDE_CODE_RESUME_INTERRUPTED_TURN`](/docs/de/env-vars) erneut ausgeführt hat, damit Sie Antwort und Ergebnis des erneuten Durchlaufs von denen des unterbrochenen Versuchs unterscheiden können. Erfordert Agent SDK v0.3.268 oder später.

1819 1794 

1820Claude Code setzt das Feld auf zwei Arten von Frames:1795Claude Code setzt das Feld auf zwei Arten von Frames:

1821 1796 


1873| :- | :- |1848| :- | :- |

1874| `org_pin_api_key_conflict` | Verwaltete Einstellungen [erfordern eine First-Party- oder Cloud-Gateway-Anmeldung](/docs/de/authentication#restrict-login-to-your-organization), und ein Anthropic API-Schlüssel, Auth-Token oder `apiKeyHelper` ist stattdessen konfiguriert |1849| `org_pin_api_key_conflict` | Verwaltete Einstellungen [erfordern eine First-Party- oder Cloud-Gateway-Anmeldung](/docs/de/authentication#restrict-login-to-your-organization), und ein Anthropic API-Schlüssel, Auth-Token oder `apiKeyHelper` ist stattdessen konfiguriert |

1875| `provider_not_allowed` | Verwaltete Einstellungen [listen die API-Anbieter auf, die diese Maschine verwenden darf](/docs/de/settings-reference#allowedproviders), und die Sitzung ist für einen Anbieter eingerichtet, der nicht aufgelistet ist, oder für einen Endpunkt, den die Einstellungen nicht anheften. Erfordert Claude Code v2.1.285 oder später |1850| `provider_not_allowed` | Verwaltete Einstellungen [listen die API-Anbieter auf, die diese Maschine verwenden darf](/docs/de/settings-reference#allowedproviders), und die Sitzung ist für einen Anbieter eingerichtet, der nicht aufgelistet ist, oder für einen Endpunkt, den die Einstellungen nicht anheften. Erfordert Claude Code v2.1.285 oder später |

1876| `org_verify_failed` | Die Anmeldungs-Organisation konnte nicht gegen die PIN verifiziert werden, z. B. wegen eines Netzwerkfehlers oder eines widerrufenen Tokens |1851| `org_verify_failed` | Die Organisation der Anmeldung konnte nicht gegen die PIN verifiziert werden, z. B. wegen eines Netzwerkfehlers oder eines widerrufenen Tokens |

1877| `org_pin_mismatch` | Die Anmeldung gehört zu einer Organisation, die die PIN nicht erlaubt |1852| `org_pin_mismatch` | Die Anmeldung gehört zu einer Organisation, die die PIN nicht erlaubt |

1878| `managed_settings_invalid` | Verwaltete Richtlinien-Einstellungen konnten nicht gelesen werden, die PIN benennt keine Organisation, oder [verwaltete Modellbeschränkungen](/docs/de/errors#managed-settings-block-the-default-model) lassen kein zulässiges Modell für die Standard-Option |1853| `managed_settings_invalid` | Verwaltete Richtlinien-Einstellungen konnten nicht gelesen werden, die PIN benennt keine Organisation, oder [verwaltete Modellbeschränkungen](/docs/de/errors#managed-settings-block-the-default-model) lassen kein zulässiges Modell für die Standard-Option |

1879| `remote_settings_required_unavailable` | Verwaltete Einstellungen, die die Organisation erfordert, konnten nicht geladen werden |1854| `remote_settings_required_unavailable` | Verwaltete Einstellungen, die die Organisation erfordert, konnten nicht geladen werden |

1880| `gateway_signin_required` | Das [Cloud-Gateway](/docs/de/claude-apps-gateway) beendete diese Anmeldung |1855| `gateway_signin_required` | Das [Cloud-Gateway](/docs/de/claude-apps-gateway) beendete diese Anmeldung |

1881| `gateway_access_denied` | Die verwaltete Einstellungs-Anfrage an das Cloud-Gateway kam mit einem 403 zurück, das die [Fehlerbehebungs-Tabelle](/docs/de/claude-apps-gateway-deploy#troubleshooting) des Gateways abdeckt |1856| `gateway_access_denied` | Die Anfrage nach verwalteten Einstellungen an das Cloud-Gateway kam mit einem 403 zurück, das die [Fehlerbehebungs-Tabelle](/docs/de/claude-apps-gateway-deploy#troubleshooting) des Gateways abdeckt |

1882| `proxy_invalid` | Eine Proxy-Einstellung ist keine vollständige URL |1857| `proxy_invalid` | Eine Proxy-Einstellung ist keine vollständige URL |

1883| `temp_dir_unusable` | Das benutzerspezifische temporäre Verzeichnis ist unsicher oder konnte nicht erstellt werden |1858| `temp_dir_unusable` | Das benutzerspezifische temporäre Verzeichnis ist unsicher oder konnte nicht erstellt werden |

1884| `cwd_unavailable` | Das Arbeitsverzeichnis wurde gelöscht, verschoben oder kann nicht gelesen werden |1859| `cwd_unavailable` | Das Arbeitsverzeichnis wurde gelöscht, verschoben oder kann nicht gelesen werden |


1932};1907};

1933```1908```

1934 1909 

1935`fast_mode_state` meldet den [Fast Mode](/docs/de/fast-mode)-Status der Sitzung. Wenn etwas Fast Mode blockiert, benennt `fast_mode_disabled_reason` die Überprüfung, die es blockiert hat; das Feld erfordert Claude Code v2.1.219 oder später. Für die Grund-Codes und ihre Bedeutungen siehe [`fast_mode_disabled_reason`](#sdkresultmessage) auf der Ergebnis-Nachricht.1910`fast_mode_state` meldet den Status des [Fast-Modus](/docs/de/fast-mode) der Sitzung. Wenn etwas den Fast-Modus blockiert, benennt `fast_mode_disabled_reason` die Überprüfung, die ihn blockiert hat; das Feld erfordert Claude Code v2.1.219 oder später. Für die Grund-Codes und ihre Bedeutungen siehe [`fast_mode_disabled_reason`](#sdkresultmessage) auf der Ergebnis-Nachricht.

1936 1911 

1937`terminal_slash_commands` benennt die Einträge in `slash_commands`, deren Schnittstelle an das lokale Terminal gebunden ist, wie `exit`. Sie können sie wie jeden anderen Eintrag in `slash_commands` senden; das Feld existiert, damit ein Remote- oder Mobile-Client sie aus seinen Befehlsmenüs ausblenden kann. Das Feld ist nur vorhanden, wenn nicht leer, und erfordert Agent SDK v0.3.229 oder später.1912`terminal_slash_commands` benennt die Einträge in `slash_commands`, deren Schnittstelle an das lokale Terminal gebunden ist, wie `exit`. Sie können sie wie jeden anderen Eintrag in `slash_commands` senden; das Feld existiert, damit ein Remote- oder Mobile-Client sie aus seinen Befehlsmenüs ausblenden kann. Das Feld ist nur vorhanden, wenn nicht leer, und erfordert Agent SDK v0.3.229 oder später.

1938 1913 

1939*1914* `source` auf jedem `mcp_servers`-Eintrag: Woher die Definition des Servers kam, mit den gleichen Werten wie `source` von [`McpServerStatus`](#mcpserverstatus). Erfordert Agent SDK v0.3.274 oder später.

1940 1915* `effort`: Die [Effort-Stufe](/docs/de/model-config#adjust-effort-level), die Claude Code bei der nächsten Anfrage der Sitzung sendet, oder `null`, wenn es keine sendet. Claude Code setzt das Feld nur auf die Init-Nachricht, die es an [Remote Control](/docs/de/remote-control)-Clients sendet, und lässt es aus der Init-Nachricht weg, die Ihre Anwendung liest. Erfordert Agent SDK v0.3.234 oder später.

1941`source` auf jedem `mcp_servers`-Eintrag: Woher die Definition des Servers kam, mit den gleichen Werten wie [`McpServerStatus`](#mcpserverstatus)s `source`. Erfordert Agent SDK v0.3.274 oder später.

1942 

1943*

1944 

1945`effort`: Die [Anstrengungsstufe](/docs/de/model-config#adjust-effort-level), die Claude Code bei der nächsten Anfrage der Sitzung sendet, oder `null`, wenn es keine sendet. Claude Code setzt das Feld nur auf die Init-Nachricht, die es an [Remote Control](/docs/de/remote-control)-Clients sendet, und lässt es aus der Init-Nachricht weg, die Ihre Anwendung liest. Erfordert Agent SDK v0.3.234 oder später.

1946 1916 

1947Das `capabilities`-Array benennt die Protokoll-Verhaltensweisen, die diese CLI implementiert, damit Sie Feature-Erkennung durchführen können, anstatt `claude_code_version`-Zeichenketten zu vergleichen. Es ist ein offenes Set: Ignorieren Sie Werte, die Sie nicht erkennen, und überprüfen Sie auf die spezifische Fähigkeit, deren Verhalten Sie benötigen. Das Feld erfordert Claude Code v2.1.205 oder später und fehlt auf früheren CLIs.1917Das `capabilities`-Array benennt die Protokoll-Verhaltensweisen, die diese CLI implementiert, damit Sie Feature-Erkennung durchführen können, anstatt `claude_code_version`-Zeichenketten zu vergleichen. Es ist ein offenes Set: Ignorieren Sie Werte, die Sie nicht erkennen, und überprüfen Sie auf die spezifische Fähigkeit, deren Verhalten Sie benötigen. Das Feld erfordert Claude Code v2.1.205 oder später und fehlt auf früheren CLIs.

1948 1918 

1949| Fähigkeit | Bedeutung |1919| Fähigkeit | Bedeutung |

1950| - | - |1920| - | - |

1951| `interrupt_receipt_v1` | [`interrupt()`](#query-object) wird mit einer [`SDKControlInterruptResponse`](#sdkcontrolinterruptresponse)-Quittung aufgelöst, die die Nachrichten benennt, die ausstanden, als der Interrupt ankam |1921| `interrupt_receipt_v1` | [`interrupt()`](#query-object) wird mit einer [`SDKControlInterruptResponse`](#sdkcontrolinterruptresponse)-Quittung aufgelöst, die die Nachrichten benennt, die ausstanden, als der Interrupt ankam |

1952| `interrupt_cancel_queued_v1` | Die `interrupt`-Steueranfrage ehrt `cancel_queued: true`, bricht die Nachrichten ab, die die Quittung sonst unter `still_queued` auflisten würde, und listet sie stattdessen unter `cancelled` auf. Siehe [`SDKControlInterruptResponse`](#sdkcontrolinterruptresponse). Erfordert Claude Code v2.1.219 oder später |1922| `interrupt_cancel_queued_v1` | Die `interrupt`-Steueranfrage berücksichtigt `cancel_queued: true`, bricht die Nachrichten ab, die die Quittung sonst unter `still_queued` auflisten würde, und listet sie stattdessen unter `cancelled` auf. Siehe [`SDKControlInterruptResponse`](#sdkcontrolinterruptresponse). Erfordert Claude Code v2.1.219 oder später |

1953 1923 

1954Das `plugin_errors`-Array listet Plugin-Ladefehler auf. Ein Eintrag beschreibt entweder ein Plugin, das nicht geladen wurde und in `plugins` fehlt, oder ein Plugin, das ohne einen seiner Teile geladen wurde, wie seine Hooks-Datei. Der Schlüssel wird weggelassen, wenn nichts fehlgeschlagen ist. `SDKSystemMessage` erklärt `plugin_errors` in Agent SDK v0.3.283 oder später.1924Das `plugin_errors`-Array listet Plugin-Ladefehler auf. Ein Eintrag beschreibt entweder ein Plugin, das nicht geladen wurde und in `plugins` fehlt, oder ein Plugin, das ohne einen seiner Teile geladen wurde, wie seine Hooks-Datei. Der Schlüssel wird weggelassen, wenn nichts fehlgeschlagen ist. `SDKSystemMessage` deklariert `plugin_errors` in Agent SDK v0.3.283 oder später.

1955 1925 

1956Wenn ein Verzeichnis oder Archiv aus Ihrer [`plugins`-Option](#options) selbst nicht geladen wird, hält das `plugin`-Feld des Eintrags ein Positions-Tag wie `inline[0]` anstelle eines Plugin-Namens. Dies geschieht beispielsweise, wenn der Pfad nicht existiert oder das Manifest ungültig ist. Gleichen Sie einen solchen Eintrag mit Ihrer Option durch sein `path`-Feld ab.1926Wenn ein Verzeichnis oder Archiv aus Ihrer [`plugins`-Option](#options) selbst nicht geladen wird, hält das `plugin`-Feld des Eintrags ein Positions-Tag wie `inline[0]` anstelle eines Plugin-Namens. Dies geschieht beispielsweise, wenn der Pfad nicht existiert oder das Manifest ungültig ist. Gleichen Sie einen solchen Eintrag mit Ihrer Option durch sein `path`-Feld ab.

1957 1927 


1984};1954};

1985```1955```

1986 1956 

1987Claude Code setzt `user_message_uuid` und `user_message_uuids` auf das erste nicht-ping-Stream-Ereignis des Turns und erneut, wenn sich die Nachricht, die der Turn beantwortet, ändert, 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 Stream-Ereignisse des erneuten Durchlaufs, die diese Felder tragen, auch [`resume_reason`](#resume_reason).1957Claude Code setzt `user_message_uuid` und `user_message_uuids` auf das erste Nicht-Ping-Stream-Ereignis des Turns und erneut, wenn sich die Nachricht, die der Turn beantwortet, ändert, 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 Stream-Ereignisse des erneuten Durchlaufs, die diese Felder tragen, auch [`resume_reason`](#resume_reason).

1988 1958 

1989<h3 id="sdkcompactboundarymessage">1959<h3 id="sdkcompactboundarymessage">

1990 `SDKCompactBoundaryMessage`1960 `SDKCompactBoundaryMessage`


2009 `SDKInformationalMessage`1979 `SDKInformationalMessage`

2010</h3>1980</h3>

2011 1981 

2012Generisches Text-Banner, das von der Schleife ausgegeben wird. Enthält Warnungen, Hinweise und andere nicht-fehlerhafte Statuszeilen, die Claude Code auslöst, und Hook-Feedback wie ein Block-Grund eines `UserPromptSubmit`-Hooks.1982Generisches Text-Banner, das von der Schleife ausgegeben wird. Enthält Warnungen, Hinweise und andere nicht-fehlerhafte Statuszeilen, die Claude Code auslöst, und Hook-Feedback wie den Block-Grund eines `UserPromptSubmit`-Hooks.

2013 1983 

2014Auf Claude Code v2.1.227 oder später kann die [`systemMessage`](/docs/de/hooks#json-output) eines Hooks als diese Nachricht ankommen, mit jeder Zeile mit dem Namen des Hooks vorangestellt, wie `PostToolUse:Bash says:`. Jeder [Ereignisabschnitt](/docs/de/hooks#hook-events) auf der Hooks-Seite sagt, wie die Ausgabe angezeigt wird.1984Auf Claude Code v2.1.227 oder später kann die [`systemMessage`](/docs/de/hooks#json-output) eines Hooks als diese Nachricht ankommen, wobei jeder Zeile der Name des Hooks vorangestellt ist, wie `PostToolUse:Bash says:`. Jeder [Ereignisabschnitt](/docs/de/hooks#hook-events) auf der Hooks-Seite sagt, wie die Ausgabe angezeigt wird.

2015 1985 

2016Rendern Sie `content` als Klartext auf der angegebenen `level`.1986Rendern Sie `content` als Klartext auf der angegebenen `level`.

2017 1987 


2032 `SDKWorkerShuttingDownMessage`2002 `SDKWorkerShuttingDownMessage`

2033</h3>2003</h3>

2034 2004 

2035Wird bei ordnungsgemäßem Herunterfahren des Workers ausgegeben, damit Remote-Clients sehen können, warum der Worker verschwunden ist, anstatt auf Heartbeat-Timeout zu warten. Der `reason` ist eine kurze snake\_case-Zeichenkette, die von der Host-CLI gesetzt wird, z. B. `"host_exit"` oder `"remote_control_disabled"`. Handeln Sie nur dann, wenn Sie live streamen. Eine wiederaufgenommene Sitzung spielt vergangene Instanzen dieser Nachricht ab, also ignorieren Sie sie in diesem Fall.2005Wird bei ordnungsgemäßem Herunterfahren des Workers ausgegeben, damit Remote-Clients sehen können, warum der Worker beendet wurde, anstatt auf Heartbeat-Timeout zu warten. Der `reason` ist eine kurze snake\_case-Zeichenkette, die von der Host-CLI gesetzt wird, z. B. `"host_exit"` oder `"remote_control_disabled"`. Handeln Sie nur dann, wenn Sie live streamen. Eine wiederaufgenommene Sitzung spielt vergangene Instanzen dieser Nachricht ab, also ignorieren Sie sie in diesem Fall.

2036 2006 

2037```typescript theme={null}2007```typescript theme={null}

2038type SDKWorkerShuttingDownMessage = {2008type SDKWorkerShuttingDownMessage = {


2066 `SDKPermissionDeniedMessage`2036 `SDKPermissionDeniedMessage`

2067</h3>2037</h3>

2068 2038 

2069Stream-Ereignis, das ausgegeben wird, wenn das Berechtigungssystem einen Tool-Aufruf ablehnt, ohne eine interaktive Eingabeaufforderung anzuzeigen. Verwenden Sie es, um die Ablehnung in Ihrer Benutzeroberfläche zu rendern, während sie geschieht, anstatt nur das `is_error`-Tool-Ergebnis zu beobachten, das folgt. Welche Ablehnungen es meldet, hängt davon ab, wie der Lauf Berechtigungsaufforderungen handhabt:2039Stream-Ereignis, das ausgegeben wird, wenn das Berechtigungssystem einen Tool-Aufruf ohne interaktive Berechtigungsabfrage ablehnt. Verwenden Sie es, um die Ablehnung in Ihrer Benutzeroberfläche zu rendern, während sie geschieht, anstatt nur das `is_error`-Tool-Ergebnis zu beobachten, das folgt. Welche Ablehnungen es meldet, hängt davon ab, wie der Lauf Berechtigungsabfragen handhabt:

2070 

2071* **Mit einem [`canUseTool`](#canusetool)-Callback** und dem Standard [`permissionPrompts: 'host'`](#options): Berechtigungsaufforderungen gehen an Ihren Callback, und dieses Ereignis meldet die Ablehnungen, die Claude Code auf eigene Faust entscheidet, ohne es aufzurufen.

2072*

2073 2040 

2074**Mit keinem**: ein bloßer `-p`-Lauf, oder `query()`, das weder `canUseTool` noch `permissionPromptToolName` setzt, lehnt jeden Tool-Aufruf ab, der aufgefordert hätte, und dieses Ereignis meldet diese Ablehnungen sowie die, die Claude Code auf eigene Faust entscheidet. Vor v2.1.223 gab Claude Code dieses Ereignis nicht in Läufen ohne Callback aus.2041* **Mit einem [`canUseTool`](#canusetool)-Callback** und dem Standard [`permissionPrompts: 'host'`](#options): Berechtigungsabfragen gehen an Ihren Callback, und dieses Ereignis meldet die Ablehnungen, die Claude Code auf eigene Faust entscheidet, ohne ihn aufzurufen.

2075 2042* **Mit keinem von beiden**: ein bloßer `-p`-Lauf, oder `query()`, das weder `canUseTool` noch `permissionPromptToolName` setzt, lehnt jeden Tool-Aufruf ab, der eine Berechtigungsabfrage ausgelöst hätte, und dieses Ereignis meldet diese Ablehnungen sowie die, die Claude Code auf eigene Faust entscheidet. Vor v2.1.223 gab Claude Code dieses Ereignis nicht in Läufen ohne Callback aus.

2076* **Mit einem MCP-Aufforderungs-Tool**, gesetzt mit `permissionPromptToolName` oder dem [`--permission-prompt-tool`](/docs/de/cli-reference#cli-flags)-Flag, und dem Standard `permissionPrompts: 'host'`: Claude Code gibt dieses Ereignis überhaupt nicht aus, nicht einmal für die Regel-Ablehnungen, die es auf eigene Faust entscheidet.2043* **Mit einem MCP-Tool für Berechtigungsabfragen**, gesetzt mit `permissionPromptToolName` oder dem [`--permission-prompt-tool`](/docs/de/cli-reference#cli-flags)-Flag, und dem Standard `permissionPrompts: 'host'`: Claude Code gibt dieses Ereignis überhaupt nicht aus, nicht einmal für die Regel-Ablehnungen, die es auf eigene Faust entscheidet.

2077*2044* **Mit [`permissionPrompts: 'none'`](#options)**: Claude Code lehnt die Aufrufe ab, die eine Berechtigungsabfrage ausgelöst hätten, auch wenn zusätzlich `canUseTool` oder ein MCP-Tool für Berechtigungsabfragen gesetzt ist, und dieses Ereignis meldet diese Ablehnungen sowie die, die Claude Code auf eigene Faust entscheidet. Erfordert Claude Code v2.1.259 oder später.

2078 

2079**Mit [`permissionPrompts: 'none'`](#options)**: Claude Code lehnt die Aufrufe ab, die aufgefordert hätten, auch wenn `canUseTool` oder ein MCP-Aufforderungs-Tool auch gesetzt ist, und dieses Ereignis meldet diese Ablehnungen sowie die, die Claude Code auf eigene Faust entscheidet. Erfordert Claude Code v2.1.259 oder später.

2080 2045 

2081In jeder Konfiguration überspringt dieses Ereignis jede Ablehnung, die auf dem `PreToolUse`-Hook-Pfad entschieden wurde, ob der Hook den Aufruf selbst ablehnte oder eine Deny-Regel die Allow- oder Ask-Entscheidung des Hooks überschrieb. Das Ereignis ist auch Best-Effort: Gelegentlich zeichnet Claude Code eine Ablehnung auf, ohne dieses Ereignis auszugeben, daher ist `permission_denials` auf der [Ergebnis-Nachricht](#sdkresultmessage) der maßgebliche Datensatz.2046In jeder Konfiguration überspringt dieses Ereignis jede Ablehnung, die auf dem `PreToolUse`-Hook-Pfad entschieden wurde, ob der Hook den Aufruf selbst ablehnte oder eine Deny-Regel die Allow- oder Ask-Entscheidung des Hooks überschrieb. Das Ereignis ist auch Best-Effort: Gelegentlich zeichnet Claude Code eine Ablehnung auf, ohne dieses Ereignis auszugeben, daher ist `permission_denials` auf der [Ergebnis-Nachricht](#sdkresultmessage) der maßgebliche Datensatz.

2082 2047 


2099| - | - | - |2064| - | - | - |

2100| `tool_name` | `string` | Name des Tools, das abgelehnt wurde |2065| `tool_name` | `string` | Name des Tools, das abgelehnt wurde |

2101| `tool_use_id` | `string` | ID des `tool_use`-Blocks, auf den diese Ablehnung antwortet |2066| `tool_use_id` | `string` | ID des `tool_use`-Blocks, auf den diese Ablehnung antwortet |

2102| `agent_id` | `string` | Subagent-ID, wenn der abgelehnte Aufruf innerhalb eines Subagenten stammt. Spiegelt das Feld auf `can_use_tool` für das Routing auf der Host-Seite |2067| `agent_id` | `string` | Subagenten-ID, wenn der abgelehnte Aufruf innerhalb eines Subagenten stammt. Spiegelt das Feld auf `can_use_tool` für das Routing auf der Host-Seite |

2103| `decision_reason_type` | `string` | Diskriminator für die Komponente, die entschieden hat, z. B. `"rule"`, `"mode"`, `"classifier"` oder `"asyncAgent"` |2068| `decision_reason_type` | `string` | Diskriminator für die Komponente, die entschieden hat, z. B. `"rule"`, `"mode"`, `"classifier"` oder `"asyncAgent"` |

2104| `decision_reason` | `string` | Menschenlesbarer Grund von der entscheidenden Komponente, wenn verfügbar |2069| `decision_reason` | `string` | Menschenlesbarer Grund von der entscheidenden Komponente, wenn verfügbar |

2105| `message` | `string` | Ablehnungsnachricht, die an das Modell im `tool_result` zurückgegeben wird |2070| `message` | `string` | Ablehnungsnachricht, die an das Modell im `tool_result` zurückgegeben wird |


2165| - | - | - |2130| - | - | - |

2166| `model` | `string` | Das Modell der Hauptschleife, für das Claude Code die Nutzung berechnet hat, nicht das eines Subagenten |2131| `model` | `string` | Das Modell der Hauptschleife, für das Claude Code die Nutzung berechnet hat, nicht das eines Subagenten |

2167| `total_tokens` | `number` | Claude Codes Schätzung der verwendeten Token. Nicht auf das Fenster begrenzt, daher kann es `raw_max_tokens` überschreiten, wenn die Sitzung über dem Limit ist |2132| `total_tokens` | `number` | Claude Codes Schätzung der verwendeten Token. Nicht auf das Fenster begrenzt, daher kann es `raw_max_tokens` überschreiten, wenn die Sitzung über dem Limit ist |

2168| `raw_max_tokens` | `number` | Das Kontext-Fenster des Modells, oder das niedrigere [Auto-Komprimierungs-Fenster](/docs/de/model-config#context-window-and-auto-compaction), wenn eines gilt, wie eines, das Sie setzen, oder die 200K-Grenze, die Claude Code auf einige Modelle mit einem 1M-Token-Fenster anwendet. Claude Code misst `total_tokens` gegen dieses Fenster |2133| `raw_max_tokens` | `number` | Das Kontextfenster des Modells, oder das niedrigere [Fenster für die automatische Komprimierung](/docs/de/model-config#context-window-and-auto-compaction), wenn eines gilt, wie eines, das Sie setzen, oder die 200K-Grenze, die Claude Code auf einige Modelle mit einem 1M-Token-Fenster anwendet. Claude Code misst `total_tokens` gegen dieses Fenster |

2169| `percentage` | `number` | `total_tokens` als gerundeter Prozentsatz von `raw_max_tokens`, daher kann es 100 überschreiten, wenn die Sitzung über dem Limit ist |2134| `percentage` | `number` | `total_tokens` als gerundeter Prozentsatz von `raw_max_tokens`, daher kann es 100 überschreiten, wenn die Sitzung über dem Limit ist |

2170| `over_limit` | `object` | Nur vorhanden, wenn `total_tokens` `raw_max_tokens` überschreitet. `tokens_over` ist der Betrag über, und `kind` sagt, wie Claude Code das Fenster aufgelöst hat |2135| `over_limit` | `object` | Nur vorhanden, wenn `total_tokens` `raw_max_tokens` überschreitet. `tokens_over` ist der Betrag der Überschreitung, und `kind` sagt, wie Claude Code das Fenster aufgelöst hat |

2171| `categories` | [`SDKContextUsageCategory`](#sdkcontextusagecategory)`[]` | Ein Eintrag pro Zeile der Nutzungs-nach-Kategorie-Aufschlüsselung |2136| `categories` | [`SDKContextUsageCategory`](#sdkcontextusagecategory)`[]` | Ein Eintrag pro Zeile der Nutzungs-nach-Kategorie-Aufschlüsselung |

2172| `mcp_tools` | `object[]` | Token, die jedem MCP-Tool zugeordnet sind, mit seinem Draht-Namen, wie `mcp__linear__create_issue`, und seinem `server_name` |2137| `mcp_tools` | `object[]` | Token, die jedem MCP-Tool zugeordnet sind, mit seinem Draht-Namen, wie `mcp__linear__create_issue`, und seinem `server_name` |

2173| `memory_files` | `object[]` | Token, die jeder geladenen Speicherdatei zugeordnet sind, mit ihrem `path` und einem Quellen-Label wie `Project` oder `User` in `type` |2138| `memory_files` | `object[]` | Token, die jeder geladenen Memory-Datei zugeordnet sind, mit ihrem `path` und einem Quellen-Label wie `Project` oder `User` in `type` |

2174| `agents` | `object[]` | Token, die jeder benutzerdefinierten Subagenten-Definition zugeordnet sind, mit einem Quellen-Identifikator wie `projectSettings`, `userSettings` oder `plugin`. Integrierte Subagenten sind nicht aufgelistet |2139| `agents` | `object[]` | Token, die jeder benutzerdefinierten Subagenten-Definition zugeordnet sind, mit einem Quellen-Identifikator wie `projectSettings`, `userSettings` oder `plugin`. Integrierte Subagenten sind nicht aufgelistet |

2175| `skills` | `object[]` | Token, die jedem Skill in der Skill-Auflistung zugeordnet sind, mit einem Quellen-Identifikator und, für Plugin-Skills, dem Namen des Plugins in `plugin_name`. Fehlt, wenn keine Skills Token beitragen |2140| `skills` | `object[]` | Token, die jedem Skill in der Skill-Auflistung zugeordnet sind, mit einem Quellen-Identifikator und, für Plugin-Skills, dem Namen des Plugins in `plugin_name`. Fehlt, wenn keine Skills Token beitragen |

2176 2141 

2177`over_limit.kind` zeichnet auf, wie Claude Code das Fenster aufgelöst hat, nicht ob die API die nächste Anfrage akzeptiert:2142`over_limit.kind` zeichnet auf, wie Claude Code das Fenster aufgelöst hat, nicht ob die API die nächste Anfrage akzeptiert:

2178 2143 

2179* `hard_limit`: Das Fenster ist das, was Claude Code für das eigene Limit des Modells hält, über das die API Anfragen ablehnt2144* `hard_limit`: Das Fenster ist das, was Claude Code für das eigene Limit des Modells hält, über das hinaus die API Anfragen ablehnt

2180* `compaction_window`: Das Fenster ist ein Komprimierungs-Richtlinien-Fenster, das möglicherweise mit dem Limit des Modells übereinstimmt oder nicht2145* `compaction_window`: Das Fenster ist ein Komprimierungs-Richtlinien-Fenster, das möglicherweise mit dem Limit des Modells übereinstimmt oder nicht

2181 2146 

2182Claude Code entwickelt den Typ additiv, indem es neue Daten als optionale Felder hinzufügt, anstatt bestehende umzugestalten. Lesen Sie die Felder, die Sie kennen, und ignorieren Sie alle, die Sie nicht erkennen.2147Claude Code entwickelt den Typ additiv, indem es neue Daten als optionale Felder hinzufügt, anstatt bestehende umzugestalten. Lesen Sie die Felder, die Sie kennen, und ignorieren Sie alle, die Sie nicht erkennen.


2199 2164 

2200| Feld | Typ | Beschreibung |2165| Feld | Typ | Beschreibung |

2201| - | - | - |2166| - | - | - |

2202| `name` | `string` | Der Anzeigename der Zeile, wie `/context` ihn druckt, z. B. `Messages`. Klassifizieren Sie Zeilen nach `kind`, nicht nach Name |2167| `name` | `string` | Der Anzeigename der Zeile, wie `/context` ihn ausgibt, z. B. `Messages`. Klassifizieren Sie Zeilen nach `kind`, nicht nach Name |

2203| `tokens` | `number` | Die Token-Anzahl der Zeile. Zeilen können null Token tragen |2168| `tokens` | `number` | Die Token-Anzahl der Zeile. Zeilen können null Token tragen |

2204| `kind` | `string` | Was die Zeile darstellt: `used`, `free`, `buffer` oder `deferred` |2169| `kind` | `string` | Was die Zeile darstellt: `used`, `free`, `buffer` oder `deferred` |

2205 2170 

2206Jeder `kind`-Wert sagt, was die Token der Zeile sind:2171Jeder `kind`-Wert sagt, was die Token der Zeile sind:

2207 2172 

2208* `used`: Inhalt, der das Kontext-Fenster besetzt2173* `used`: Inhalt, der das Kontextfenster belegt

2209* `free`: Das verbleibende Fenster2174* `free`: Das verbleibende Fenster

2210* `buffer`: Die Komprimierungs-Reserve2175* `buffer`: Die Komprimierungs-Reserve

2211* `deferred`: Tool-Schemas, die Claude Code aus dem Fenster hält und von der Nutzungsberechnung ausschließt, aufgelistet zur Kenntnis2176* `deferred`: Tool-Schemas, die Claude Code aus dem Fenster heraushält und von der Nutzungsberechnung ausschließt, aufgelistet zur Kenntnis

2212 2177 

2213<h3 id="sdkmessageorigin">2178<h3 id="sdkmessageorigin">

2214 `SDKMessageOrigin`2179 `SDKMessageOrigin`

2215</h3>2180</h3>

2216 2181 

2217Herkunft einer Benutzer-Rolle-Nachricht. Dies erscheint als `origin` auf [`SDKUserMessage`](#sdkusermessage) und wird auf die entsprechende [`SDKResultMessage`](#sdkresultmessage) weitergeleitet, damit Sie erkennen können, was einen bestimmten Turn ausgelöst hat.2182Herkunft einer Nachricht mit Benutzer-Rolle. Dies erscheint als `origin` auf [`SDKUserMessage`](#sdkusermessage) und wird auf die entsprechende [`SDKResultMessage`](#sdkresultmessage) weitergeleitet, damit Sie erkennen können, was einen bestimmten Turn ausgelöst hat.

2218 2183 

2219```typescript theme={null}2184```typescript theme={null}

2220type SDKMessageOrigin =2185type SDKMessageOrigin =


2242 2207 

2243| `kind` | Bedeutung |2208| `kind` | Bedeutung |

2244| - | - |2209| - | - |

2245| `human` | Direkte Eingabe vom Endbenutzer. Wenn Ihre Anwendung das, was der Benutzer eingegeben hat, als Benutzer-Nachricht weiterleitet, setzen Sie seine `origin` explizit auf `{ kind: "human" }`: Claude Code behandelt eine Benutzer-Nachricht ohne `origin` als nicht zugeordnet, und überprüft, die einen menschlich eingegebenen Prompt erfordern, wie das [`ultracode`-Workflow-Schlüsselwort](/docs/de/workflows#ask-for-a-workflow-in-your-prompt), akzeptieren es nicht. Vor v2.1.210 behandelte Claude Code ein fehlendes `origin` auf einer Benutzer-Nachricht als menschliche Eingabe. |2210| `human` | Direkte Eingabe vom Endbenutzer. Wenn Ihre Anwendung das, was der Benutzer eingegeben hat, als Benutzer-Nachricht weiterleitet, setzen Sie ihre `origin` explizit auf `{ kind: "human" }`: Claude Code behandelt eine Benutzer-Nachricht ohne `origin` als nicht zugeordnet, und Prüfungen, die einen von einem Menschen eingegebenen Prompt erfordern, wie das [`ultracode`-Workflow-Schlüsselwort](/docs/de/workflows#ask-for-a-workflow-in-your-prompt), akzeptieren sie nicht. Vor v2.1.210 behandelte Claude Code ein fehlendes `origin` auf einer Benutzer-Nachricht als menschliche Eingabe. |

2246| `channel` | Nachricht, die auf einem [Kanal](/docs/de/channels) ankommt. `server` ist der Name des Quell-MCP-Servers. |2211| `channel` | Nachricht, die auf einem [Channel](/docs/de/channels) ankommt. `server` ist der Name des Quell-MCP-Servers. |

2247| `peer` | Nachricht von einem anderen Agent: ein In-Process-[Teamkollege](/docs/de/agent-teams) oder ein [Cross-Session-Peer](/docs/de/cross-session-messaging), eine andere Ihrer Claude Code-Sitzungen. Siehe [Peer-Herkunftsfelder](#peer-origin-fields) für die Pro-Feld-Semantik und das Vertrauensmodell. |2212| `peer` | Nachricht von einem anderen Agenten: ein In-Process-[Teamkollege](/docs/de/agent-teams) oder ein [Cross-Session-Peer](/docs/de/cross-session-messaging), eine andere Ihrer Claude Code-Sitzungen. Siehe [Peer-Herkunftsfelder](#peer-origin-fields) für die Pro-Feld-Semantik und das Vertrauensmodell. |

2248| `task-notification` | Synthetischer Turn, der für eine Lieferung eingefügt wird, die ohne einen frischen Benutzer-Prompt ankommt, wie eine beendete Hintergrund-Aufgabe; siehe [`SDKTaskNotificationMessage`](#sdktasknotificationmessage) für diesen Arm. Das optionale `subkind` markiert, was die Benachrichtigung ausgelöst hat. Siehe [Task-Notification-Subkinds](#task-notification-subkinds). |2213| `task-notification` | Synthetischer Turn, der für eine Lieferung eingefügt wird, die ohne einen frischen Benutzer-Prompt ankommt, wie eine beendete Hintergrundaufgabe; siehe [`SDKTaskNotificationMessage`](#sdktasknotificationmessage) für diesen Arm. Ein Prompt, den Ihre Anwendung [als geplante Ausführung erklärt](#declare-a-scheduled-run), trägt diese Art ebenfalls. Das optionale `subkind` markiert, was die Benachrichtigung ausgelöst hat. Siehe [Task-Notification-Subkinds](#task-notification-subkinds). |

2249| `coordinator` | Nachricht von einem Team-Koordinator in einem [Agent-Team](/docs/de/agent-teams). |2214| `coordinator` | Nachricht von einem Team-Koordinator in einem [Agent-Team](/docs/de/agent-teams). |

2250| `auto-continuation` | Synthetischer Turn, der eingefügt wird, wenn die Sitzung ohne frische Benutzereingabe fortgesetzt wird, z. B. ein Befehlsergebnis, das eine Follow-up-Eingabeaufforderung auslöst. |2215| `auto-continuation` | Synthetischer Turn, der eingefügt wird, wenn die Sitzung ohne frische Benutzereingabe fortgesetzt wird, z. B. ein Befehlsergebnis, das einen Follow-up-Prompt auslöst. |

2251| `unclassified` | Eingefügter Turn, dessen Herkunft nicht bestimmt werden konnte. Erfordert Claude Code v2.1.223 oder später. Wenn Claude Code eine [`SDKUserMessage`](#sdkusermessage) mit `isSynthetic: true` empfängt und sie nicht als eine andere `kind` klassifizieren kann, setzt es diese Art, wenn die Nachricht ankommt, und rahmt den Turn zum Modell als eine Nicht-Benutzer-Quelle ein, anstatt ihn als menschliche Eingabe zu behandeln. Ihre Anwendung sollte diesen Wert nicht setzen. |2216| `unclassified` | Eingefügter Turn, dessen Herkunft nicht bestimmt werden konnte. Erfordert Claude Code v2.1.223 oder später. Wenn Claude Code eine [`SDKUserMessage`](#sdkusermessage) mit `isSynthetic: true` empfängt und sie nicht als eine andere `kind` klassifizieren kann, setzt es diese Art, wenn die Nachricht ankommt, und rahmt den Turn gegenüber dem Modell als Nicht-Benutzer-Quelle ein, anstatt ihn als menschliche Eingabe zu behandeln. Ihre Anwendung sollte diesen Wert nicht setzen. |

2252 2217 

2253<h3 id="task-notification-subkinds">2218<h3 id="task-notification-subkinds">

2254 Task-Notification-Subkinds2219 Task-Notification-Subkinds

2255</h3>2220</h3>

2256 2221 

2257Wenn Claude Code eine Task-Benachrichtigung in eine Sitzung liefert, setzt es `subkind` auf der Benachrichtigungs-`origin` nur, wenn Anthropic-Server verifizierten, woher diese Benachrichtigung kam. Es setzt auch `subkind`, wenn Ihre Anwendung [die Nachricht als geplante Ausführung erklärt](#declare-a-scheduled-run), was TypeScript Agent SDK v0.3.280 oder später erfordert. `subkind` erfordert Claude Code v2.1.213 oder später, und es nimmt einen von zwei Werten an:2222Wenn Claude Code eine Task-Benachrichtigung in eine Sitzung liefert, setzt es `subkind` auf der `origin` der Benachrichtigung, wenn Anthropic-Server verifiziert haben, woher diese Benachrichtigung kam. Es setzt `subkind` auch, wenn Ihre Anwendung [die Nachricht selbst als geplante Ausführung erklärt](#declare-a-scheduled-run), was TypeScript Agent SDK v0.3.280 oder später erfordert. `subkind` erfordert Claude Code v2.1.213 oder später, und es nimmt einen von zwei Werten an:

2258 2223 

2259* `scheduled-trigger`: Die Benachrichtigung ist ein [Routine](/docs/de/routines)-gespeicherter Prompt, geliefert, weil einer der Routine-Trigger ausgelöst wurde: sein Zeitplan, sein [API-Trigger](/docs/de/routines#add-an-api-trigger), sein [GitHub-Trigger](/docs/de/routines#add-a-github-trigger) oder **Jetzt ausführen**. Eine Eingabeaufforderung, die Ihre Anwendung [als geplante Ausführung erklärt](#declare-a-scheduled-run), trägt auch diesen Wert. Claude Code rahmt diese zum Modell als die zugewiesene Aufgabe der Sitzung ein, mit einer anderen Benachrichtigung als die [Benachrichtigung, die andere Task-Benachrichtigungen tragen](#sdktasknotificationmessage).2224* `scheduled-trigger`: Die Benachrichtigung ist der gespeicherte Prompt einer [Routine](/docs/de/routines), geliefert, weil einer der Trigger der Routine ausgelöst wurde: ihr Zeitplan, ihr [API-Trigger](/docs/de/routines#add-an-api-trigger), ihr [GitHub-Trigger](/docs/de/routines#add-a-github-trigger) oder **Run now**. Ein Prompt, den Ihre Anwendung [als geplante Ausführung erklärt](#declare-a-scheduled-run), trägt diesen Wert ebenfalls. Claude Code rahmt diese gegenüber dem Modell als die zugewiesene Aufgabe der Sitzung ein, mit einem anderen Hinweis als dem [Hinweis, den andere Task-Benachrichtigungen tragen](#sdktasknotificationmessage).

2260*2225* `peer-send-message`: Die Benachrichtigung ist eine Nachricht, die eine andere Ihrer Sitzungen mit dem Server-seitigen `send_message`-Tool gesendet hat, das [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) verwenden, um sich gegenseitig Nachrichten zu senden, nicht mit dem [Cross-Session-`SendMessage`-Tool](/docs/de/cross-session-messaging), und Anthropic-Server haben verifiziert, dass beide Sitzungen zur gleichen privaten Gruppe von Sitzungen gehören. Erfordert Claude Code v2.1.224 oder später. Eine `send_message`-Lieferung, die die Server nicht auf diese Weise verifiziert haben, bekommt keinen Subkind.

2261 2226 

2262`peer-send-message`: Die Benachrichtigung ist eine Nachricht, die eine andere Ihrer Sitzungen mit dem Server-seitigen `send_message`-Tool gesendet hat, das [Claude Code im Web](/docs/de/claude-code-on-the-web)-Sitzungen verwenden, um sich gegenseitig zu schreiben, nicht das [Cross-Session-`SendMessage`-Tool](/docs/de/cross-session-messaging), und Anthropic-Server verifizierten, dass beide Sitzungen zur gleichen privaten Gruppe von Sitzungen gehören. Erfordert Claude Code v2.1.224 oder später. Eine `send_message`-Lieferung, die die Server nicht auf diese Weise verifizierten, bekommt keinen subkind.2227Jede andere Task-Benachrichtigung hat keinen `subkind`. Das schließt [PR-Aktivität](/docs/de/claude-code-on-the-web#how-claude-responds-to-pr-activity), die in eine Sitzung geliefert wird, und Hintergrund-Ereignisse wie eine beendete Aufgabe ein. Nachrichten vom [Cross-Session-`SendMessage`-Tool](/docs/de/cross-session-messaging) sind überhaupt keine Task-Benachrichtigungen: Ob sie von einer Sitzung auf der gleichen Maschine oder über Anthropic-Server von einer anderen Maschine kommen, Claude Code gibt ihnen `kind: "peer"` und die [Peer-Herkunftsfelder](#peer-origin-fields).

2263 2228 

2264Jede andere Task-Benachrichtigung hat keinen `subkind`. Das schließt [geplante Aufgaben](/docs/de/scheduled-tasks) ein, die auf Ihrer eigenen Maschine ausgelöst werden, [PR-Aktivität](/docs/de/claude-code-on-the-web#how-claude-responds-to-pr-activity), die in eine Sitzung geliefert wird, und Hintergrund-Ereignisse wie eine beendete Aufgabe. Nachrichten vom [Cross-Session-`SendMessage`-Tool](/docs/de/cross-session-messaging) sind überhaupt keine Task-Benachrichtigungen: Ob sie von einer Sitzung auf der gleichen Maschine oder durch Anthropic-Server von einer anderen Maschine kommen, gibt Claude Code ihnen `kind: "peer"` und die [Peer-Herkunftsfelder](#peer-origin-fields).2229`fireReason` sagt, warum eine `scheduled-trigger`-Benachrichtigung ausgelöst wurde, als kurzes Kleinbuchstaben-Token wie `scheduled`, `manual`, `retry`, `catch_up` oder `api`. Anthropic-Server setzen es auf die Lieferungen einer [Routine](/docs/de/routines), und Ihre Anwendung setzt es, wenn sie eine geplante Ausführung erklärt. Es fehlt, wenn keiner von beiden einen gesendet hat. Erfordert TypeScript Agent SDK v0.3.280 oder später.

2265 

2266`fireReason` sagt, warum eine `scheduled-trigger`-Benachrichtigung ausgelöst wurde, als ein kurzes Kleinbuchstaben-Token wie `scheduled`, `manual`, `retry`, `catch_up` oder `api`. Anthropic-Server setzen es auf die Lieferungen einer [Routine](/docs/de/routines), und Ihre Anwendung setzt es, wenn sie eine geplante Ausführung erklärt. Es fehlt, wenn keiner einen gesendet hat. Erfordert TypeScript Agent SDK v0.3.280 oder später.

2267 2230 

2268<h4 id="declare-a-scheduled-run">2231<h4 id="declare-a-scheduled-run">

2269 Geplante Ausführung erklären2232 Geplante Ausführung erklären

2270</h4>2233</h4>

2271 2234 

2272Wenn Ihre Anwendung Eingabeaufforderungen nach ihrem eigenen Zeitplan ausführt, erklären Sie jede Ausführung, damit Claude Code den Turn zum Modell als geplante Aufgabe rahmt, anstatt als Live-Eingabe vom Benutzer. Starten Sie die Sitzung mit `CLAUDE_CODE_HOST_SCHEDULED_RUN` auf `1` in [`env`](#options), dann senden Sie die [`SDKUserMessage`](#sdkusermessage) der Ausführung mit `origin: { kind: "task-notification", subkind: "scheduled-trigger", fireReason: "scheduled" }` und ohne `isSynthetic`. Claude Code ignoriert die Erklärung in einem Prozess, der ohne diese Variable gestartet wurde. Es ignoriert sie auch in einem Prozess, dessen Umgebung [`CLAUDECODE`](/docs/de/env-vars) oder `CLAUDE_CODE_CHILD_SESSION` trägt. Claude Code behält `fireReason` nur, wenn der Wert 1 bis 32 Kleinbuchstaben oder Unterstriche ist. Erfordert TypeScript Agent SDK v0.3.280 oder später.2235Wenn Ihre Anwendung Prompts nach ihrem eigenen Zeitplan ausführt, erklären Sie jede Ausführung, damit Claude Code den Turn gegenüber dem Modell als geplante Aufgabe einrahmt, anstatt als Live-Eingabe vom Benutzer. Starten Sie die Sitzung mit `CLAUDE_CODE_HOST_SCHEDULED_RUN` auf `1` in [`env`](#options), dann senden Sie die [`SDKUserMessage`](#sdkusermessage) der Ausführung mit `origin: { kind: "task-notification", subkind: "scheduled-trigger", fireReason: "scheduled" }` und ohne `isSynthetic`. Claude Code ignoriert die Erklärung in einem Prozess, der ohne diese Variable gestartet wurde. Es ignoriert sie auch in einem Prozess, dessen Umgebung [`CLAUDECODE`](/docs/de/env-vars) oder `CLAUDE_CODE_CHILD_SESSION` trägt. Claude Code behält `fireReason` nur, wenn der Wert aus 1 bis 32 Kleinbuchstaben oder Unterstrichen besteht. Erfordert TypeScript Agent SDK v0.3.280 oder später.

2273 2236 

2274<h3 id="peer-origin-fields">2237<h3 id="peer-origin-fields">

2275 Peer-Herkunftsfelder2238 Peer-Herkunftsfelder

2276</h3>2239</h3>

2277 2240 

2278Eine `peer`-Herkunft identifiziert, welcher Agent die Nachricht gesendet hat: ein In-Process-[Teamkollege](/docs/de/agent-teams), der an `main` mit `SendMessage` sendet, oder ein [Cross-Session-Peer](/docs/de/cross-session-messaging), eine andere Ihrer Claude Code-Sitzungen. Cross-Session-Peers erfordern Claude Code v2.1.224 oder später auf macOS und Linux; siehe [Cross-Session-Messaging-Verfügbarkeit](/docs/de/cross-session-messaging#availability) für die native Windows-Anforderung. Ein Cross-Session-Peer kann auf der gleichen Maschine laufen, oder auf [einer anderen Ihrer Maschinen](/docs/de/cross-session-messaging#message-sessions-on-other-machines) oder [Claude Code im Web](/docs/de/claude-code-on-the-web), wenn seine Nachricht durch Remote Control ankommt. Die zwei Arten von Sendern füllen die Felder unterschiedlich:2241Eine `peer`-Herkunft identifiziert, welcher Agent die Nachricht gesendet hat: ein In-Process-[Teamkollege](/docs/de/agent-teams), der mit `SendMessage` an `main` sendet, oder ein [Cross-Session-Peer](/docs/de/cross-session-messaging), eine andere Ihrer Claude Code-Sitzungen. Cross-Session-Peers erfordern Claude Code v2.1.224 oder später auf macOS und Linux; siehe [Cross-Session-Messaging-Verfügbarkeit](/docs/de/cross-session-messaging#availability) für die Anforderung unter nativem Windows. Ein Cross-Session-Peer kann auf der gleichen Maschine laufen, oder auf [einer anderen Ihrer Maschinen](/docs/de/cross-session-messaging#message-sessions-on-other-machines) oder [in der Cloud](/docs/de/claude-code-on-the-web), wenn seine Nachricht über Remote Control ankommt. Die zwei Arten von Sendern füllen die Felder unterschiedlich:

2279 2242 

2280* `from`: Der Name des Teamkollegen, oder die Absenderadresse für einen Cross-Session-Peer. Für eine [Einweg-Cross-Machine-Nachricht](/docs/de/cross-session-messaging#message-sessions-on-other-machines) hat der Sender keine Antwortadresse und `from` ist `"unknown"`. Der Wert ist vom Sender verfasst; `verifiedPeerPid` ist die verifizierte Identität.2243* `from`: Der Name des Teamkollegen, oder die Absenderadresse für einen Cross-Session-Peer. Für eine [Einweg-Cross-Machine-Nachricht](/docs/de/cross-session-messaging#message-sessions-on-other-machines) hat der Sender keine Antwortadresse und `from` ist `"unknown"`. Der Wert ist vom Sender verfasst; `verifiedPeerPid` ist die verifizierte Identität.

2281*2244* `fromMode`: Die Berechtigungsklasse der sendenden Sitzung, `bypass` oder `prompting`, deklariert von einem Host, der eine Peer-Nachricht zwischen Ihren Sitzungen weiterleitet, wie die [Desktop-App](/docs/de/desktop#work-across-sessions). Claude Code liest es in der empfangenden Sitzung, wenn es die [Inbound-Steuerungen](/docs/de/cross-session-messaging#control-inbound-messages) anwendet. Erfordert Agent SDK v0.3.234 oder später.

2282 

2283`fromMode`: Die Berechtigungsklasse der sendenden Sitzung, `bypass` oder `prompting`, erklärt von einem Host, der eine Peer-Nachricht zwischen Ihren Sitzungen weitergeleitet, wie die [Desktop-App](/docs/de/desktop#work-across-sessions). Claude Code liest es in der empfangenden Sitzung, wenn es die [Inbound-Steuerungen](/docs/de/cross-session-messaging#control-inbound-messages) anwendet. Erfordert Agent SDK v0.3.234 oder später.

2284 

2285* `senderTaskId`: Die Task-ID des Teamkollegen. Fehlt für einen Cross-Session-Peer.2245* `senderTaskId`: Die Task-ID des Teamkollegen. Fehlt für einen Cross-Session-Peer.

2286*2246* `name`: Der Anzeigename des Absenders, normalisiert von Claude Code: Es entfernt Unicode-Steuer-, Format-, Surrogate- und Zeilen- oder Absatz-Trennzeichen-Codepunkte, kürzt dann das Ergebnis und begrenzt es auf 64 Codepunkte mit einer Ellipse. Erfordert Claude Code v2.1.205 oder später.

2287 2247* `body`: Der dekodierte Nachrichtentext mit entfernter Peer-Hülle, byte-genau mit dem, was das Modell sieht. Immer vorhanden für eine Teamkollegen-Nachricht; für einen Cross-Session-Peer nur vorhanden, wenn der Turn genau eine von Claude Code gebildete Peer-Hülle ist. Rendern Sie `name` und `body`, anstatt den Nachrichtentext erneut zu analysieren. Erfordert Claude Code v2.1.205 oder später.

2288`name`: Der Anzeigename des Absenders, normalisiert von Claude Code: Es entfernt Unicode-Steuer-, Format-, Surrogate- und Zeilen- oder Absatz-Trennzeichen-Codepunkte, schneidet dann das Ergebnis ab und begrenzt es auf 64 Codepunkte mit einer Ellipse. Erfordert Claude Code v2.1.205 oder später.2248* `fromSession`: Die vom Host öffenbare Sitzungs-ID des Absenders, gesetzt vom Host des Absenders, damit Ihre Benutzeroberfläche zurück zur sendenden Sitzung verlinken kann. Wie `from` ist es vom Sender behauptet: Verwenden Sie es nur als Navigationsziel, und behandeln Sie es nicht als Beweis der Identität des Absenders. Erfordert Claude Code v2.1.216 oder später.

2289 2249* `verifiedPeerPid`: Die Prozess-ID des Prozesses, der sich mit dem Cross-Session-Messaging-Socket dieser Sitzung verbunden hat, verifiziert vom Kernel und aus der Verbindung selbst gelesen, niemals aus der Payload. Verwenden Sie es, nicht `from`, um den Absender zu identifizieren: `from` ist von jedem Prozess desselben Benutzers fälschbar. Das Feld fehlt, wenn Claude Code es nicht verifizieren kann, etwa unter Windows oder bei Nicht-Socket-Eingang, daher bedeutet ein fehlender Wert, dass der Absender nicht verifiziert ist. Für weitergeleiteten Traffic identifiziert es das Relay anstelle des Autors der Nachricht, und Prozess-IDs sind wiederverwendbar, daher behandeln Sie es als Herkunftsangabe und nicht als Authentifizierungs-Token. Erfordert Claude Code v2.1.216 oder später.

2290*

2291 

2292`body`: Der dekodierte Nachrichtentext mit der Peer-Hülle entfernt, byte-genau mit dem, was das Modell sieht. Immer vorhanden für eine Teamkollegen-Nachricht; für einen Cross-Session-Peer, nur vorhanden, wenn der Turn genau eine von Claude Code gebildete Peer-Hülle ist. Rendern Sie `name` und `body` anstatt die Nachricht erneut zu analysieren. Erfordert Claude Code v2.1.205 oder später.

2293 

2294*

2295 

2296`fromSession`: Die Host-öffnbare Session-ID des Absenders, gesetzt vom Host des Absenders, damit Ihre Benutzeroberfläche zurück zur sendenden Sitzung verlinken kann. Wie `from` ist es vom Sender behauptet: Verwenden Sie es nur als Navigationsziel, und behandeln Sie es nicht als Beweis der Identität des Absenders. Erfordert Claude Code v2.1.216 oder später.

2297 

2298*

2299 

2300`verifiedPeerPid`: Die Prozess-ID des Prozesses, der sich mit dem Cross-Session-Messaging-Socket dieser Sitzung verbunden hat, verifiziert vom Kernel und aus der Verbindung selbst gelesen, niemals aus der Nutzlast. Verwenden Sie es, nicht `from`, um den Absender zu identifizieren: `from` ist von jedem gleichen Benutzer-Prozess fälschbar. Das Feld fehlt, wenn Claude Code es nicht verifizieren kann, wie auf Windows oder Nicht-Socket-Eingang, daher bedeutet ein fehlendes Wert, dass der Absender nicht verifiziert ist. Für weitergeleitet Traffic identifiziert es das Relay anstelle des Autors der Nachricht, und Prozess-IDs sind wiederverwendbar, daher behandeln Sie es als Herkunft anstelle eines Authentifizierungs-Tokens. Erfordert Claude Code v2.1.216 oder später.

2301 2250 

2302<h2 id="hook-types">2251<h2 id="hook-types">

2303 Hook-Typen2252 Hook-Typen


5141```5090```

5142 5091 

5143<Warning>5092<Warning>

5144 Das `context-1m-2025-08-07`-Beta ist ab dem 30. April 2026 veraltet. Das Übergeben dieses Wertes mit Claude Sonnet 4.5 oder Sonnet 4 hat keine Auswirkung, und Anfragen, die das Standard-200k-Token-Kontextfenster überschreiten, geben einen Fehler zurück. Um ein 1M-Token-Kontextfenster zu verwenden, migrieren Sie zu [Claude Opus 5.5, Claude Opus 5, Claude Sonnet 5, Claude Sonnet 4.6, Claude Opus 4.6, Claude Opus 4.7 oder Claude Opus 4.8](https://platform.claude.com/docs/en/about-claude/models/overview), die 1M-Kontext zu Standardpreisen ohne Beta-Header enthalten.5093 In der Claude API ist die Beta `context-1m-2025-08-07` für Claude Sonnet 4.5 und Claude Sonnet 4 nicht mehr verfügbar. Wenn Sie sie weiterhin mit einem dieser Modelle übergeben, geben Anfragen, die das Standard-Kontextfenster von 200K Token überschreiten, einen Fehler zurück; entfernen Sie sie daher aus `betas`. Um eine Sitzung mit einem Kontextfenster von 1M Token auszuführen, setzen Sie `model` auf ein Modell, das [standardmäßig mit dem 1M-Fenster läuft](/docs/de/model-config#extended-context), z. B. `claude-sonnet-5-5` oder `claude-opus-5-5`. Bei einem Modell, das 1M nur über seine `[1m]`-Variante erreicht, hängen Sie das Suffix an die Modell-ID an, wie in `claude-opus-4-6[1m]`.

5145</Warning>5094</Warning>

5146 5095 

5147<h3 id="slashcommand">5096<h3 id="slashcommand">


5185| Feld | Typ | Beschreibung |5134| Feld | Typ | Beschreibung |

5186| :- | :- | :- |5135| :- | :- | :- |

5187| `value` | `string` | Modell-Identifikator, der in API-Aufrufen übergeben werden soll |5136| `value` | `string` | Modell-Identifikator, der in API-Aufrufen übergeben werden soll |

5188| `resolvedModel` | `string \| undefined` | Kanonische Wire-Modell-ID, in die sich der `value` dieses Eintrags auflöst. Ein Alias-Eintrag wie `sonnet` wird in eine explizite Modell-ID wie `claude-sonnet-5` aufgelöst, sodass ein Host eine gespeicherte explizite Modell-ID mit dem Alias-Eintrag abgleichen kann, der sie abdeckt. Erfordert Claude Code v2.1.197 oder später. |5137| `resolvedModel` | `string \| undefined` | Die Modell-ID, in die sich der `value` dieses Eintrags auflöst, z. B. `claude-sonnet-5-5` für den Alias-Eintrag `sonnet`. Erfordert Claude Code v2.1.197 oder später. |

5189| `displayName` | `string` | Benutzerfreundlicher Anzeigename |5138| `displayName` | `string` | Benutzerfreundlicher Anzeigename |

5190| `description` | `string` | Beschreibung der Modell-Fähigkeiten |5139| `description` | `string` | Beschreibung der Modell-Fähigkeiten |

5191| `supportsEffort` | `boolean \| undefined` | Ob dieses Modell Anstrengungsstufen unterstützt |5140| `supportsEffort` | `boolean \| undefined` | Ob dieses Modell Effort-Stufen unterstützt |

5192| `supportedEffortLevels` | `("low" \| "medium" \| "high" \| "xhigh" \| "max")[] \| undefined` | Anstrengungsstufen, die dieses Modell akzeptiert |5141| `supportedEffortLevels` | `("low" \| "medium" \| "high" \| "xhigh" \| "max")[] \| undefined` | Effort-Stufen, die dieses Modell akzeptiert |

5193| `supportsAdaptiveThinking` | `boolean \| undefined` | Ob dieses Modell adaptives Denken unterstützt, bei dem Claude entscheidet, wann und wie viel zu denken ist |5142| `supportsAdaptiveThinking` | `boolean \| undefined` | Ob dieses Modell Adaptive Thinking unterstützt, bei dem Claude entscheidet, wann und wie viel nachgedacht wird |

5194| `supportsFastMode` | `boolean \| undefined` | Ob dieses Modell den Schnellmodus unterstützt |5143| `supportsFastMode` | `boolean \| undefined` | Ob dieses Modell den Fast-Modus unterstützt |

5195| `supportsAutoMode` | `boolean \| undefined` | Ob dieses Modell den Auto-Modus unterstützt |5144| `supportsAutoMode` | `boolean \| undefined` | Ob dieses Modell den Auto-Modus unterstützt |

5196 5145 

5197<h3 id="agentinfo">5146<h3 id="agentinfo">


5230| Feld | Typ | Beschreibung |5179| Feld | Typ | Beschreibung |

5231| :- | :- | :- |5180| :- | :- | :- |

5232| `name` | `string` | Der Name, unter dem der Server registriert ist, der gleiche Wert, den [`mcpServerStatus()`](#query-object) für ihn meldet |5181| `name` | `string` | Der Name, unter dem der Server registriert ist, der gleiche Wert, den [`mcpServerStatus()`](#query-object) für ihn meldet |

5233| `source` | `string` | Woher die Definition des Servers kam: `sdk`, `plugin` oder ein Konfigurationsbereich |5182| `source` | `string` | Woher die Definition des Servers kam: `sdk`, `plugin` oder ein Konfigurations-Geltungsbereich |

5234 5183 

5235`source` nimmt einen der folgenden Werte an. Die Menge ist offen, daher behandeln Sie einen Wert, den Sie nicht erkennen, als konfigurierte Quelle, niemals als `sdk`:5184`source` nimmt einen der folgenden Werte an. Die Menge ist offen, daher behandeln Sie einen Wert, den Sie nicht erkennen, als konfigurierte Quelle, niemals als `sdk`:

5236 5185 

5237* **`sdk`**: ein In-Process-Server, den Ihre Anwendung registriert hat. Nur die SDK-Host-Anwendung kann einen registrieren, daher meldet ein konfigurierter Server niemals `sdk`, unabhängig von seinem Namen.5186* **`sdk`**: ein In-Process-Server, den Ihre Anwendung registriert hat. Nur die SDK-Host-Anwendung kann einen registrieren, daher meldet ein konfigurierter Server niemals `sdk`, unabhängig von seinem Namen.

5238* **`plugin`**: ein Server, den ein [Plugin](/docs/de/agent-sdk/plugins) bereitstellt. Sein `name` ist die scoped `plugin:<plugin-name>:<server-name>`-Form, die unter [Plugin-bereitgestellte MCP-Server](/docs/de/mcp#plugin-provided-mcp-servers) beschrieben wird.5187* **`plugin`**: ein Server, den ein [Plugin](/docs/de/agent-sdk/plugins) bereitstellt. Sein `name` ist die scoped `plugin:<plugin-name>:<server-name>`-Form, die unter [Plugin-bereitgestellte MCP-Server](/docs/de/mcp#plugin-provided-mcp-servers) beschrieben wird.

5239* **Ein Konfigurationsbereich**: `user`, `project`, `local`, `dynamic`, `managed`, `enterprise`, `claudeai` oder `agent`. Ein `.mcp.json`-Server meldet `project`, und [MCP-Installationsbereiche](/docs/de/mcp#mcp-installation-scopes) definiert `local`, `project` und `user`. Server, die Ihre Anwendung in der [`mcpServers`-Option](#options) übergibt, außer In-Process-SDK-Servern, melden `dynamic`.5188* **Ein Konfigurations-Geltungsbereich**: `user`, `project`, `local`, `dynamic`, `managed`, `enterprise`, `claudeai` oder `agent`. Ein `.mcp.json`-Server meldet `project`, und [Geltungsbereiche der MCP-Installation](/docs/de/mcp#mcp-installation-scopes) definiert `local`, `project` und `user`. Server, die Ihre Anwendung in der [`mcpServers`-Option](#options) übergibt, außer In-Process-SDK-Servern, melden `dynamic`.

5240 5189 

5241Basieren Sie Vertrauensentscheidungen auf `source`, nicht auf `name` oder dem `mcp__<server>__`-Tool-Namen-Präfix. Für jede Quelle außer `sdk` ist `name` nicht vertrauenswürdiger Text: maskieren Sie ihn vor der Anzeige.5190Basieren Sie Vertrauensentscheidungen auf `source`, nicht auf `name` oder dem `mcp__<server>__`-Tool-Namen-Präfix. Für jede Quelle außer `sdk` ist `name` nicht vertrauenswürdiger Text: maskieren Sie ihn vor der Anzeige.

5242 5191 


5314 `ModelUsage`5263 `ModelUsage`

5315</h3>5264</h3>

5316 5265 

5317Pro-Modell-Nutzungsstatistiken, die in Ergebnis-Nachrichten zurückgegeben werden. Der `costUSD`-Wert ist eine clientseitige Schätzung. Siehe [Kosten und Nutzung verfolgen](/docs/de/agent-sdk/cost-tracking) für Abrechnungsvorbehalt.5266Pro-Modell-Nutzungsstatistiken, die in Ergebnis-Nachrichten zurückgegeben werden. Der `costUSD`-Wert ist eine clientseitige Schätzung. Siehe [Kosten und Nutzung verfolgen](/docs/de/agent-sdk/cost-tracking) für Abrechnungsvorbehalte.

5318 5267 

5319```typescript theme={null}5268```typescript theme={null}

5320type ModelUsage = {5269type ModelUsage = {


5333};5282};

5334```5283```

5335 5284 

5336`thinkingTokens` zählt die Denk-Token, die dieses Modell generiert hat. `outputTokens` enthält sie bereits, daher addieren Sie die beiden nicht zusammen. Das Feld fehlt, bis ein Turn auf einer Claude-Code-Version läuft, die es aufzeichnet, daher meldet eine fortgesetzte Sitzung, die auf einer früheren Version begann, eine teilweise Anzahl. `thinkingTokens` erfordert Agent SDK v0.3.257 oder später.5285`thinkingTokens` zählt die Thinking-Token, die dieses Modell generiert hat. `outputTokens` enthält sie bereits, daher addieren Sie die beiden nicht zusammen. Das Feld fehlt, bis ein Turn auf einer Claude-Code-Version läuft, die es aufzeichnet, daher meldet eine fortgesetzte Sitzung, die auf einer früheren Version begann, eine teilweise Anzahl. `thinkingTokens` erfordert Agent SDK v0.3.257 oder später.

5337 5286 

5338Die Felder `canonicalModel` und `provider` erfordern Claude Code v2.1.218 oder später. `canonicalModel` ist die kanonische Modell-ID, die die Preissuche verwendet; sie kann sich von der rohen Modell-Zeichenkette unterscheiden, die den Eintrag indiziert, z. B. wenn diese Zeichenkette eine anbieter-spezifische ID oder ein Alias ist.5287Die Felder `canonicalModel` und `provider` erfordern Claude Code v2.1.218 oder später. `canonicalModel` ist die kanonische Modell-ID, die die Preissuche verwendet; sie kann sich von der rohen Modell-Zeichenkette unterscheiden, die den Eintrag indiziert, z. B. wenn diese Zeichenkette eine anbieter-spezifische ID oder ein Alias ist.

5339 5288 

5340`provider` benennt das API-Backend, das das Modell bereitgestellt hat, z. B. `firstParty`, `bedrock`, `vertex`, `foundry`, `anthropicAws`, `mantle` oder `gateway`.5289`provider` benennt das API-Backend, das das Modell bereitgestellt hat, z. B. `firstParty`, `bedrock`, `vertex`, `foundry`, `anthropicAws`, `mantle` oder `gateway`.

5341 5290 

5342`costBasis` benennt die Preistabelle, die das Modell der letzten Anfrage bepreist hat: `list` für Listenpreis, `managed` für eine [`modelPricing`](/docs/de/settings-reference#modelpricing)-Tabelle, oder `unknown`, wenn keine die Modell-ID abglich. Das Feld erfordert Claude Code v2.1.246 oder später.5291`costBasis` benennt die Preistabelle, die die letzte Anfrage des Modells bepreist hat: `list` für Listenpreis, `managed` für eine [`modelPricing`](/docs/de/settings-reference#modelpricing)-Tabelle, oder `unknown`, wenn keine zur Modell-ID passte. Das Feld erfordert Claude Code v2.1.246 oder später.

5343 5292 

5344<h3 id="configscope">5293<h3 id="configscope">

5345 `ConfigScope`5294 `ConfigScope`


5388 5337 

5389`BetaServerToolUsage`, `BetaIterationsUsage` und `BetaOutputTokensDetails` sind in `@anthropic-ai/sdk` definiert.5338`BetaServerToolUsage`, `BetaIterationsUsage` und `BetaOutputTokensDetails` sind in `@anthropic-ai/sdk` definiert.

5390 5339 

5391`output_tokens_details` unterteilt die abgerechnete Ausgabe nach Kategorie. Sie trägt derzeit ein Feld, `thinking_tokens: number`, das die Ausgabe-Token zählt, die das Modell als interne Überlegung generiert hat, einschließlich der Denk-Block-Trennzeichen. Das Feld `output_tokens_details` erfordert TypeScript SDK v0.3.228 oder später, das Claude Code v2.1.228 bündelt.5340`output_tokens_details` unterteilt die abgerechnete Ausgabe nach Kategorie. Sie trägt derzeit ein Feld, `thinking_tokens: number`, das die Ausgabe-Token zählt, die das Modell als interne Überlegung generiert hat, einschließlich der Trennzeichen der Thinking-Blöcke. Das Feld `output_tokens_details` erfordert TypeScript SDK v0.3.228 oder später, das Claude Code v2.1.228 bündelt.

5392 5341 

5393* **Abrechnung**: Lesen Sie die Aufschlüsselung zur Beobachtung, nicht zur Abrechnung. `output_tokens` bleibt die autoritative Summe, und `output_tokens - thinking_tokens` approximiert die Nicht-Reasoning-Ausgabe.5342* **Abrechnung**: Lesen Sie die Aufschlüsselung zur Beobachtung, nicht zur Abrechnung. `output_tokens` bleibt die autoritative Summe, und `output_tokens - thinking_tokens` approximiert die Nicht-Reasoning-Ausgabe.

5394* **Was die Anzahl abdeckt**: das rohe Reasoning, das das Modell produziert hat, das länger sein kann als der Denk-Text, der im Antwortkörper zurückgegeben wird. Die API berechnet es durch erneutes Tokenisieren dieses rohen Textes, daher kann es sich um einige Token von der genauen Generierungsanzahl des Modells unterscheiden.5343* **Was die Anzahl abdeckt**: das rohe Reasoning, das das Modell produziert hat, das länger sein kann als der Thinking-Text, der im Response-Body zurückgegeben wird. Die API berechnet es durch erneutes Tokenisieren dieses rohen Textes, daher kann es sich um einige Token von der genauen Generierungsanzahl des Modells unterscheiden.

5395* **Streaming**: Bei gestreamten Assistenten-Nachrichten ist diese Aufschlüsselung wie `output_tokens` ein `message_start`-Platzhalter und trägt keine echte Anzahl, daher lesen Sie sie aus der Ergebnis-Nachricht `usage`, wie [Ausgabe-Token aus der Ergebnis-Nachricht lesen](/docs/de/agent-sdk/cost-tracking#read-output-tokens-from-the-result-message) beschreibt. In der Ergebnis-Nachricht liest `thinking_tokens` `0`, wenn das Modell oder der Provider keine Aufschlüsselung meldet.5344* **Streaming**: Bei gestreamten Assistenten-Nachrichten ist diese Aufschlüsselung wie `output_tokens` ein `message_start`-Platzhalter und trägt keine echte Anzahl, daher lesen Sie sie aus der Ergebnis-Nachricht `usage`, wie [Ausgabe-Token aus der Ergebnis-Nachricht lesen](/docs/de/agent-sdk/cost-tracking#read-output-tokens-from-the-result-message) beschreibt. In der Ergebnis-Nachricht liest `thinking_tokens` `0`, wenn das Modell oder der Provider keine Aufschlüsselung meldet.

5396* **`null`-Fälle**: `output_tokens_details` selbst ist `null` bei Assistenten-Nachrichten, die Claude Code synthetisiert, z. B. API-Fehler-Nachrichten.5345* **`null`-Fälle**: `output_tokens_details` selbst ist `null` bei Assistenten-Nachrichten, die Claude Code synthetisiert, z. B. API-Fehler-Nachrichten.

5397 5346 


5446 `ThinkingConfig`5395 `ThinkingConfig`

5447</h3>5396</h3>

5448 5397 

5449Steuert das Denk-/Reasoning-Verhalten von Claude. Hat Vorrang vor dem veralteten `maxThinkingTokens`.5398Steuert das Thinking-/Reasoning-Verhalten von Claude. Hat Vorrang vor dem veralteten `maxThinkingTokens`.

5450 5399 

5451```typescript theme={null}5400```typescript theme={null}

5452type ThinkingDisplay = "summarized" | "omitted";5401type ThinkingDisplay = "summarized" | "omitted";

5453 5402 

5454type ThinkingConfig =5403type ThinkingConfig =

5455 | { type: "adaptive"; display?: ThinkingDisplay } // Das Modell bestimmt, wann und wie viel zu denken ist (Opus 4.6+)5404 | { type: "adaptive"; display?: ThinkingDisplay } // Das Modell bestimmt, wann und wie viel nachgedacht wird (Opus 4.6+)

5456 | { type: "enabled"; budgetTokens?: number; display?: ThinkingDisplay } // Festes Denk-Token-Budget5405 | { type: "enabled"; budgetTokens?: number; display?: ThinkingDisplay } // Festes Thinking-Token-Budget

5457 | { type: "disabled" }; // Kein erweitertes Denken5406 | { type: "disabled" }; // Kein Extended Thinking

5458```5407```

5459 5408 

5460Das optionale `display`-Feld steuert, ob Denk-Text `"summarized"` oder `"omitted"` zurückgegeben wird. Bei Claude Opus 4.7 und später ist der API-Standard `"omitted"`, daher setzen Sie `"summarized"`, um Denk-Inhalte in `thinking`-Blöcken zu erhalten. Claude Code sendet `display` nicht an Amazon Bedrock oder Google Cloud's Agent Platform, daher geben Opus 4.7 und später auf diesen Anbietern leere `thinking`-Blöcke zurück, auch wenn Sie `display` auf `"summarized"` setzen.5409Das optionale `display`-Feld steuert, ob Thinking-Text `"summarized"` oder `"omitted"` zurückgegeben wird. Bei Claude Opus 4.7 und später ist der API-Standard `"omitted"`, daher setzen Sie `"summarized"`, um Thinking-Inhalte in `thinking`-Blöcken zu erhalten. Claude Code sendet `display` nicht an Amazon Bedrock oder Google Cloud's Agent Platform, daher geben Opus 4.7 und später auf diesen Anbietern leere `thinking`-Blöcke zurück, auch wenn Sie `display` auf `"summarized"` setzen.

5461 5410 

5462<h3 id="spawnedprocess">5411<h3 id="spawnedprocess">

5463 `SpawnedProcess`5412 `SpawnedProcess`


5576 `SDKTaskNotificationMessage`5525 `SDKTaskNotificationMessage`

5577</h3>5526</h3>

5578 5527 

5579Benachrichtigung, wenn eine Hintergrund-Aufgabe abgeschlossen, fehlgeschlagen oder gestoppt wird. Hintergrund-Aufgaben umfassen `run_in_background` Bash-Befehle, [Monitor](#monitor)-Watches und Hintergrund-Subagenten. Für das `ambient`-Feld siehe [`SDKTaskStartedMessage`](#sdktaskstartedmessage), das es definiert und seine Versionsanforderung.5528Benachrichtigung, wenn eine Hintergrundaufgabe abgeschlossen, fehlgeschlagen oder gestoppt wird. Hintergrundaufgaben umfassen `run_in_background` Bash-Befehle, [Monitor](#monitor)-Watches und Hintergrund-Subagenten. Für das `ambient`-Feld siehe [`SDKTaskStartedMessage`](#sdktaskstartedmessage), das es und seine Versionsanforderung definiert.

5580 5529 

5581```typescript theme={null}5530```typescript theme={null}

5582type SDKTaskNotificationMessage = {5531type SDKTaskNotificationMessage = {


5716 5665 

5717Während ein Tool-Aufruf in der Hauptkonversation läuft, gibt Claude Code alle 30 Sekunden eine `tool_progress`-Nachricht mit `heartbeat: true` aus. Jeder Heartbeat trägt den Tool-Namen und verstrichene Sekunden, daher können Sie einen lang laufenden Aufruf von einer steckengebliebenen Sitzung unterscheiden. Claude Code gibt keine Heartbeats für Tool-Aufrufe innerhalb eines Subagenten aus. Das `heartbeat`-Feld erfordert Agent SDK v0.3.214 oder später. Vor v2.1.257 gab Claude Code auch keine Heartbeats für einen Vordergrund-Agent-Tool-Aufruf aus.5666Während ein Tool-Aufruf in der Hauptkonversation läuft, gibt Claude Code alle 30 Sekunden eine `tool_progress`-Nachricht mit `heartbeat: true` aus. Jeder Heartbeat trägt den Tool-Namen und verstrichene Sekunden, daher können Sie einen lang laufenden Aufruf von einer steckengebliebenen Sitzung unterscheiden. Claude Code gibt keine Heartbeats für Tool-Aufrufe innerhalb eines Subagenten aus. Das `heartbeat`-Feld erfordert Agent SDK v0.3.214 oder später. Vor v2.1.257 gab Claude Code auch keine Heartbeats für einen Vordergrund-Agent-Tool-Aufruf aus.

5718 5667 

5719Bei `tool_progress`-Nachrichten für das Agent-Tool außer Heartbeats benennt `subagent_type` den laufenden Subagenten-Typ, z. B. `general-purpose`. `subagent_retry` ist vorhanden, während dieser Subagent einen API-Fehler-Backoff wartet, z. B. ein Ratenlimit oder Überlastung, mit einer Nachricht pro Wiederholungsversuch. Beide Felder erfordern Agent SDK v0.3.214 oder später.5668Bei `tool_progress`-Nachrichten für das Agent-Tool außer Heartbeats benennt `subagent_type` den laufenden Subagenten-Typ, z. B. `general-purpose`. `subagent_retry` ist vorhanden, während dieser Subagent einen API-Fehler-Backoff abwartet, z. B. ein Rate-Limit oder eine Überlastung, mit einer Nachricht pro Wiederholungsversuch. Beide Felder erfordern Agent SDK v0.3.214 oder später.

5720 5669 

5721Um einen Wiederholungs-Indikator aus `subagent_retry` zu rendern:5670Um einen Wiederholungs-Indikator aus `subagent_retry` zu rendern:

5722 5671 

5723* Verfolgen Sie den Indikator nach `parent_tool_use_id`, das pro Subagent eindeutig ist. `tool_use_id` wird von parallelen Subagenten aus einem Assistenten-Turn geteilt, daher würde die Verfolgung danach den Indikator eines Subagenten löschen. Löschen Sie den Indikator, wenn ein späterer `tool_progress` für den gleichen `parent_tool_use_id` ankommt, ohne `subagent_retry` noch `heartbeat: true`, oder wenn die Ergebnis-Nachricht des Tools ankommt. Frames mit `heartbeat: true` melden nur Lebendigkeit, daher behalten Sie den Indikator, wenn einer ankommt. `attempt` kann `max_retries` unter persistenter Wiederholung überschreiten, daher leiten Sie das Löschen nicht von den Zählern ab.5672* Verfolgen Sie den Indikator nach `parent_tool_use_id`, das pro Subagent eindeutig ist. `tool_use_id` wird von parallelen Subagenten aus einem Assistenten-Turn geteilt, daher würde die Verfolgung danach zulassen, dass das Update eines Subagenten den Indikator eines anderen löscht.

5673* Löschen Sie den Indikator, wenn ein späterer `tool_progress` für den gleichen `parent_tool_use_id` weder mit `subagent_retry` noch mit `heartbeat: true` ankommt, oder wenn die Ergebnis-Nachricht des Tools ankommt. Frames mit `heartbeat: true` melden nur Lebendigkeit, daher behalten Sie den Indikator, wenn einer ankommt. `attempt` kann `max_retries` bei persistenten Wiederholungsversuchen überschreiten, daher leiten Sie das Löschen nicht von den Zählern ab.

5724* Behandeln Sie `error_category` als Token zur Auswahl Ihres eigenen Nachrichtentextes, nicht als Anzeigetext. Die Werte sind `rate_limit`, `overloaded`, `authentication_failed`, `server_error`, `cloud_credential_error` und `unknown`. Behandeln Sie einen Wert, den Sie nicht erkennen, wie `unknown`, weil spätere Versionen Werte hinzufügen können.5674* Behandeln Sie `error_category` als Token zur Auswahl Ihres eigenen Nachrichtentextes, nicht als Anzeigetext. Die Werte sind `rate_limit`, `overloaded`, `authentication_failed`, `server_error`, `cloud_credential_error` und `unknown`. Behandeln Sie einen Wert, den Sie nicht erkennen, wie `unknown`, weil spätere Versionen Werte hinzufügen können.

5725 5675 

5726<h3 id="sdkauthstatusmessage">5676<h3 id="sdkauthstatusmessage">


5777 `SDKTaskProgressMessage`5727 `SDKTaskProgressMessage`

5778</h3>5728</h3>

5779 5729 

5780Wird regelmäßig ausgegeben, während ein Subagent oder eine Hintergrund-Aufgabe läuft.5730Wird regelmäßig ausgegeben, während ein Subagent oder eine Hintergrundaufgabe läuft.

5781 5731 

5782Für eine Subagenten-Aufgabe trägt das `summary`-Feld eine modellgenerierte Fortschritts-Zusammenfassung und wird nur ausgefüllt, wenn [`agentProgressSummaries`](#options) aktiviert ist. Für einen [backgrounded MCP-Tool-Aufruf](/docs/de/mcp#automatic-backgrounding-of-long-tool-calls) trägt `summary` den neuesten gemeldeten Fortschritt des MCP-Servers und hängt nicht von dieser Option ab.5732Für eine Subagenten-Aufgabe trägt das `summary`-Feld eine modellgenerierte Fortschritts-Zusammenfassung und wird nur ausgefüllt, wenn [`agentProgressSummaries`](#options) aktiviert ist. Für einen [in den Hintergrund verschobenen MCP-Tool-Aufruf](/docs/de/mcp#automatic-backgrounding-of-long-tool-calls) trägt `summary` den neuesten gemeldeten Fortschritt des MCP-Servers und hängt nicht von dieser Option ab.

5783 5733 

5784```typescript theme={null}5734```typescript theme={null}

5785type SDKTaskProgressMessage = {5735type SDKTaskProgressMessage = {


5805 `SDKTaskUpdatedMessage`5755 `SDKTaskUpdatedMessage`

5806</h3>5756</h3>

5807 5757 

5808Wird ausgegeben, wenn sich der Status einer Hintergrund-Aufgabe ändert, z. B. wenn sie von `running` zu `completed` übergeht. Führen Sie `patch` in Ihre lokale Aufgabenkarte zusammen, die nach `task_id` indiziert ist. Das `end_time`-Feld ist ein Unix-Epoch-Zeitstempel in Millisekunden, vergleichbar mit `Date.now()`.5758Wird ausgegeben, wenn sich der Status einer Hintergrundaufgabe ändert, z. B. wenn sie von `running` zu `completed` übergeht. Führen Sie `patch` in Ihre lokale Aufgabenkarte zusammen, die nach `task_id` indiziert ist. Das `end_time`-Feld ist ein Unix-Epoch-Zeitstempel in Millisekunden, vergleichbar mit `Date.now()`.

5809 5759 

5810```typescript theme={null}5760```typescript theme={null}

5811type SDKTaskUpdatedMessage = {5761type SDKTaskUpdatedMessage = {


5829 `SDKBackgroundTasksChangedMessage`5779 `SDKBackgroundTasksChangedMessage`

5830</h3>5780</h3>

5831 5781 

5832Wird ausgegeben, wenn sich die Menge der aktiven Hintergrund-Aufgaben ä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.5782Wird 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.

5833 5783 

5834Das `tasks`-Array ist die vollständige aktive Menge. Ersetzen Sie alle zwischengespeicherten Mengen mit jeder Nutzlast, anstatt `task_started`- und `task_notification`-Ereignisse zu koppeln, sodass die nächste Änderung der Mitgliedschaft alle verpassten Ereignisse korrigiert.5784Das `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.

5835 5785 

5836Die Reihenfolge relativ zu diesen Pro-Aufgaben-Ereignissen ist nicht spezifiziert, daher korrelieren Sie die beiden Streams nicht.5786Die Reihenfolge relativ zu diesen Pro-Aufgaben-Ereignissen ist nicht spezifiziert, daher korrelieren Sie die beiden Streams nicht.

5837 5787 


5860 `SDKThinkingTokensMessage`5810 `SDKThinkingTokensMessage`

5861</h3>5811</h3>

5862 5812 

5863Wird ausgegeben, während Claude einen Denk-Block produziert, einschließlich eines redigierten. `estimated_tokens` ist eine laufende Schätzung der bisher im aktuellen Block generierten Denk-Token, und `estimated_tokens_delta` ist das Inkrement, das von diesem Frame getragen wird. Verwenden Sie diese Schätzungen für die Fortschrittsanzeige.5813Wird ausgegeben, während Claude einen Thinking-Block produziert, einschließlich eines redigierten. `estimated_tokens` ist eine laufende Schätzung der bisher im aktuellen Block generierten Thinking-Token, und `estimated_tokens_delta` ist das Inkrement, das von diesem Frame getragen wird. Verwenden Sie diese Schätzungen für die Fortschrittsanzeige.

5864 5814 

5865Wenn das Modell oder der Provider eine Aufschlüsselung meldet, ist die endgültige Anzahl für die Top-Level-Agent-Schleife die [`usage.output_tokens_details.thinking_tokens`](#usage) der Ergebnis-Nachricht, die [keine Subagenten-Token enthält](/docs/de/agent-sdk/cost-tracking#get-the-total-cost-of-a-query).5815Wenn das Modell oder der Provider eine Aufschlüsselung meldet, ist die endgültige Anzahl für die Top-Level-Agentenschleife die [`usage.output_tokens_details.thinking_tokens`](#usage) der Ergebnis-Nachricht, die [keine Subagenten-Token enthält](/docs/de/agent-sdk/cost-tracking#get-the-total-cost-of-a-query).

5866 5816 

5867Erfordert Claude Code v2.1.153 oder später.5817Erfordert Claude Code v2.1.153 oder später.

5868 5818 


5900 `SDKRateLimitEvent`5850 `SDKRateLimitEvent`

5901</h3>5851</h3>

5902 5852 

5903Wird ausgegeben, wenn die Sitzung auf ein Ratenlimit trifft.5853Wird ausgegeben, wenn die Sitzung auf ein Rate-Limit trifft.

5904 5854 

5905```typescript theme={null}5855```typescript theme={null}

5906type SDKRateLimitEvent = {5856type SDKRateLimitEvent = {


5918};5868};

5919```5869```

5920 5870 

5921Wenn `errorCode` `"credits_required"` ist, stammt die Ablehnung von einem claude.ai-Abonnement, dessen enthaltene Nutzung aufgebraucht ist, und die Sitzung kann nicht fortgesetzt werden, bis der Benutzer Nutzungsguthaben kauft. `canUserPurchaseCredits` gibt an, ob der authentifizierte Benutzer Guthaben für das Konto kaufen kann, und `hasChargeableSavedPaymentMethod` gibt an, ob eine gespeicherte Zahlungsmethode hinterlegt ist. Alle drei Felder fehlen bei Ratenlimit-Ereignissen, die keine Guthaben-erforderlich-Ablehnungen sind. Erfordert Claude Code v2.1.181 oder später.5871Wenn `errorCode` `"credits_required"` ist, stammt die Ablehnung von einem claude.ai-Abonnement, dessen enthaltene Nutzung aufgebraucht ist, und die Sitzung kann nicht fortgesetzt werden, bis der Benutzer Nutzungsguthaben kauft. `canUserPurchaseCredits` gibt an, ob der authentifizierte Benutzer Guthaben für das Konto kaufen kann, und `hasChargeableSavedPaymentMethod` gibt an, ob eine gespeicherte Zahlungsmethode hinterlegt ist. Alle drei Felder fehlen bei Rate-Limit-Ereignissen, die keine Guthaben-erforderlich-Ablehnungen sind. Erfordert Claude Code v2.1.181 oder später.

5922 5872 

5923<h3 id="sdklocalcommandoutputmessage">5873<h3 id="sdklocalcommandoutputmessage">

5924 `SDKLocalCommandOutputMessage`5874 `SDKLocalCommandOutputMessage`

5925</h3>5875</h3>

5926 5876 

5927Claude Code gibt diese Nachrichtentyp nicht aus. Wenn Sie einen Befehl wie `/context` oder `/usage` als Eingabeaufforderung senden, kommt seine Ausgabe als [`SDKAssistantMessage`](#sdkassistantmessage) an.5877Claude Code gibt diesen Nachrichtentyp nicht aus. Wenn Sie einen Befehl wie `/context` oder `/usage` als Prompt senden, kommt seine Ausgabe als [`SDKAssistantMessage`](#sdkassistantmessage) an.

5928 5878 

5929```typescript theme={null}5879```typescript theme={null}

5930type SDKLocalCommandOutputMessage = {5880type SDKLocalCommandOutputMessage = {


5940 `SDKCommandsChangedMessage`5890 `SDKCommandsChangedMessage`

5941</h3>5891</h3>

5942 5892 

5943Wird ausgegeben, wenn sich die Menge der verfügbaren Befehle während einer Sitzung ändert, z. B. wenn Claude Code Skills entdeckt, wenn der Agent ein Unterverzeichnis betritt. Das `commands`-Array ist die vollständig aktualisierte Liste, daher ersetzen Sie alle zwischengespeicherten Befehlslisten durch diese Nutzlast. Das Aufrufen von [`supportedCommands()`](#query-object) nach dieser Nachricht gibt die gleiche aktualisierte Liste zurück, weil die Methode den neuesten Push verfolgt; dies erfordert Agent SDK v0.3.216 oder später. In früheren SDK-Versionen gibt `supportedCommands()` den bei der Initialisierung erfassten Snapshot zurück und spiegelt nie Änderungen während der Sitzung wider.5893Wird ausgegeben, wenn sich die Menge der verfügbaren Befehle während einer Sitzung ändert, z. B. wenn Claude Code Skills entdeckt, wenn der Agent ein Unterverzeichnis betritt. Das `commands`-Array ist die vollständig aktualisierte Liste, daher ersetzen Sie alle zwischengespeicherten Befehlslisten durch diese Payload. Das Aufrufen von [`supportedCommands()`](#query-object) nach dieser Nachricht gibt die gleiche aktualisierte Liste zurück, weil die Methode den neuesten Push verfolgt; dies erfordert Agent SDK v0.3.216 oder später. In früheren SDK-Versionen gibt `supportedCommands()` den bei der Initialisierung erfassten Snapshot zurück und spiegelt nie Änderungen während der Sitzung wider.

5944 5894 

5945Claude Code gibt diese Nachricht auch aus, wenn die [Prompts](/docs/de/mcp#use-mcp-prompts-as-commands) eines MCP-Servers der Liste beitreten oder sie verlassen, z. B. wenn ein Server nach dem Sitzungsstart die Verbindung herstellt. Dies erfordert Claude Code v2.1.281 oder später.5895Claude Code gibt diese Nachricht auch aus, wenn die [Prompts](/docs/de/mcp#use-mcp-prompts-as-commands) eines MCP-Servers der Liste beitreten oder sie verlassen, z. B. wenn ein Server nach dem Sitzungsstart die Verbindung herstellt. Dies erfordert Claude Code v2.1.281 oder später.

5946 5896 


5958 `SDKPromptSuggestionMessage`5908 `SDKPromptSuggestionMessage`

5959</h3>5909</h3>

5960 5910 

5961Wird nach einem Turn ausgegeben, wenn [`promptSuggestions`](#options) aktiviert ist und Claude Code eine Suggestion für diesen Turn generiert hat. Enthält die vorhergesagte nächste Benutzer-Eingabeaufforderung. Für die Turns, die keine erhalten, siehe [Wenn Claude Code Suggestions überspringt](/docs/de/interactive-mode#when-claude-code-skips-suggestions).5911Wird nach einem Turn ausgegeben, wenn [`promptSuggestions`](#options) aktiviert ist und Claude Code eine Suggestion für diesen Turn generiert hat. Enthält den vorhergesagten nächsten Benutzer-Prompt. Für die Turns, die keine erhalten, siehe [Wenn Claude Code Suggestions überspringt](/docs/de/interactive-mode#when-claude-code-skips-suggestions).

5962 5912 

5963```typescript theme={null}5913```typescript theme={null}

5964type SDKPromptSuggestionMessage = {5914type SDKPromptSuggestionMessage = {


5995 5945 

5996Die Felder `trigger`, `user_message_uuid` und `timestamp` erfordern Claude Code v2.1.281 oder später.5946Die Felder `trigger`, `user_message_uuid` und `timestamp` erfordern Claude Code v2.1.281 oder später.

5997 5947 

5998Die veröffentlichten Typings des SDK deklarieren `SDKConversationResetMessage` in Claude Code v2.1.203 und später. Vor v2.1.203 referenzierte `SDKMessage` den Typ, ohne ihn zu deklarieren, daher schlug die Eingrenzung auf `type === "conversation_reset"` fehl, wenn `skipLibCheck` deaktiviert war.5948Die veröffentlichten Typings des SDK deklarieren `SDKConversationResetMessage` in Claude Code v2.1.203 und später. Vor v2.1.203 referenzierte `SDKMessage` den Typ, ohne ihn zu deklarieren, daher schlug die Eingrenzung auf `type === "conversation_reset"` bei der Typprüfung fehl, wenn `skipLibCheck` deaktiviert war.

5999 5949 

6000<h3 id="aborterror">5950<h3 id="aborterror">

6001 `AbortError`5951 `AbortError`


6007class AbortError extends Error {}5957class AbortError extends Error {}

6008```5958```

6009 5959 

6010`AbortError` ist die einzige Fehlerklasse in der typisierten API des SDK. Andere Fehler, wie das Beenden oder Fehlschlag des Claude-Code-Prozesses, lehnen die Nachrichteniteration mit Fehlern ab, die keine SDK-Klasse zum Abgleichen tragen. [Troubleshooting](/docs/de/agent-sdk/troubleshooting) indiziert diese Fehler nach Nachricht, mit der Ursache und Behebung für jeden.5960`AbortError` ist die einzige Fehlerklasse in der typisierten API des SDK. Andere Fehler, wie das Beenden oder der fehlgeschlagene Start des Claude-Code-Prozesses, lehnen die Nachrichteniteration mit Fehlern ab, die keine SDK-Klasse zum Abgleichen tragen. [Fehlerbehebung](/docs/de/agent-sdk/troubleshooting) ordnet diese Fehler nach Nachricht, mit der Ursache und Behebung für jeden.

6011 5961 

6012<h2 id="sandbox-configuration">5962<h2 id="sandbox-configuration">

6013 Sandbox-Konfiguration5963 Sandbox-Konfiguration

agent-teams.md +5 −2

Details

195* **In-Process-Modus**: verwenden Sie die Pfeiltasten nach oben und unten im Agent-Panel, um einen Teammate auszuwählen, drücken Sie dann die Eingabetaste, um seine Sitzung anzuzeigen und geben Sie ein, um ihm eine Nachricht zu senden. Drücken Sie `x` auf einem ausgewählten Teammate, um ihn zu stoppen. Drücken Sie Ctrl+T, um die Aufgabenliste umzuschalten.195* **In-Process-Modus**: verwenden Sie die Pfeiltasten nach oben und unten im Agent-Panel, um einen Teammate auszuwählen, drücken Sie dann die Eingabetaste, um seine Sitzung anzuzeigen und geben Sie ein, um ihm eine Nachricht zu senden. Drücken Sie `x` auf einem ausgewählten Teammate, um ihn zu stoppen. Drücken Sie Ctrl+T, um die Aufgabenliste umzuschalten.

196* **Split-Pane-Modus**: klicken Sie in den Pane eines Teammates, um direkt mit seiner Sitzung zu interagieren. Jeder Teammate hat eine vollständige Ansicht seines eigenen Terminals.196* **Split-Pane-Modus**: klicken Sie in den Pane eines Teammates, um direkt mit seiner Sitzung zu interagieren. Jeder Teammate hat eine vollständige Ansicht seines eigenen Terminals.

197 197 

198Während Sie einen In-Process-Teammate anzeigen, gehen einfacher Text und [Skills](/docs/de/skills) an diesen Teammate, aber integrierte Befehle werden weiterhin in der Sitzung des Leads ausgeführt.198Während Sie einen In-Process-Teammate anzeigen, gehen einfacher Text und [Skills](/docs/de/skills) an diesen Teammate, und integrierte Befehle gehen an die Sitzung des Leads, mit diesen Schutzmechanismen:

199 199 

200Das Modell und der schnelle Modus eines Teammates sind festgelegt, wenn er spawnt, daher ändern `/model` und `/fast` nur die Einstellungen des Leads. Ab v2.1.199 zeigt die Eingabe eines dieser Befehle während der Anzeige eines Teammates einen Hinweis an, dass die Änderung für den Lead gilt; frühere Versionen haben sie auf den Lead angewendet, ohne Hinweis. `/effort` gilt weiterhin für die späteren Züge des angezeigten Teammates, da Teammates die [Anstrengungsstufe](/docs/de/model-config#adjust-effort-level) des Leads befolgen.200* `/compact`, `/clear` und `/rewind` wirken auf die Konversation des Leads, daher bittet Claude Code Sie um Bestätigung, bevor einer dieser Befehle aus dieser Ansicht ausgeführt wird.

201* `/model` und `/fast` legen das Modell und den Fast-Modus des Leads fest, nicht die des Teammates, daher werden sie aus dieser Ansicht nicht ausgeführt. Ein Hinweis erklärt Ihnen, warum.

202 

203Das Modell und der Fast-Modus eines Teammates sind festgelegt, wenn er erzeugt wird. `/effort` gilt weiterhin für die späteren Turns des angezeigten Teammates, da Teammates der [Effort-Stufe](/docs/de/model-config#adjust-effort-level) des Leads folgen.

201 204 

202<h3 id="assign-and-claim-tasks">205<h3 id="assign-and-claim-tasks">

203 Aufgaben zuweisen und beanspruchen206 Aufgaben zuweisen und beanspruchen

agent-view.md +94 −74

Details

224 224 

225Meistens ist das Peek-Panel ausreichend und Sie müssen das vollständige Transkript nicht öffnen.225Meistens ist das Peek-Panel ausreichend und Sie müssen das vollständige Transkript nicht öffnen.

226 226 

227Geben Sie eine Antwort im Peek-Panel ein und drücken Sie `Enter`, um sie an diese Sitzung zu senden. Wenn die Sitzung eine Frage mit vordefinierten Optionen stellt, zeigt das Peek-Panel sie als nummerierte Liste an und Sie können eine Zahlentaste drücken, um eine auszuwählen. Eine Genehmigungsaufforderung wird als Text angezeigt, der beschreibt, was die Sitzung ausführen möchte, ohne nummerierte Optionen. Geben Sie eine Antwort ein, um sie zu beantworten, oder hängen Sie an, um mit der Standard-Eingabeaufforderung zu antworten. Für andere blockierte Sitzungen drücken Sie `Tab`, um die Eingabe mit einer vorgeschlagenen Antwort zu füllen, die Sie vor dem Senden bearbeiten können. Präfixieren Sie eine Antwort mit `!`, um stattdessen einen Bash-Befehl zu senden.227Geben Sie im Peek-Panel eine Antwort ein und drücken Sie `Enter`, um sie an diese Sitzung zu senden. Stellen Sie einer Antwort `!` voran, um stattdessen einen Bash-Befehl zu senden. Was mit der Antwort geschieht, hängt von der Sitzung und davon ab, was Sie senden:

228 

229* Eine arbeitende Sitzung: Die Antwort wird in die [Nachrichtenwarteschlange](/docs/de/interactive-mode#queue-messages-while-claude-works) der Sitzung eingereiht, anstatt die laufende Antwort zu unterbrechen, und wird [wirksam, wenn auch Eingaben in der Warteschlange wirksam werden](/docs/de/interactive-mode#when-claude-code-sends-what-you-queued). Ein [Befehl](/docs/de/commands) wartet, bis der Turn endet, selbst einer, der sofort ausgeführt wird, wenn Sie ihn im eigenen Prompt einer Sitzung eingeben

230* Eine Antwort, die genau `/stop` lautet: stoppt die Sitzung sofort, anstatt an sie zugestellt zu werden, unabhängig davon, ob die Sitzung arbeitet oder auf Sie wartet

231* Ein [Shell-Job](#run-a-shell-command): Die Antwort, einschließlich `/stop`, geht als getippte Eingabe an das Terminal des Befehls

232 

233Wenn die Sitzung auf Sie wartet, hängt die Art, wie Sie im Peek-Panel antworten, davon ab, worauf sie wartet:

234 

235* Eine Frage mit vordefinierten Optionen: Das Panel listet die Optionen nummeriert auf. Drücken Sie bei leerer Antwort-Eingabe die Nummer einer Option, um sie einzufügen, und dann `Enter`, um sie zu senden, oder geben Sie stattdessen Ihre eigene Antwort ein

236* Eine Frage ohne vordefinierte Optionen: Geben Sie Ihre Antwort ein. Wenn die leere Eingabe eine vorgeschlagene Antwort zeigt, drücken Sie `Tab`, um sie einzufügen, und bearbeiten Sie sie vor dem Senden

237* Eine Berechtigungsabfrage oder ein anderer Dialog, wie z. B. eine [Sandbox](/docs/de/sandboxing)-Abfrage oder die [Anfrage nach Eingaben](/docs/de/mcp#respond-to-mcp-elicitation-requests) eines MCP-Servers: Eine Antwort beantwortet ihn nicht. Ihre Antwort wartet in der Warteschlange. Um den Dialog zu beantworten, hängen Sie mit `→` an

228 238 

229Wenn ein [`PermissionRequest`](/docs/de/hooks#permissionrequest)- oder [`PreToolUse`](/docs/de/hooks#pretooluse)-Hook eine Ausgabe zurückgibt, die Claude Code für den Aufruf, den die Sitzung fragt, nicht validieren kann, zeigt die Zeile das Hook-Ereignis und `hook output invalid:` mit dem Validierungsfehler vor dem Text der ausstehenden Anfrage. Für einen Hook, der auf andere Weise fehlschlägt, sagt die Zeile, dass der Hook fehlgeschlagen ist. Die Sitzung wartet immer noch auf die gleiche Anfrage.239Wenn ein [`PermissionRequest`](/docs/de/hooks#permissionrequest)- oder [`PreToolUse`](/docs/de/hooks#pretooluse)-Hook eine Ausgabe zurückgibt, die Claude Code für den Aufruf, den die Sitzung fragt, nicht validieren kann, zeigt die Zeile das Hook-Ereignis und `hook output invalid:` mit dem Validierungsfehler vor dem Text der ausstehenden Anfrage. Für einen Hook, der auf andere Weise fehlschlägt, sagt die Zeile, dass der Hook fehlgeschlagen ist. Die Sitzung wartet immer noch auf die gleiche Anfrage.

230 240 


301* Drücken Sie `Ctrl+T`, um eine Sitzung oben anzuheften und [ihren Prozess im Leerlauf laufen zu lassen](#the-supervisor-process)311* Drücken Sie `Ctrl+T`, um eine Sitzung oben anzuheften und [ihren Prozess im Leerlauf laufen zu lassen](#the-supervisor-process)

302* Drücken Sie `Shift+↑` oder `Shift+↓`, um Sitzungen neu zu ordnen312* Drücken Sie `Shift+↑` oder `Shift+↓`, um Sitzungen neu zu ordnen

303* Drücken Sie `Ctrl+R`, um eine Sitzung umzubenennen313* Drücken Sie `Ctrl+R`, um eine Sitzung umzubenennen

304* Drücken Sie `Enter` auf einem Gruppen-Header, um ihn zu reduzieren314* Drücken Sie `Enter` auf einem Gruppen-Header, um ihn einzuklappen, außer während ein [Filter](#filter-sessions) aktiv ist; dann bleiben alle Gruppen ausgeklappt

305 315 

306Um eine Sitzung aus der Liste zu entfernen, drücken Sie `Ctrl+X`, um sie zu stoppen, und `Ctrl+X` erneut innerhalb von zwei Sekunden, um sie zu löschen. Wenn Sie `Ctrl+X` auf einem Gruppen-Header drücken, werden alle Sitzungen in dieser Gruppe nach Bestätigung gelöscht.316Um eine Sitzung aus der Liste zu entfernen, drücken Sie `Ctrl+X`, um sie zu stoppen, und `Ctrl+X` erneut innerhalb von zwei Sekunden, um sie zu löschen. Wenn Sie `Ctrl+X` auf einem Gruppen-Header drücken, werden alle Sitzungen in dieser Gruppe nach Bestätigung gelöscht.

307 317 


324 Sitzungen filtern334 Sitzungen filtern

325</h3>335</h3>

326 336 

327Geben Sie in die Versand-Eingabe ein, um zu filtern, anstatt zu versenden:337Beginnen Sie die Versand-Eingabe mit einem dieser Filter, um die Liste während der Eingabe einzugrenzen:

328 338 

329| Filter | Zeigt |339| Filter | Zeigt |

330| :- | :- |340| :- | :- |

331| `a:<name>` | Sitzungen, die den benannten Agenten ausführen |341| `a:<name>` | Sitzungen, die den benannten Agenten ausführen |

332| `s:<state>` | Sitzungen im angegebenen Status, wie z. B. `s:working`. Akzeptiert auch `s:blocked` für alles, das auf Sie wartet |342| `s:<state>` | Sitzungen im angegebenen Status, wie z. B. `s:working`, oder unter dem angegebenen Gruppen-Header, wie z. B. `s:ready` für `Ready for review`. `s:blocked` listet alles auf, was auf Sie wartet |

333| `#<number>` oder eine Pull- oder Merge-Request-URL | Die Sitzung, die an diesem Pull Request oder Merge Request arbeitet |343| `n:<text>` | Sitzungen, deren Name oder erster Prompt den Text enthält, wie z. B. `n:login`. Erfordert Claude Code v2.1.287 oder später |

344| `o:<text>` | Sitzungen, deren Ergebnis den Text enthält, wie z. B. `o:merged`. Ein einfaches `o:` listet jede Sitzung auf, die ein Ergebnis gemeldet hat |

345| Eine Pull- oder Merge-Request-Nummer, wie z. B. `#1234`, oder ihre URL | Die Sitzung, die an diesem Pull Request oder Merge Request arbeitet |

334| Jede andere URL | Die Sitzung, deren erste Eingabeaufforderung diese URL enthielt |346| Jede andere URL | Die Sitzung, deren erste Eingabeaufforderung diese URL enthielt |

335 347 

348Um Filter zu kombinieren, beginnen Sie mit `a:`, `s:`, `n:` oder `o:` und fügen Sie weitere hinzu, getrennt durch Leerzeichen. Die Liste zeigt die Sitzungen, die allen entsprechen. Zum Beispiel listet `s:blocked a:reviewer` die `reviewer`-Sitzungen auf, die auf Sie warten.

349 

350Während ein Filter aktiv ist, werden eingeklappte Gruppen ausgeklappt, um ihre Treffer anzuzeigen, und der erste Treffer ist ausgewählt, sodass `Enter` ihn öffnet. Leeren Sie die Eingabe, um den Filter zu entfernen, und diese Gruppen werden wieder eingeklappt.

351 

336<h3 id="keyboard-shortcuts">352<h3 id="keyboard-shortcuts">

337 Tastaturkürzel353 Tastaturkürzel

338</h3>354</h3>


342| Verknüpfung | Aktion |358| Verknüpfung | Aktion |

343| :- | :- |359| :- | :- |

344| `↑` / `↓` | Zwischen Zeilen verschieben |360| `↑` / `↓` | Zwischen Zeilen verschieben |

345| `Enter` | An die ausgewählte Sitzung anhängen oder versenden, wenn Text in der Eingabe vorhanden ist |361| `PgUp` / `PgDn` | Um eine Bildschirmseite an Zeilen nach oben oder unten wechseln |

362| `Home` / `End` | Zur ersten oder letzten Zeile springen |

363| `Enter` | An die ausgewählte Sitzung anhängen oder den Text der Eingabe absenden, wenn es sich nicht um einen [Filter](#filter-sessions) handelt |

346| `Space` | Peek-Panel für die ausgewählte Sitzung öffnen oder schließen |364| `Space` | Peek-Panel für die ausgewählte Sitzung öffnen oder schließen |

347| `Shift+Enter` | Zeilenumbruch in der Versand-Eingabe einfügen, [wie in der Haupt-Eingabeaufforderung](/docs/de/terminal-config#enter-multiline-prompts) |365| `Shift+Enter` | Zeilenumbruch in der Versand-Eingabe einfügen, [wie in der Haupt-Eingabeaufforderung](/docs/de/terminal-config#enter-multiline-prompts) |

348| `Ctrl+Enter` | Versenden und sofort anhängen, in Terminals, in denen das `?`-Overlay `ctrl+enter to start and open` auflistet |366| `Ctrl+Enter` | Versenden und sofort anhängen, in Terminals, in denen das `?`-Overlay `ctrl+enter to start and open` auflistet |


1064 Versionsverlauf1082 Versionsverlauf

1065</h2>1083</h2>

1066 1084 

1067Die Agenten-Ansicht hat sich während der Forschungsvorschau schnell entwickelt. Wenn Sie eine ältere Claude Code-Version verwenden, kann sich einiges auf dieser Seite unterscheiden; insbesondere lehnt `claude agents` Flags ab, die es noch nicht unterstützt, mit einem `unknown option`-Fehler. Die folgende Tabelle listet auf, wann jedes Flag und Verhalten hinzugefügt wurde.1085Die Agentenansicht hat sich während der Research Preview schnell weiterentwickelt. Wenn Sie eine ältere Version von Claude Code verwenden, kann sich manches Verhalten auf dieser Seite unterscheiden; insbesondere lehnt `claude agents` Flags, die es noch nicht unterstützt, mit einem `unknown option`-Fehler ab. Die folgende Tabelle listet auf, wann welches Flag und welches Verhalten hinzugefügt wurde.

1068 1086 

1069| Version | Änderung |1087| Version | Änderung |

1070| - | - |1088| - | - |

1071| v2.1.281 | Eine [`--setting-sources`](/docs/de/cli-reference#cli-flags)-Einschränkung [überträgt sich](#what-carries-over-when-you-background) auf eine Sitzung, die Sie mit `←` oder `/bg` in den Hintergrund verschieben, und auf die Sitzungen, die Sie aus der Agenten-Ansicht versenden. Vor dieser Version lud die erzeugte Sitzung jede Einstellungsquelle. |1089| v2.1.287 | Der [`n:<text>`-Filter](#filter-sessions) findet Sitzungen anhand ihres Namens oder ersten Prompts. Solange ein Filter aktiv ist, werden Gruppen, die Sie eingeklappt haben, ausgeklappt, um ihre Treffer anzuzeigen, und der erste Treffer ist ausgewählt, sodass `Enter` ihn öffnet. |

1072| v2.1.281 | `claude --bg` und die Befehle, die eine Sitzung neu starten, überprüfen zuerst die Workspace-Vertrauenswürdigkeit für das Verzeichnis der Sitzung. Aus einem Terminal in diesem Verzeichnis [erscheint der Vertrauensdialog](#from-your-shell), wenn Sie ihn noch nicht akzeptiert haben; wo kein Dialog erscheinen kann, wie in einem Skript, beendet sich der Befehl mit einem [`Workspace not trusted`](/docs/de/errors#workspace-not-trusted-when-dispatching-a-background-session)-Fehler. |1090| v2.1.287 | Ein als [Peek-Antwort](#peek-and-reply) gesendeter Befehl wird ausgeführt, wenn der aktuelle Turn der Sitzung endet, einschließlich der Befehle, die sofort ausgeführt werden, wenn Sie sie im eigenen Eingabefeld einer Sitzung eingeben. Eine Antwort, die genau `/stop` lautet, stoppt die Sitzung sofort. |

1073| v2.1.274 | Nach einer automatischen Aktualisierung kann sich eine Agenten-Ansicht, von der Sie etwa eine Stunde weg waren, auf den neuen Build neu starten. Wenn dies geschieht, behält sie die [Versand-Standardwerte](#dispatch-defaults), mit denen Sie sie öffneten: `--model`, `--effort`, `--permission-mode`, `--allow-dangerously-skip-permissions` und `--agent`. Vor dieser Version behielt die neu gestartete Ansicht nur `--cwd` und Konfigurationsflags wie `--settings` und `--mcp-config`, sodass Sitzungen, die Sie danach versendeten, ohne diese Standardwerte starteten. |1091| v2.1.281 | Eine [`--setting-sources`](/docs/de/cli-reference#cli-flags)-Einschränkung [wird übernommen](#what-carries-over-when-you-background) für eine Sitzung, die Sie mit `←` oder `/bg` in den Hintergrund verschieben, sowie für die Sitzungen, die Sie aus der Agentenansicht starten. Vor diesem Release lud die gestartete Sitzung jede Einstellungsquelle. |

1074| v2.1.274 | Wenn ein [Löschen abgelehnt wird](#what-deleting-a-session-removes), weil Git oder Ihr `WorktreeRemove`-Hook den Worktree nicht entfernen konnte, blockiert ein ausgechecktes Submodul, das Claude Code überprüft hat, keine nicht committeten Änderungen an verfolgten Dateien, das Angebot zum erneuten Löschen und zum Entfernen des Verzeichnisses trotzdem nicht. Nicht committete Arbeit in einem ausgecheckten Submodul zählt als nicht committete Änderungen, und die Nachricht benennt das Submodul. Vor dieser Version blockierte jeder Submodul-Checkout im Worktree das Angebot, mit einer Nachricht, die besagt, dass der Worktree ein verschachteltes Repository enthält. |1092| v2.1.281 | `claude --bg` und die Befehle, die eine Sitzung neu starten, prüfen zuerst das Workspace-Vertrauen für das Verzeichnis der Sitzung. In einem Terminal in diesem Verzeichnis [erscheint der Vertrauensdialog](#from-your-shell), falls Sie ihn noch nicht akzeptiert haben; wo kein Dialog erscheinen kann, etwa in einem Skript, beendet sich der Befehl mit einem [`Workspace not trusted`](/docs/de/errors#workspace-not-trusted-when-dispatching-a-background-session)-Fehler. |

1075| v2.1.268 | Wenn ein [Löschen abgelehnt wird](#what-deleting-a-session-removes), weil Git oder Ihr `WorktreeRemove`-Hook den Worktree nicht entfernen konnte, benennt die Nachricht die Ursache, einschließlich wie ein Hook endete und der Anfang seiner Stderr. Für einen verknüpften Worktree unter dem Repository-Verzeichnis `.claude/worktrees/` ohne nicht committete Änderungen an verfolgten Dateien, kein verschachteltes Repository darin und kein anderer Sitzungs-Datensatz, der ihn benennt, entfernt das erneute Löschen der Sitzung das Verzeichnis trotzdem, aus der Agenten-Ansicht oder mit `claude rm <id> --force-remove-worktree <worktree-id>`. Vor dieser Version zeigte die Zeile nur `worktree could not be removed (WorktreeRemove hook failed)` oder Gits Fehler, die Stderr des Hooks ging nur ins Debug-Protokoll, und das erneute Löschen wurde auf die gleiche Weise abgelehnt. |1093| v2.1.274 | Nach einem automatischen Update kann sich eine Agentenansicht, die Sie etwa eine Stunde lang nicht genutzt haben, mit dem neuen Build neu starten. Dabei behält sie die [Dispatch-Standardwerte](#dispatch-defaults) bei, mit denen Sie sie geöffnet haben: `--model`, `--effort`, `--permission-mode`, `--allow-dangerously-skip-permissions` und `--agent`. Vor diesem Release behielt die neu gestartete Ansicht nur `--cwd` und Konfigurations-Flags wie `--settings` und `--mcp-config`, sodass danach gestartete Sitzungen ohne diese Standardwerte begannen. |

1076| v2.1.268 | Nachdem der erste `←` `Press ← again to open agents` oder `Press ← again to go back to agents` in einer angehängten Sitzung zeigt, [wechselt der erste Druck, der mindestens eine Sekunde später kommt](#switch-sessions-without-leaving-the-terminal), auch wenn schnellere Drücke dazwischen ignoriert wurden. Vor dieser Version startete jeder ignorierte Druck das Warten neu, sodass das Drücken von `←` in einem gleichmäßigen Tempo nicht wechselte, bis Sie über eine Sekunde pausiert haben. |1094| v2.1.274 | Wenn ein [Löschen abgelehnt wird](#what-deleting-a-session-removes), weil Git oder Ihr `WorktreeRemove`-Hook den Worktree nicht entfernen konnte, blockiert ein ausgechecktes Submodul, für das Claude Code überprüft, dass es keine nicht committeten Änderungen an getrackten Dateien hat, nicht das Angebot, erneut zu löschen und das Verzeichnis trotzdem zu entfernen. Nicht committete Arbeit in einem ausgecheckten Submodul zählt als nicht committete Änderungen, und die Meldung nennt das Submodul. Vor diesem Release blockierte jeder Submodul-Checkout im Worktree das Angebot, mit einer Meldung, dass der Worktree ein verschachteltes Repository enthält. |

1077| v2.1.260 | Wenn Sie [eine Sitzung in den Hintergrund verschieben](#from-inside-a-session), zeigt die [Agenten-Auflistung](/docs/de/cross-session-messaging#see-which-sessions-claude-can-reach) Ihrer anderen Sitzungen die Unterhaltung einmal als ihre Hintergrund-Sitzung an, und ihre Nachrichten daran erreichen das Terminal nicht mehr, von dem Sie sie verschoben haben. Vor dieser Version konnte das Terminal als zweite interaktive Sitzung unter dem Namen der Unterhaltung aufgelistet bleiben, und eine Sitzung, die die Unterhaltung vor dem Verschieben benachrichtigt hatte, lieferte weiterhin an dieses Terminal. |1095| v2.1.268 | Wenn ein [Löschen abgelehnt wird](#what-deleting-a-session-removes), weil Git oder Ihr `WorktreeRemove`-Hook den Worktree nicht entfernen konnte, nennt die Meldung die Ursache, einschließlich der Art, wie ein Hook beendet wurde, und des Anfangs seiner stderr-Ausgabe. Bei einem verknüpften Worktree unter `.claude/worktrees/` des Repositorys ohne nicht committete Änderungen an getrackten Dateien, ohne verschachteltes Repository darin und ohne einen Eintrag einer anderen Sitzung, der ihn nennt, entfernt erneutes Löschen der Sitzung das Verzeichnis trotzdem, aus der Agentenansicht oder mit `claude rm <id> --force-remove-worktree <worktree-id>`. Vor diesem Release zeigte die Zeile nur `worktree could not be removed (WorktreeRemove hook failed)` oder den Fehler von Git, die stderr-Ausgabe des Hooks ging nur in das Debug-Log, und erneutes Löschen wurde auf dieselbe Weise abgelehnt. |

1078| v2.1.260 | Wenn ein [Löschen über nicht gepushte Commits abgelehnt wird](#what-deleting-a-session-removes), benennt die Nachricht den Branch des Worktree und wie viele Commits nicht gepusht sind, und das erneute Löschen der Sitzung verwirft den Worktree und seine Commits. Vor dieser Version sagte die Ablehnung nur `worktree has commits that are not pushed anywhere`, das erneute Löschen wurde auf die gleiche Weise abgelehnt, und das Löschen der Sitzung erforderte das Pushen der Commits oder das manuelle Entfernen des Worktree. |1096| v2.1.268 | Nachdem das erste `←` `Press ← again to open agents` anzeigt, oder `Press ← again to go back to agents` in einer verbundenen Sitzung, [wechselt der erste Tastendruck, der mindestens eine Sekunde später erfolgt](#switch-sessions-without-leaving-the-terminal), auch wenn schnellere Tastendrücke dazwischen ignoriert wurden. Vor diesem Release startete jeder ignorierte Tastendruck die Wartezeit neu, sodass erneutes Drücken von `←` in gleichmäßigem Tempo erst wechselte, wenn Sie länger als eine Sekunde pausierten. |

1079| v2.1.257 | `←` [trennt sich von einer angehängten Sitzung, während die `/btw`-Überlagerung offen ist](#attach-to-a-session), auch mitten in einer Antwort, und die Überlagerung öffnet sich erneut, wenn Sie sich das nächste Mal anhängen. Vor dieser Version trennte sich `←` nicht, während die Überlagerung offen war. |1097| v2.1.260 | Wenn Sie [eine Sitzung in den Hintergrund verschieben](#from-inside-a-session), zeigt die [Agentenliste](/docs/de/cross-session-messaging#see-which-sessions-claude-can-reach) Ihrer anderen Sitzungen die Konversation einmal an, als ihre Hintergrundsitzung, und deren Nachrichten an sie erreichen nicht mehr das Terminal, aus dem Sie sie verschoben haben. Vor diesem Release konnte dieses Terminal als zweite interaktive Sitzung unter dem Namen der Konversation aufgeführt bleiben, und eine Sitzung, die der Konversation vor dem Verschieben Nachrichten gesendet hatte, stellte weiterhin an dieses Terminal zu. |

1080| v2.1.257 | Wenn Sie [`claude --resume <session-id> --bg`](#from-your-shell) ausführen, setzt Claude Code diese Sitzung unter ihrer eigenen ID fort oder startet eine Kopie unter einer neuen ID und druckt eine `note:`-Zeile, die erklärt warum. `--continue`, ein bloßes `--resume` und `--resume` mit einem Namen oder Pfad starten eine Kopie mit derselben Notiz. Vor dieser Version startete `--resume` mit `--bg` immer eine Kopie unter einer neuen ID und sagte nichts. |1098| v2.1.260 | Wenn ein [Löschen wegen nicht gepushter Commits abgelehnt wird](#what-deleting-a-session-removes), nennt die Meldung den Branch des Worktrees und wie viele Commits nicht gepusht sind, und erneutes Löschen der Sitzung verwirft den Worktree und seine Commits. Vor diesem Release sagte die Ablehnung nur `worktree has commits that are not pushed anywhere`, erneutes Löschen wurde auf dieselbe Weise abgelehnt, und zum Löschen der Sitzung mussten die Commits gepusht oder der Worktree von Hand entfernt werden. |

1081| v2.1.257 | Wenn Sie eine Sitzung aus einer Agenten-Ansicht versenden, die Sie mit `←` öffneten, startet Claude Code sie im [Berechtigungsmodus, den das Zielverzeichnis konfiguriert](#permission-mode) über `permissions.defaultMode`. Wenn das Verzeichnis keinen festlegt, gilt der Berechtigungsmodus der Sitzung, von der Sie kamen. Vor dieser Version startete die versendete Sitzung immer im Berechtigungsmodus der Sitzung, von der Sie kamen, und überschrieb ihn. |1099| v2.1.257 | `←` [trennt die Verbindung zu einer verbundenen Sitzung, während das `/btw`-Overlay geöffnet ist](#attach-to-a-session), auch mitten in einer Antwort, und das Overlay öffnet sich wieder, wenn Sie sich das nächste Mal verbinden. Vor diesem Release trennte `←` nicht, während das Overlay geöffnet war. |

1082| v2.1.257 | `Ctrl+S`, `Ctrl+T` und `Ctrl+G` in der Agenten-Ansicht [folgen Ihrer `keybindings.json`](#keyboard-shortcuts): `Ctrl+S` und `Ctrl+T` über die `agents:switchView`- und `agents:togglePin`-Aktionen des `Agents`-Kontexts, und `Ctrl+G` über die `chat:externalEditor`-Bindung des `Chat`-Kontexts. Vor dieser Version ignorierte die Agenten-Ansicht `keybindings.json` und diese Tasten waren fest. |1100| v2.1.257 | Wenn Sie [`claude --resume <session-id> --bg`](#from-your-shell) ausführen, setzt Claude Code diese Sitzung unter ihrer eigenen ID fort oder startet eine Kopie unter einer neuen ID und gibt eine `note:`-Zeile aus, die den Grund erklärt. `--continue`, ein alleinstehendes `--resume` und `--resume` mit einem Namen oder Pfad starten eine Kopie mit demselben Hinweis. Vor diesem Release startete `--resume` mit `--bg` immer eine Kopie unter einer neuen ID, ohne etwas mitzuteilen. |

1083| v2.1.257 | Das Starten des [Hintergrunddienstes](#the-supervisor-process) erholt sich von zwei Fehlerursachen. Bei einer macOS-npm-Installation [wartet ein Start während einer Selbstaktualisierung](/docs/de/errors#eacces-when-starting-a-background-session) auf die Installation, anstatt den Platzhalter auszuführen, den npm während des Austauschs der Binärdatei ablegt. Unter Windows wird eine veraltete `daemon.lock`, die vor dem letzten Neustart der Maschine geschrieben wurde, oder deren aufgezeichnete Prozess-ID jetzt zu einem anderen Prozess gehört, ersetzt. Vor dieser Version schlugen der macOS-Start mit `Error: claude native binary not installed.` während des Installationsfensters fehl, und die Windows-Sperre ließ jeden Start mit [`exited before it became reachable`](/docs/de/errors#background-service-exited-before-it-became-reachable) fehlschlagen, bis Sie `~/.claude/daemon.lock` löschten. |1101| v2.1.257 | Wenn Sie eine Sitzung aus einer Agentenansicht starten, die Sie mit `←` geöffnet haben, startet Claude Code sie in [dem Berechtigungsmodus, den das Zielverzeichnis konfiguriert](#permission-mode), festgelegt über `permissions.defaultMode`. Wenn das Verzeichnis keinen festlegt, gilt der Berechtigungsmodus der Sitzung, aus der Sie gekommen sind. Vor diesem Release startete die gestartete Sitzung immer im Berechtigungsmodus der Sitzung, aus der Sie gekommen waren, und überschrieb damit die Einstellung des Verzeichnisses. |

1084| v2.1.257 | Wenn Sie eine Hintergrund-Sitzung öffnen oder versenden, während ein anderer Claude Code-Prozess ein npm-Update herunterlädt, [wartet Claude Code bis zu zwei Minuten](/docs/de/errors#eacces-when-starting-a-background-session), während die Installation läuft, und schlägt dann fehl mit `Claude Code is being updated by npm on this machine`. Vor dieser Version stoppte das Warten nach zehn Sekunden, sodass das Öffnen mit `Couldn't start the background service` fehlschlug, während der Download noch lief. |1102| v2.1.257 | `Ctrl+S`, `Ctrl+T` und `Ctrl+G` in der Agentenansicht [folgen Ihrer `keybindings.json`](#keyboard-shortcuts): `Ctrl+S` und `Ctrl+T` über die Aktionen `agents:switchView` und `agents:togglePin` des Kontexts `Agents`, und `Ctrl+G` über die Tastenkombination `chat:externalEditor` des Kontexts `Chat`. Vor diesem Release ignorierte die Agentenansicht `keybindings.json`, und diese Tasten waren fest belegt. |

1085| v2.1.257 | Eine Hintergrund-Sitzung, die eine [sitzungsübergreifende Nachricht](/docs/de/cross-session-messaging#control-inbound-messages) zu Ihrer Genehmigung hält, zeigt `approve message from` auf ihrer `Needs input`-Zeile mit der Adresse des Absenders und dem Namen, den der Absender beansprucht. Vor dieser Version wechselte die Zeile zu `Needs input`, behielt aber ihren vorherigen Text, sodass nichts in `claude agents` die wartende Nachricht oder ihren Absender benannte. |1103| v2.1.257 | Das Starten des [Hintergrunddienstes](#the-supervisor-process) erholt sich von zwei Fehlerursachen. Bei einer macOS-npm-Installation [wartet ein Start während eines Selbst-Updates auf die Installation](/docs/de/errors#eacces-when-starting-a-background-session), statt den Platzhalter auszuführen, den npm beim Ersetzen der Binärdatei ablegt. Unter Windows wird eine veraltete `daemon.lock` ersetzt, die vor dem letzten Systemstart geschrieben wurde oder deren gespeicherte Prozess-ID inzwischen zu einem anderen Prozess gehört. Vor diesem Release schlug der macOS-Start während des Installationsfensters mit `Error: claude native binary not installed.` fehl, und die Windows-Sperre ließ jeden Start mit [`exited before it became reachable`](/docs/de/errors#background-service-exited-before-it-became-reachable) fehlschlagen, bis Sie `~/.claude/daemon.lock` löschten. |

1086| v2.1.257 | Eine Eingabeaufforderung, die mit `Ctrl+S` in einer geöffneten Hintergrund-Sitzung verstaut wird, [wird mit der Sitzung beibehalten](#what-persists-across-restarts), sodass `Ctrl+S` sie nach dem Stoppen und erneuten Starten des Sitzungsprozesses wiederherstellt. Vor dieser Version lebte der Verstau nur im laufenden Prozess und ging verloren, wenn die Sitzung lange genug untätig war, damit ihr Prozess stoppte, oder wenn sie gestoppt und dann erneut geöffnet wurde. |1104| v2.1.257 | Wenn Sie eine Hintergrundsitzung öffnen oder starten, während ein anderer Claude-Code-Prozess ein npm-Update herunterlädt, [wartet Claude Code bis zu zwei Minuten](/docs/de/errors#eacces-when-starting-a-background-session), während die Installation läuft, und schlägt dann mit der Meldung `Claude Code is being updated by npm on this machine` fehl. Vor diesem Release endete das Warten nach zehn Sekunden, sodass das Öffnen mit `Couldn't start the background service` fehlschlug, während der Download noch lief. |

1087| v2.1.251 | In einer Hintergrund-Sitzung, die nicht [in einen Worktree verschoben wurde](#how-file-edits-are-isolated), können Claude und die Subagenten, die es spawnt, Dateien in einem verknüpften Git-Worktree bearbeiten. |1105| v2.1.257 | Eine Hintergrundsitzung, die eine [sitzungsübergreifende Nachricht](/docs/de/cross-session-messaging#control-inbound-messages) zu Ihrer Genehmigung zurückhält, zeigt `approve message from` in ihrer `Needs input`-Zeile an, mit der Adresse des Absenders und dem Namen, den der Absender angibt. Vor diesem Release wechselte die Zeile zu `Needs input`, behielt aber ihren vorherigen Text, sodass nichts in `claude agents` die wartende Nachricht oder ihren Absender nannte. |

1088| v2.1.251 | Claude Code leitet ein Cloud-Provider-Gateway weiter, das in der Shell exportiert wird, von der Sie versenden, wie `ANTHROPIC_VERTEX_BASE_URL` oder `ANTHROPIC_BEDROCK_BASE_URL` mit seinem Auth-Bypass-Flag, an [den Worker der Sitzung](#llm-gateway) unter denselben Bedingungen wie `ANTHROPIC_BASE_URL`. Vor dieser Version schlugen alle Anfragen fehl, die die Sitzung machte, wenn Sie von einer Shell aus backgroundeten oder versendeten, die nur durch ein solches Gateway authentifiziert wurde, weil der Endpunkt und das Flag aus ihrer Umgebung gelöscht wurden. |1106| v2.1.257 | Ein mit `Ctrl+S` in einer geöffneten Hintergrundsitzung zwischengespeicherter Prompt [wird mit der Sitzung aufbewahrt](#what-persists-across-restarts), sodass `Ctrl+S` ihn wiederherstellt, nachdem der Prozess der Sitzung gestoppt und wieder gestartet wurde. Vor diesem Release existierte der zwischengespeicherte Prompt nur im laufenden Prozess und ging verloren, wenn die Sitzung lange genug inaktiv war, dass ihr Prozess stoppte, oder wenn sie gestoppt und dann wieder geöffnet wurde. |

1089| v2.1.251 | Wenn eine Hintergrund-Sitzung startet, während ein anderer Claude Code-Prozess einen [Plugin-Marketplace](/docs/de/plugins/overview) aktualisiert, wie eine Schwester-Sitzung, die die [Marketplace-Autoupdate](/docs/de/plugins/install#keep-plugins-updated) ausführt, hält Claude Code die Plugins dieses Marketplace verfügbar. Vor dieser Version konnte eine solche Sitzung ohne Skills, Agenten, Hooks und MCP-Server dieses Marketplace starten und so für ihren gesamten Lauf bleiben. |1107| v2.1.251 | In einer Hintergrundsitzung, die nicht [in einen Worktree gewechselt ist](#how-file-edits-are-isolated), können Claude und die von ihm gestarteten Subagenten Dateien innerhalb eines verknüpften Git-Worktrees bearbeiten. |

1090| v2.1.248 | `Shift+Enter` in der [Versand-Eingabe](#keyboard-shortcuts) fügt eine neue Zeile ein, was der Haupteingabeaufforderung entspricht, und `Ctrl+Enter` versendet und hängt sich sofort in Terminals an, in denen die `?`-Überlagerung `ctrl+enter to start and open` auflistet. Vor dieser Version versendete `Shift+Enter` und hängte sich an. |1108| v2.1.251 | Claude Code leitet ein Cloud-Anbieter-Gateway, das in der Shell exportiert ist, aus der Sie starten, etwa `ANTHROPIC_VERTEX_BASE_URL` oder `ANTHROPIC_BEDROCK_BASE_URL` mit dem zugehörigen Flag zur Umgehung der Authentifizierung, unter denselben Bedingungen wie `ANTHROPIC_BASE_URL` an [den Worker der Sitzung](#llm-gateway) weiter. Vor diesem Release schlug jede Anfrage der Sitzung fehl, wenn Sie aus einer Shell, die nur über ein solches Gateway authentifiziert war, in den Hintergrund verschoben oder gestartet haben, weil der Endpunkt und das Flag aus ihrer Umgebung entfernt wurden. |

1091| v2.1.248 | [Das Löschen einer Sitzung](#what-deleting-a-session-removes) ist erfolgreich, wenn die Commits des Worktree bereits auf der lokalen Kopie des Standard-Branch Ihres `origin`-Remote vorhanden sind und Ihr Haupt-Checkout diesen Branch ausgecheckt hat; vor dieser Version wurde das Löschen mit `has commits that are not pushed anywhere` abgelehnt. |1109| v2.1.251 | Wenn eine Hintergrundsitzung startet, während ein anderer Claude-Code-Prozess einen [Plugin-Marketplace](/docs/de/plugins/overview) aktualisiert, etwa eine parallele Sitzung, die das [automatische Marketplace-Update](/docs/de/plugins/install#keep-plugins-updated) ausführt, hält Claude Code die Plugins dieses Marketplace verfügbar. Vor diesem Release konnte eine solche Sitzung ohne die Skills, Agenten, Hooks und MCP-Server dieses Marketplace starten und für ihre gesamte Laufzeit so bleiben. |

1092| v2.1.248 | Eine Sitzung, die mit `←` oder `/background` in den Hintergrund verschoben wird, hält die [`git worktree lock`](/docs/de/worktrees#clean-up-subagent-and-background-session-worktrees) auf ihrem Worktree, während sie läuft; vor dieser Version gab das Backgrounding die Sperre frei, und die Bereinigung oder `git worktree remove` konnte den Worktree unter der laufenden Sitzung entfernen. |1110| v2.1.248 | `Shift+Enter` in der [Dispatch-Eingabe](#keyboard-shortcuts) fügt wie im Haupt-Prompt einen Zeilenumbruch ein, und `Ctrl+Enter` startet die Sitzung und verbindet sich sofort mit ihr, in Terminals, in denen das `?`-Overlay `ctrl+enter to start and open` auflistet. Vor diesem Release startete `Shift+Enter` die Sitzung und verband sich mit ihr. |

1093| v2.1.248 | Eine Hintergrund-Sitzung, die nicht auf Ihre Eingabe wartete und mehr als 48 Stunden nach ihrer letzten Aktivität als tot befunden wird, wie nach Tagen, in denen der Computer ausgeschaltet war, [zeigt als gestoppt](#sessions-show-as-failed-after-shutdown) mit `ended while the background service was off`, und `Enter` darauf fragt, bevor die gespeicherte Unterhaltung fortgesetzt wird. Vor dieser Version tauchte eine solche Sitzung als frischer Fehler oben in der Liste auf, und ein einzelnes `Enter` zog die Wochen alte Unterhaltung in den Vordergrund. |1111| v2.1.248 | [Das Löschen einer Sitzung](#what-deleting-a-session-removes) gelingt, wenn die Commits des Worktrees bereits in der lokalen Kopie des Standard-Branches Ihres `origin`-Remotes enthalten sind und in Ihrem Haupt-Checkout dieser Branch ausgecheckt ist; vor diesem Release wurde das Löschen mit `has commits that are not pushed anywhere` abgelehnt. |

1094| v2.1.248 | Das Öffnen einer gestoppten Zeile, deren Unterhaltung [Sie in einem anderen Terminal fortgesetzt haben](#opening-a-session-says-the-conversation-is-already-open), wird mit `Can't open — this session is running in another terminal` abgelehnt, und die Zeile zeigt `Open in a terminal` anstatt unter `Working` angezeigt zu werden. Vor dieser Version startete das Öffnen der Zeile einen zweiten Prozess, der in dieselbe Unterhaltung schrieb. |1112| v2.1.248 | Eine mit `←` oder `/background` in den Hintergrund verschobene Sitzung hält die [`git worktree lock`](/docs/de/worktrees#clean-up-subagent-and-background-session-worktrees)-Sperre für ihren Worktree, solange sie läuft; vor diesem Release gab das Verschieben in den Hintergrund die Sperre frei, und die Bereinigung oder `git worktree remove` konnte den Worktree unter der laufenden Sitzung entfernen. |

1095| v2.1.248 | Eine Hintergrund-Sitzung, die auf eine Genehmigungsentscheidung wartet, während ein `PermissionRequest`- oder `PreToolUse`-Hook eine ungültige Antwort ausgegeben hat, [benennt das Hook-Ereignis und den Schema-Fehler auf ihrer Zeile](#peek-and-reply). Vor dieser Version zeigte die Zeile nur die ausstehende Anfrage. |1113| v2.1.248 | Eine Hintergrundsitzung, die nicht auf Ihre Eingabe gewartet hat und mehr als 48 Stunden nach ihrer letzten Aktivität als beendet erkannt wird, etwa nachdem der Rechner tagelang ausgeschaltet war, [wird als gestoppt angezeigt](#sessions-show-as-failed-after-shutdown) mit `ended while the background service was off`, und `Enter` darauf fragt nach, bevor die gespeicherte Konversation fortgesetzt wird. Vor diesem Release erschien eine solche Sitzung erneut als frischer Fehler, an den Anfang der Liste sortiert, und ein einziges `Enter` holte die Wochen alte Konversation in den Vordergrund. |

1096| v2.1.248 | Unter Windows antwortet `claude agents` auf die Tastatur, wenn es in einer Terminal-Registerkarte gestartet wird, die ein früheres Programm im win32-Input-Modus hinterlassen hat. Vor dieser Version decodierte Claude Code die Schlüsseldatensätze nicht, die eine solche Registerkarte sendet. |1114| v2.1.248 | Das Öffnen einer gestoppten Zeile, deren Konversation [Sie in einem anderen Terminal fortgesetzt haben](#opening-a-session-says-the-conversation-is-already-open), wird mit `Can't open — this session is running in another terminal` abgelehnt, und die Zeile zeigt `Open in a terminal` an, statt unter `Working` zu erscheinen. Vor diesem Release startete das Öffnen der Zeile einen zweiten Prozess, der in dieselbe Konversation schrieb. |

1097| v2.1.247 | Unter Linux und WSL schlägt eine Sitzung [deren Terminal-Host-Prozess gestorben ist](#the-terminal-host-died-or-the-session-stopped-responding) innerhalb von Sekunden mit dem Grund fehl. Ein Open, das keine Ausgabe erzeugt, endet nach etwa zehn Sekunden mit einem Neustart-Angebot, und `Enter` auf der Zeile startet die Sitzung mit ihrer Unterhaltung neu; `claude attach <id>` meldet die Ursache und beendet sich. Vor dieser Version zeigte das Öffnen einer solchen Sitzung `opening… · esc to cancel` unbegrenzt an und `claude attach <id>` wartete ohne Fehler zu melden. |1115| v2.1.248 | Eine Hintergrundsitzung, die auf eine Berechtigungsentscheidung wartet, während ein `PermissionRequest`- oder `PreToolUse`-Hook eine ungültige Antwort ausgegeben hat, [nennt das Hook-Event und den Schemafehler in ihrer Zeile](#peek-and-reply). Vor diesem Release zeigte die Zeile nur die ausstehende Anfrage. |

1098| v2.1.246 | Bei einer npm-Installation wartet Claude Code, wenn der [Hintergrunddienst](#the-supervisor-process) nicht startet, während `npm install -g @anthropic-ai/claude-code` die Binärdatei ersetzt, bis zu zehn Sekunden, bis die Installation abgeschlossen ist, und versucht es erneut, bevor [`EACCES: permission denied`](/docs/de/errors#eacces-when-starting-a-background-session) gemeldet wird. |1116| v2.1.248 | Unter Windows reagiert `claude agents` auf die Tastatur, wenn es in einem Terminal-Tab gestartet wird, den ein früheres Programm im win32-input-mode hinterlassen hat. Vor diesem Release dekodierte Claude Code die Tastendatensätze nicht, die ein solcher Tab sendet. |

1099| v2.1.246 | Wenn der [Hintergrunddienst](#the-supervisor-process)-Prozess nach dem Drucken eines Fehlers stirbt, meldet Claude Code den Fehler und [zitiert die erste Fehlerzeile des Dienstes](/docs/de/errors#background-service-exited-before-it-became-reachable). |1117| v2.1.247 | Unter Linux und WSL schlägt eine Sitzung, [deren Terminal-Host-Prozess beendet wurde](#the-terminal-host-died-or-the-session-stopped-responding), innerhalb von Sekunden mit dem Grund fehl. Ein Öffnen, das keine Ausgabe erzeugt, endet nach etwa zehn Sekunden mit einem Angebot zum Neustart, und `Enter` auf der Zeile startet die Sitzung mit ihrer Konversation neu; `claude attach <id>` meldet die Ursache und beendet sich. Vor diesem Release zeigte das Öffnen einer solchen Sitzung unbegrenzt `opening… · esc to cancel` an, und `claude attach <id>` wartete, ohne einen Fehler zu melden. |

1100| v2.1.246 | Wenn Ihr Computer in den Ruhezustand wechselt, während der [Hintergrunddienst](#the-supervisor-process) startet, versucht Claude Code den Start einmal erneut, anstatt fehlzuschlagen. |1118| v2.1.246 | Bei einer npm-Installation wartet Claude Code, wenn der [Hintergrunddienst](#the-supervisor-process) nicht startet, während `npm install -g @anthropic-ai/claude-code` die Binärdatei ersetzt, bis zu zehn Sekunden auf den Abschluss der Installation und versucht es erneut, bevor es [`EACCES: permission denied`](/docs/de/errors#eacces-when-starting-a-background-session) meldet. |

1101| v2.1.246 | Claude Code wartet etwa zwei Minuten statt 45 Sekunden auf einen neu gestarteten [Hintergrunddienst](#the-supervisor-process), der am Leben ist, aber langsam Verbindungen akzeptiert. |1119| v2.1.246 | Wenn der Prozess des [Hintergrunddienstes](#the-supervisor-process) nach der Ausgabe eines Fehlers beendet wird, meldet Claude Code den Fehlschlag und [zitiert die erste Fehlerzeile des Dienstes](/docs/de/errors#background-service-exited-before-it-became-reachable). |

1120| v2.1.246 | Wenn Ihr Rechner in den Ruhezustand wechselt, während der [Hintergrunddienst](#the-supervisor-process) startet, versucht Claude Code den Start einmal erneut, statt fehlzuschlagen. |

1121| v2.1.246 | Claude Code wartet etwa zwei Minuten statt 45 Sekunden auf einen neu gestarteten [Hintergrunddienst](#the-supervisor-process), der läuft, aber Verbindungen nur langsam annimmt. |

1102| v2.1.246 | Der [Hintergrunddienst](#the-supervisor-process) startet aus Ihrem Home-Verzeichnis, sodass unter macOS und Linux ein Startverzeichnis, das gelöscht oder verschoben wurde, den Start nicht mehr blockiert. |1122| v2.1.246 | Der [Hintergrunddienst](#the-supervisor-process) startet aus Ihrem Home-Verzeichnis, sodass unter macOS und Linux ein Startverzeichnis, das gelöscht oder verschoben wurde, den Start nicht mehr blockiert. |

1103| v2.1.246 | `/fork` [kopiert die vollständige Unterhaltung](#copy-the-session-with-%2Ffork) aus einer Sitzung, die selbst als Kopie gestartet wurde und seit dem Start keine neue Eingabeaufforderung aufgezeichnet hat: eine `/fork`-Kopie, an die Sie sich angehängt haben, eine Sitzung, die nach `←` oder `/background` in den Hintergrund verschoben wurde und erneut angehängt wurde, oder eine Sitzung, die mit `claude --resume <id> --fork-session` gestartet wurde. Vor dieser Version druckte Claude Code die normale Bestätigung, wenn Sie `/fork` in einer solchen Sitzung ausführten, bevor Sie ihr eine neue Eingabeaufforderung sendeten, startete aber die Kopie mit einer leeren Unterhaltung. Das Verschieben einer solchen Sitzung in den Hintergrund mit `←` oder `/background` verlor die Unterhaltung auf die gleiche Weise. |1123| v2.1.246 | `/fork` [kopiert die vollständige Konversation](#copy-the-session-with-%2Ffork) aus einer Sitzung, die selbst als Kopie gestartet wurde und seitdem keinen neuen Prompt aufgezeichnet hat: eine `/fork`-Kopie, mit der Sie sich verbunden haben, eine Sitzung, mit der Sie sich erneut verbunden haben, nachdem `←` oder `/background` sie in den Hintergrund verschoben hat, oder eine mit `claude --resume <id> --fork-session` gestartete Sitzung. Vor diesem Release gab Claude Code, wenn Sie `/fork` in einer solchen Sitzung ausgeführt haben, bevor Sie ihr einen neuen Prompt gesendet haben, die normale Bestätigung aus, startete die Kopie aber mit einer leeren Konversation. Das Verschieben einer solchen Sitzung in den Hintergrund mit `←` oder `/background` verlor die Konversation auf dieselbe Weise. |

1104| v2.1.246 | Wenn Sie eine Sitzung öffnen, die Sie gerade versendet haben, während ihr Worker-Prozess noch startet, wie durch Drücken von `Enter` auf ihrer Zeile, wartet Claude Code auf den Prozess und hängt sich dann an. Vor dieser Version konnte Claude Code die Sitzung mit [`Session <id> was stopped while the respawn was in flight`](/docs/de/errors#session-was-stopped-while-the-respawn-was-in-flight) stoppen, wenn Sie `Enter` drückten, während der Prozess noch startete. |1124| v2.1.246 | Wenn Sie eine gerade gestartete Sitzung öffnen, während ihr Worker-Prozess noch startet, etwa durch Drücken von `Enter` auf ihrer Zeile, wartet Claude Code auf den Prozess und verbindet sich dann. Vor diesem Release konnte Claude Code, wenn Sie `Enter` drückten, während der Prozess noch startete, die Sitzung mit [`Session <id> was stopped while the respawn was in flight`](/docs/de/errors#session-was-stopped-while-the-respawn-was-in-flight) stoppen. |

1105| v2.1.246 | Wenn Sie eine benannte Sitzung [in den Hintergrund verschieben](#from-inside-a-session), listet Claude Code sie einmal auf, und wenn Sie dieselbe Unterhaltung erneut in den Hintergrund verschieben, nummeriert es den Namen der neuen Zeile, wie `my-session (2)`, wobei die vorhandene Zeile ihren Namen behält. Vor dieser Version konnte das Terminal, in das Sie `←` drückten, in `claude agents --json` als zweite Sitzung unter demselben Namen angezeigt werden, und wenn Sie dieselbe Unterhaltung erneut in den Hintergrund verschieben, fügte Claude Code eine weitere Zeile unter dem identischen Namen hinzu. |1125| v2.1.246 | Wenn Sie eine benannte Sitzung [in den Hintergrund verschieben](#from-inside-a-session), listet Claude Code sie einmal auf, und wenn Sie dieselbe Konversation erneut in den Hintergrund verschieben, nummeriert es den Namen der neuen Zeile, etwa `my-session (2)`, während die bestehende Zeile ihren Namen behält. Vor diesem Release konnte das Terminal, in dem Sie `←` gedrückt haben, in `claude agents --json` als zweite Sitzung unter demselben Namen erscheinen, und wenn Sie dieselbe Konversation erneut in den Hintergrund verschoben, fügte Claude Code eine weitere Zeile unter dem identischen Namen hinzu. |

1106| v2.1.239 | Mit [Vim-Editor-Modus](/docs/de/interactive-mode#vim-editor-mode) aktiviert, wechselt das Drücken von `Esc` in der Eingabe der Agenten-Ansicht vom INSERT- zum NORMAL-Modus und behält Ihren Text, was der Haupteingabeaufforderung entspricht; im NORMAL-Modus mit Text noch in der Eingabe löscht das Drücken von `Esc` ihn, und das Drücken von `Esc` auf einer leeren Eingabe beendet, wie die [`Esc`-Verknüpfung](#keyboard-shortcuts) beschreibt. Vor dieser Version löschte `Esc` die Eingabe. |1126| v2.1.239 | Bei aktiviertem [Vim-Editormodus](/docs/de/interactive-mode#vim-editor-mode) wechselt das Drücken von `Esc` in der Eingabe der Agentenansicht vom INSERT- in den NORMAL-Modus und behält Ihren Text bei, wie im Haupt-Prompt; im NORMAL-Modus mit noch vorhandenem Text in der Eingabe löscht `Esc` diesen, und `Esc` bei leerer Eingabe beendet die Ansicht, wie die [`Esc`-Tastenkombination](#keyboard-shortcuts) beschreibt. Vor diesem Release löschte `Esc` die Eingabe. |

1107| v2.1.233 | Für eine Sitzung, die mit einer GitLab-Merge-Anfrage verknüpft ist, schreibt Claude Code das Label der Zeile in GitLabs `!1234`-Referenzsyntax. Sie können auch die URL der Merge-Anfrage in die [Versand-Eingabe](#filter-sessions) einfügen, um diese Sitzung auszuwählen. Vor dieser Version wurde das Label als `#1234` gerendert, und eine eingefügte Merge-Anfrage-URL stimmte mit einer Sitzung nur überein, wenn ihre erste Eingabeaufforderung die URL enthielt. |1127| v2.1.233 | Bei einer Sitzung, die mit einem GitLab-Merge-Request verknüpft ist, schreibt Claude Code die Beschriftung der Zeile in der GitLab-Referenzsyntax `!1234`. Sie können auch die URL des Merge Requests in die [Dispatch-Eingabe](#filter-sessions) einfügen, um diese Sitzung auszuwählen. Vor diesem Release wurde die Beschriftung als `#1234` dargestellt, und eine eingefügte Merge-Request-URL passte nur dann zu einer Sitzung, wenn deren erster Prompt die URL enthielt. |

1108| v2.1.227 | [Das Löschen einer Sitzung](#what-deleting-a-session-removes) behält die Sitzung und ihren Worktree, während eine andere Live-Claude Code-Sitzung in diesem Worktree-Verzeichnis läuft. Die Agenten-Ansicht zeigt `not deleted` auf der Zeile und den Grund in der Fußzeile an, und `claude rm` druckt `kept <id>` mit dem Grund, der die Prozess-ID der anderen Sitzung benennt. Vor dieser Version entfernte das Löschen der Sitzung den Worktree, während die andere Sitzung noch darin arbeitete. |1128| v2.1.227 | [Das Löschen einer Sitzung](#what-deleting-a-session-removes) behält die Sitzung und ihren Worktree bei, solange eine andere aktive Claude-Code-Sitzung in diesem Worktree-Verzeichnis läuft. Die Agentenansicht zeigt `not deleted` in der Zeile und den Grund in der Fußzeile an, und `claude rm` gibt `kept <id>` mit dem Grund aus, der die Prozess-ID der anderen Sitzung nennt. Vor diesem Release entfernte das Löschen der Sitzung den Worktree, während die andere Sitzung noch darin arbeitete. |

1109| v2.1.225 | `claude agents` in einem Verzeichnis, das Sie nicht vertraut haben, zeigt denselben [Workspace-Vertrauensdialog](/docs/de/permissions#project-allow-rules-and-workspace-trust), den `claude` beim Start zeigt, bevor die Agenten-Ansicht öffnet. Das Akzeptieren speichert Vertrauen für diesen Workspace; das Ablehnen beendet sich, ohne die Agenten-Ansicht zu öffnen. Vor dieser Version öffnete sich `claude agents` ohne zu fragen, sodass Sitzungen, die Sie daraus versendeten, in einem Verzeichnis liefen, das Sie nie vertraut haben.<br /><br />Mit der nach Verzeichnis gruppierten Liste hebt das Bewegen der Maus über eine Zeile sie hervor, ohne das [Versand-Ziel](#dispatch-to-a-specific-directory) zu ändern; das Auswählen einer Zeile mit den Pfeiltasten oder einem Klick ändert das Ziel immer noch. Vor dieser Version änderte das Bewegen der Maus über eine Sitzung in einem anderen Projekt stillschweigend das Verzeichnis, in das die nächste versendete Sitzung startet. |1129| v2.1.225 | `claude agents` zeigt in einem Verzeichnis, dem Sie nicht vertraut haben, denselben [Workspace-Vertrauensdialog](/docs/de/permissions#project-allow-rules-and-workspace-trust), den `claude` beim Start anzeigt, bevor sich die Agentenansicht öffnet. Akzeptieren speichert das Vertrauen für diesen Workspace; Ablehnen beendet das Programm, ohne die Agentenansicht zu öffnen. Vor diesem Release öffnete sich `claude agents` ohne Nachfrage, sodass daraus gestartete Sitzungen in einem Verzeichnis liefen, für das Sie nie um Vertrauen gebeten worden waren.<br /><br />Wenn die Liste nach Verzeichnis gruppiert ist, hebt das Bewegen der Maus über eine Zeile diese hervor, ohne das [Dispatch-Ziel](#dispatch-to-a-specific-directory) zu ändern; das Auswählen einer Zeile mit den Pfeiltasten oder per Klick ändert das Ziel weiterhin. Vor diesem Release änderte das Bewegen der Maus über eine Sitzung in einem anderen Projekt unbemerkt das Verzeichnis, in dem die nächste gestartete Sitzung begann. |

1110| v2.1.221 | `/status` zeigt eine `Session kind`-Zeile: `background job · attached` oder `background job · unattended` in einer Hintergrund-Sitzung, je nachdem, ob ein Terminal angehängt ist, und `interactive` in jeder anderen Sitzung. Vor dieser Version meldete `/status` die Sitzungsart nicht.<br /><br />`/fork`: Claude Code weist [die Kopie](#from-inside-a-session) an, ihre Arbeit von der ursprünglichen Sitzung zu isolieren: Die Kopie erstellt ihren eigenen Worktree, bevor sie Code-Änderungen vornimmt, bleibt aus dem Worktree der ursprünglichen Sitzung heraus, und basiert einen neuen Branch auf dem Branch der ursprünglichen Sitzung, wenn ihre Aufgabe auf dieser Arbeit aufbaut. Siehe den verknüpften Abschnitt für die genauen Bedingungen. Vor dieser Version erhielt die Kopie keine Isolationsanweisung und konnte am Ende den Worktree bearbeiten oder den Checkout auschecken, an dem die ursprüngliche Sitzung noch arbeitete.<br /><br />Mit [Vim-Editor-Modus](/docs/de/interactive-mode#vim-editor-mode) aktiviert, zeigt das Drücken von `←` direkt nach dem Rückgängigmachen der Eingabeaufforderung auf leer mit `u` dieselbe Bestätigung wie das Löschen des Textes oder das Durchlaufen der Eingabeaufforderungs-Historie, und wechselt nur beim zweiten Druck; vor dieser Version wechselte der Druck sofort. |1130| v2.1.221 | `/status` zeigt eine `Session kind`-Zeile: `background job · attached` oder `background job · unattended` in einer Hintergrundsitzung, je nachdem, ob ein Terminal verbunden ist, und `interactive` in jeder anderen Sitzung. Vor diesem Release meldete `/status` die Sitzungsart nicht.<br /><br />`/fork`: Claude Code weist [die Kopie](#from-inside-a-session) an, ihre Arbeit von der der ursprünglichen Sitzung zu isolieren: Die Kopie erstellt einen eigenen Worktree, bevor sie Codeänderungen vornimmt, hält sich aus dem Worktree der ursprünglichen Sitzung heraus und basiert einen neuen Branch auf dem Branch des Originals, wenn ihre Aufgabe auf dieser Arbeit aufbaut. Die genauen Bedingungen finden Sie im verlinkten Abschnitt. Vor diesem Release erhielt die Kopie keine Isolationsanweisung und konnte am Ende den Worktree oder Checkout bearbeiten, in dem die ursprüngliche Sitzung noch arbeitete.<br /><br />Bei aktiviertem [Vim-Editormodus](/docs/de/interactive-mode#vim-editor-mode) fragt das Drücken von `←` direkt nachdem der Prompt mit `u` bis zum leeren Zustand rückgängig gemacht wurde, nach derselben Bestätigung wie das Löschen des Textes oder das Blättern durch den Prompt-Verlauf, und wechselt erst beim zweiten Drücken; vor diesem Release wechselte das Drücken sofort. |

1111| v2.1.219 | Mit [Vim-Editor-Modus](/docs/de/interactive-mode#vim-editor-mode) aktiviert, öffnet das Drücken von `←` auf einer leeren Eingabeaufforderung die Agenten-Ansicht sowohl aus dem NORMAL- als auch aus dem INSERT-Modus, und der Hinweis `←` der Fußzeile wird im NORMAL-Modus angezeigt; vor dieser Version waren die Geste und der Hinweis nur INSERT-Modus, und im NORMAL-Modus machte `←` auf einer leeren Eingabeaufforderung nichts. Das Eingeben in die Eingabe, während Claude Code wartet, die Sitzung in den Hintergrund zu verschieben, bricht den Wechsel mit `Backgrounding cancelled — you have unsent text in the input. Send it or clear it, then press ← again.` ab, sodass ein eingegebener Entwurf nicht verloren geht. |1131| v2.1.219 | Bei aktiviertem [Vim-Editormodus](/docs/de/interactive-mode#vim-editor-mode) öffnet das Drücken von `←` bei leerem Prompt die Agentenansicht sowohl aus dem NORMAL- als auch aus dem INSERT-Modus, und der `←`-Hinweis in der Fußzeile wird im NORMAL-Modus angezeigt; vor diesem Release funktionierten Geste und Hinweis nur im INSERT-Modus, und im NORMAL-Modus bewirkte `←` bei leerem Prompt nichts. Eine Eingabe ins Eingabefeld, während Claude Code darauf wartet, die Sitzung in den Hintergrund zu verschieben, bricht den Wechsel mit `Backgrounding cancelled — you have unsent text in the input. Send it or clear it, then press ← again.` ab, sodass ein eingegebener Entwurf nicht verloren geht. |

1112| v2.1.218 | Das Drücken von `←` innerhalb von zwei Sekunden nach einem Löschen, das die Eingabeaufforderung geleert hat, oder nach dem Durchlaufen der Eingabeaufforderungs-Historie, zeigt `Press ← again to open agents` oder `Press ← again to go back to agents` in einer angehängten Sitzung, und wechselt nur beim zweiten Druck mindestens eine Sekunde später; vor dieser Version wechselte der Druck sofort. Ein `←`, das in eingefügter oder skriptierter Eingabe ankommt, löst den Wechsel nicht mehr aus. Das Verschieben einer Vordergrund-Sitzung in den Hintergrund mit `←` zeigt `Your conversation moved to the background` über der Liste an, und `Esc` an der Wurzel der Agenten-Ansicht kehrt zu dieser Unterhaltung zurück, anstatt zur Shell zu beenden, wobei doppeltes `Ctrl+C` das Beenden bleibt; wenn die Unterhaltung nicht erneut geöffnet werden kann, beendet sich Claude Code und druckt einen `claude --resume`-Befehl dafür. Unter Windows zeigt ein `←`, das innerhalb von etwa einer halben Sekunde nach dem Anhängen gedrückt wird, `Ambiguous ←, press again to detach` an und trennt sich beim zweiten Druck. |1132| v2.1.218 | Das Drücken von `←` innerhalb von zwei Sekunden nach einer Löschung, die den Prompt geleert hat, oder nach dem Blättern durch den Prompt-Verlauf zeigt `Press ← again to open agents` an, oder `Press ← again to go back to agents` in einer verbundenen Sitzung, und wechselt erst bei einem zweiten Drücken mindestens eine Sekunde später; vor diesem Release wechselte das Drücken sofort. Ein `←`, das innerhalb eingefügter oder per Skript erzeugter Eingabe ankommt, löst den Wechsel nicht mehr aus. Das Verschieben einer Vordergrundsitzung in den Hintergrund mit `←` zeigt `Your conversation moved to the background` über der Liste an, und `Esc` auf der obersten Ebene der Agentenansicht kehrt zu dieser Konversation zurück, statt zur Shell zu beenden, wobei doppeltes `Ctrl+C` weiterhin zum Beenden dient; wenn die Konversation nicht wieder geöffnet werden kann, beendet sich Claude Code und gibt einen `claude --resume`-Befehl dafür aus. Unter Windows zeigt ein `←`, das innerhalb von etwa einer halben Sekunde nach dem Verbinden gedrückt wird, `Ambiguous ←, press again to detach` an und trennt beim zweiten Drücken. |

1113| v2.1.217 | Das Pull-Request-Badge auf der Zeile einer Sitzung wird als Hyperlink gerendert, auch wenn Claude Code die Terminal-Hyperlink-Unterstützung nicht erkennen kann, beispielsweise über SSH oder tmux; setzen Sie [`FORCE_HYPERLINK=0`](/docs/de/env-vars), um es als Klartext zu rendern. Vor dieser Version wurde das Badge als Klartext gerendert, wenn die Unterstützung nicht erkannt wurde. |1133| v2.1.217 | Das Pull-Request-Badge in der Zeile einer Sitzung wird als Hyperlink dargestellt, auch wenn Claude Code keine Hyperlink-Unterstützung des Terminals erkennen kann, zum Beispiel über SSH oder tmux; setzen Sie [`FORCE_HYPERLINK=0`](/docs/de/env-vars), um es als reinen Text darzustellen. Vor diesem Release wurde das Badge als reiner Text dargestellt, wenn keine Unterstützung erkannt wurde. |

1114| v2.1.216 | `/fork`: die [Bestätigung](#from-inside-a-session) ist eine Zeile, die den Zustand der Kopie, den Namen ihrer Agenten-Ansicht-Zeile und ihre Sitzungs-ID für `claude attach` zeigt, endend mit `runs in the origin tree` oder `edits this checkout` nur, wenn die Kopie im Haupt-Arbeitsbaum läuft oder den Checkout bearbeitet, den Sie offen haben. Das Klicken auf den Namen verschiebt diese Sitzung in den Hintergrund und öffnet die Agenten-Ansicht in der Sitzung der Kopie. Die Bestätigung wiederholt nicht mehr den Berechtigungsmodus der Kopie; frühere Versionen druckten eine mehrzeilige Bestätigung ohne klickbaren Namen.<br /><br />Benötigt Eingabe: `/install-github-app` und die `/mcp`-Einstellungsliste, die ausgeführt werden, während niemand angehängt ist, zeigen die Sitzung unter `Needs input` mit einer Zeile, die den Befehl benennt, und das Anhängen und erneute Ausführen des Befehls setzt fort; von v2.1.208 bis v2.1.215 wurden sie in diesem Zustand vollständig abgelehnt.<br /><br />`--agent`-Wiederherstellung: Das Fortsetzen oder Neustarten einer [backgrounded `--agent`-Sitzung](#from-your-shell) stellt den System-Prompt des Agenten und die Tool-Einschränkungen wieder her, wobei das Verzeichnis der Sitzung selbst nach dem Agenten durchsucht wird, wenn sein Workspace vertraut wird; eine Sitzung, deren Agent nicht mehr existiert, wird mit den Standard-Tools und dem System-Prompt fortgesetzt und öffnet sich mit einer sichtbaren Warnung, anstatt stillschweigend auf den Standard-Agent zurückzusetzen.<br /><br />`Ctrl+X`: Das zweimalige Drücken löscht eine Sitzung, auch wenn der Stoppversuch fehlschlägt, anstatt dass ein fehlgeschlagener Stopp das ausstehende Löschen abbricht, und eine gelöschte Sitzung, deren Worker-Prozess gestorben war, taucht beim nächsten Aktualisieren nicht mehr auf.<br /><br />Worktree-Löschung: Eine Sitzung, deren Worktree-Verzeichnis zu keinem Git-Repository gehört, kann gelöscht werden; vor dieser Version wurde jeder Versuch, eine solche Sitzung zu löschen, abgelehnt. Ein Verzeichnis, das bereits weg ist, wird sofort gelöscht. Der Doppeldruck der Agenten-Ansicht entfernt ein Verzeichnis, das noch Dateien hat, und führt Ihren `WorktreeRemove`-Hook für ein Hook-erstelltes Verzeichnis aus, es sei denn, eine andere Sitzung benennt es auch. `claude rm` behält ein solches Verzeichnis, wenn Dateien vorhanden sind. |1134| v2.1.216 | `/fork`: Die [Bestätigung](#from-inside-a-session) ist eine Zeile, die den Zustand der Kopie, den Namen ihrer Zeile in der Agentenansicht und ihre Sitzungs-ID für `claude attach` zeigt und nur dann mit `runs in the origin tree` oder `edits this checkout` endet, wenn die Kopie im Haupt-Arbeitsverzeichnis läuft oder den Checkout bearbeitet, den Sie geöffnet haben. Ein Klick auf den Namen verschiebt diese Sitzung in den Hintergrund und öffnet die Agentenansicht in der Sitzung der Kopie. Die Bestätigung wiederholt nicht mehr den geerbten Berechtigungsmodus der Kopie; frühere Versionen gaben eine mehrzeilige Bestätigung ohne anklickbaren Namen aus.<br /><br />Needs input: `/install-github-app` und die `/mcp`-Einstellungsliste zeigen, wenn sie ausgeführt werden, während niemand verbunden ist, die Sitzung unter `Needs input` mit einer Zeile an, die den Befehl nennt, und Verbinden und erneutes Ausführen des Befehls setzt fort; von v2.1.208 bis v2.1.215 wurden sie in diesem Zustand direkt abgelehnt.<br /><br />`--agent`-Wiederherstellung: Das Fortsetzen oder Neustarten einer [in den Hintergrund verschobenen `--agent`-Sitzung](#from-your-shell) stellt den System-Prompt und die Tool-Einschränkungen des Agenten wieder her, wobei zuerst das eigene Verzeichnis der Sitzung nach dem Agenten durchsucht wird, sofern ihr Workspace vertrauenswürdig ist; eine Sitzung, deren Agent nicht mehr existiert, läuft mit den Standard-Tools und dem Standard-System-Prompt weiter und öffnet sich mit einer sichtbaren Warnung, statt unbemerkt auf den Standard-Agenten zurückzufallen.<br /><br />`Ctrl+X`: Zweimaliges Drücken löscht eine Sitzung auch dann, wenn der Stoppversuch fehlschlägt, statt dass ein fehlgeschlagenes Stoppen das ausstehende Löschen abbricht, und eine gelöschte Sitzung, deren Worker-Prozess beendet war, erscheint beim nächsten Aktualisieren nicht mehr erneut.<br /><br />Worktree-Löschung: Eine Sitzung, deren Worktree-Verzeichnis zu keinem Git-Repository gehört, kann gelöscht werden; vor diesem Release wurde jeder Versuch, eine solche Sitzung zu löschen, abgelehnt. Ein bereits nicht mehr vorhandenes Verzeichnis wird sofort bereinigt. Das doppelte Drücken in der Agentenansicht entfernt ein Verzeichnis, das noch Dateien enthält, und führt bei einem von einem Hook erstellten Verzeichnis Ihren `WorktreeRemove`-Hook aus, es sei denn, die Einträge einer anderen Sitzung nennen es ebenfalls. `claude rm` behält ein solches Verzeichnis, solange noch Dateien vorhanden sind. |

1115| v2.1.214 | Eine Sitzung, die mit `←` oder `/background` in den Hintergrund verschoben und untätig gelassen wird, ohne dass etwas läuft, hat ihren Prozess wie jede andere untätige Sitzung gestoppt, anstatt ihren Prozess und den Hintergrunddienst unbegrenzt laufen zu lassen. Eine abgeschlossene Sitzung kann mit `claude rm` oder aus der Agenten-Ansicht entfernt werden, nachdem der Hintergrunddienst untätig geworden ist, und eine Sitzung, die einen Worktree betreten hat, nachdem sie aus einem Verzeichnis versendet wurde, das kein Git-Repository ist, wie ein Multi-Repo-Workspace-Ordner, kann aus der Agenten-Ansicht gelöscht werden, wenn der Worktree selbst zu einem Git-Repository gehört, weil die Bereinigung aus dem Worktree statt aus dem Verzeichnis aufgelöst wird, aus dem die Sitzung versendet wurde; beide Entfernungen wurden vor jedem Versuch abgelehnt. Das Erneute Öffnen einer gestoppten Sitzung stellt ihre gespeicherte Unterhaltung wieder her, auch wenn ein Ordner im Transkript-Speicher nicht gelesen werden kann. |1135| v2.1.214 | Bei einer mit `←` oder `/background` in den Hintergrund verschobenen Sitzung, die inaktiv ist und in der nichts läuft, wird der Prozess wie bei jeder anderen inaktiven Sitzung gestoppt, statt dass ihr Prozess und der Hintergrunddienst unbegrenzt weiterlaufen. Eine abgeschlossene Sitzung kann mit `claude rm` oder aus der Agentenansicht entfernt werden, nachdem der Hintergrunddienst in den Ruhezustand gegangen ist, und eine Sitzung, die in einen Worktree gewechselt ist, nachdem sie aus einem Verzeichnis gestartet wurde, das kein Git-Repository ist, etwa einem Workspace-Ordner mit mehreren Repositorys, kann aus der Agentenansicht gelöscht werden, wenn der Worktree selbst zu einem Git-Repository gehört, weil die Bereinigung anhand des Worktrees statt des Verzeichnisses aufgelöst wird, aus dem die Sitzung gestartet wurde; beide Entfernungen wurden zuvor bei jedem Versuch abgelehnt. Das erneute Öffnen einer gestoppten Sitzung stellt ihre gespeicherte Konversation auch dann wieder her, wenn ein Ordner im Transkriptspeicher nicht gelesen werden kann. |

1116| v2.1.213 | `/install-github-app`, die [`/mcp`](/docs/de/mcp)-Einstellungsliste und MCP-Authentifizierungsaktionen funktionieren in einer Hintergrund-Sitzung, während ein Terminal angehängt ist, und werden nur abgelehnt, wenn niemand angehängt ist, mit einer Nachricht, die Sie auffordert, den Befehl anzuhängen und erneut auszuführen; von v2.1.208 bis v2.1.212 wurden sie auch mit angehängtem Terminal abgelehnt. |1136| v2.1.213 | `/install-github-app`, die [`/mcp`](/docs/de/mcp)-Einstellungsliste und MCP-Authentifizierungsaktionen funktionieren in einer Hintergrundsitzung, während ein Terminal verbunden ist, und werden nur abgelehnt, wenn niemand verbunden ist, mit einer Meldung, die Sie auffordert, sich zu verbinden und den Befehl erneut auszuführen; von v2.1.208 bis v2.1.212 wurden sie selbst bei verbundenem Terminal abgelehnt. |

1117| v2.1.212 | `/fork` in einer interaktiven Sitzung [kopiert die Unterhaltung](#from-inside-a-session) in eine neue Hintergrund-Sitzung, die als ihre eigene Zeile angezeigt wird, benannt nach der Sitzung, aus der sie kam, oder für einen aufgeforderten Fork einer unbenannten Sitzung, nach der Fork-Eingabeaufforderung, während das Original weiterläuft; das frühere Forked-Subagent-Verhalten von `/fork` wurde zu `/subtask` verschoben. Mit [Agenten-Ansicht ausgeschaltet](#turn-off-agent-view) behält `/fork` das Forked-Subagent-Verhalten. Eine fokussierte Zeile, die auf ihre erste Eingabeaufforderung wartet, zeigt `space to send it a prompt`. `Ctrl+J` fügt eine neue Zeile in die Versand-Eingabe auf Terminals mit erweiterter Schlüsselberichterstattung ein, wo der Tastendruck zuvor ignoriert wurde, und die `?`-Überlagerung listet die Verknüpfung auf. Der Hinweis `←` der Fußzeile in einer interaktiven Sitzung zeigt kurz `N done` an, wenn eine Hintergrund-Sitzung beendet wird, während keine Ihre Eingabe benötigen. Das Eingeben eines bloßen `/resume` in der Agenten-Ansicht öffnet eine Auswahl von vergangenen Sitzungen des Repositorys, aus dem Sie die Agenten-Ansicht öffneten, einschließlich aus der Liste gelöschter Sitzungen, und das Auswählen einer setzt sie als Hintergrund-Sitzung fort; vor dieser Version war `/resume` in der Agenten-Ansicht nicht verfügbar und gelöschte Sitzungen waren nur mit `claude --resume` oder `/resume` aus einer interaktiven Sitzung erreichbar. Zielgerichtete, begrenzte und eingeschränkte Formulare behalten den Hinweis `attach to a session to run it`, den frühere Versionen für jede Formulare zeigten. Sitzungen, die auf eine Sandbox-Netzwerk-Host-Eingabeaufforderung, eine MCP-Eingabeanfrage oder eine verwaltete Einstellungs-Eingabeaufforderung warten, werden als `Needs input` anstatt `Working` angezeigt, in der Agenten-Ansicht und in `claude agents --json`, und eine Frage von Claude meldet `waitingFor: input needed` anstatt `permission prompt`. Das Anhängen an eine Sitzung, deren Prozess gestoppt wurde, zeigt ihr Transkript formatiert wie die Live-Sitzung es rendert, anstatt als Rohtext. Eine gestoppte Sitzung, deren Transkript an einem unerwarteten Ort ist, wird über einen letzten Scan Ihrer gespeicherten Transkripte fortgesetzt, und das Öffnen einer Zeile, die kein gespeichertes Transkript hat, zeigt `Press enter again to restart this session fresh`, startet es beim zweiten Druck frisch neu; v2.1.211 zeigte die Ablehnung ohne Möglichkeit, aus der Agenten-Ansicht neu zu starten. |1137| v2.1.212 | [`/fork` in einer interaktiven Sitzung](#from-inside-a-session) kopiert die Konversation in eine neue Hintergrundsitzung, die als eigene Zeile erscheint, benannt nach der Sitzung, aus der sie stammt, oder bei einem Fork mit Prompt aus einer unbenannten Sitzung nach dem Fork-Prompt, während das Original weiterläuft; das frühere Verhalten von `/fork` als geforkter Subagent wurde zu `/subtask` verschoben. Wenn die [Agentenansicht deaktiviert ist](#turn-off-agent-view), behält `/fork` das Verhalten als geforkter Subagent bei. Eine fokussierte Zeile, die auf ihren ersten Prompt wartet, zeigt `space to send it a prompt` an. `Ctrl+J` fügt in der Dispatch-Eingabe einen Zeilenumbruch ein, auf Terminals mit erweiterter Tastenmeldung, wo der Tastendruck zuvor ignoriert wurde, und das `?`-Overlay listet die Tastenkombination auf. Der `←`-Hinweis in der Fußzeile einer interaktiven Sitzung zeigt kurz `N done` an, wenn eine Hintergrundsitzung fertig wird, während keine Ihre Eingabe benötigt. Die Eingabe eines alleinstehenden `/resume` in der Agentenansicht öffnet eine Auswahl vergangener Sitzungen des Repositorys, aus dem Sie die Agentenansicht geöffnet haben, einschließlich aus der Liste gelöschter Sitzungen, und die Auswahl einer Sitzung setzt sie als Hintergrundsitzung fort; vor diesem Release war `/resume` in der Agentenansicht nicht verfügbar, und gelöschte Sitzungen waren nur mit `claude --resume` oder `/resume` aus einer interaktiven Sitzung erreichbar. Gezielte, beschränkte und eingeschränkte Formen behalten den Hinweis `attach to a session to run it`, den frühere Versionen für jede Form anzeigten. Sitzungen, die auf eine Sandbox-Netzwerk-Host-Abfrage, eine MCP-Eingabeanfrage oder eine Abfrage der verwalteten Einstellungen warten, werden als `Needs input` statt `Working` angezeigt, in der Agentenansicht und in `claude agents --json`, und eine Frage von Claude meldet `waitingFor: input needed` statt `permission prompt`. Das Verbinden mit einer Sitzung, deren Prozess gestoppt wurde, zeigt ihr Transkript so formatiert an, wie die laufende Sitzung es darstellt, statt als Rohtext. Eine gestoppte Sitzung, deren Transkript sich an einem unerwarteten Ort befindet, wird über eine letzte Suche in Ihren gespeicherten Transkripten daraus fortgesetzt, und das Öffnen einer Zeile ohne gespeichertes Transkript zeigt `Press enter again to restart this session fresh` an und startet sie beim zweiten Drücken neu; v2.1.211 zeigte die Ablehnung ohne Möglichkeit, aus der Agentenansicht neu zu starten. |

1118| v2.1.211 | Das Aufwecken einer gestoppten Sitzung durch Anhängen oder Antworten aus dem Verzeichnis, in dem sie läuft, leitet das Gateway `ANTHROPIC_BASE_URL` Ihrer Shell erneut weiter, unter denselben Bedingungen wie ein frischer Versand, sodass eine Sitzung, die über ein Gateway `ANTHROPIC_AUTH_TOKEN` authentifiziert ist, auf dem Gateway fortgesetzt wird, anstatt `Not logged in` zu melden. Das Anhängen an eine gestoppte Sitzung, die vor ihrer ersten Antwort aus einer anderen Unterhaltung in den Hintergrund verschoben wurde, wird mit `This session has no saved transcript` abgelehnt, anstatt stillschweigend eine leere Unterhaltung unter derselben Sitzungs-ID zu starten; das Öffnen derselben Zeile aus der Agenten-Ansicht zeigte die Ablehnung in der Fußzeile. Das Beenden des Prozesses einer `←`- oder `/background`-Sitzung von außerhalb von Claude Code markiert ihn als gestoppt, anstatt dass der Supervisor ihn neu startet, ein bereits auf der Festplatte aufgezeichneter Stopp wird beachtet, es sei denn, eine Antwort, die Sie gesendet haben, wartet noch auf Zustellung, eine nach einem Absturz neu gestartete Sitzung wird ihr mitgeteilt, dass sie neu gestartet wurde, und eine neu gestartete `←`- oder `/background`-Sitzung setzt keine unterbrochene Antwort älter als etwa eine Stunde fort. Eine Sitzungs-Benennungs-Antwort, die die Eingabeaufforderung beantwortet oder ablehnt, anstatt sie zu kennzeichnen, wie für eine Eingabeaufforderung, die hauptsächlich ein Link ist, wird verworfen und die Zeile behält einen Namen, der aus dem Eingabeaufforderungs-Text entnommen wird. Das Löschen einer Sitzung, deren Worktree-Git nicht mehr erkennt, ist erfolgreich, lässt das Worktree-Verzeichnis auf der Festplatte und benennt seinen Pfad, anstatt dass jeder Versuch abgelehnt wird. Eine abgelehnte Löschung zeigt den Grund auf der Zeile der Sitzung an, einschließlich des zugrunde liegenden Git-Fehlers, wenn der Worktree nicht entfernt werden konnte, anstatt dass die Zeile stillschweigend erneut angezeigt wird. |1138| v2.1.211 | Das Aufwecken einer gestoppten Sitzung durch Verbinden oder Antworten aus dem Verzeichnis, in dem sie läuft, leitet die Gateway-`ANTHROPIC_BASE_URL` Ihrer Shell wieder weiter, unter denselben Bedingungen wie ein neuer Start, sodass eine über ein Gateway-`ANTHROPIC_AUTH_TOKEN` authentifizierte Sitzung auf dem Gateway fortgesetzt wird, statt `Not logged in` zu melden. Das Verbinden mit einer gestoppten Sitzung, die aus einer anderen Konversation in den Hintergrund verschoben wurde, bevor ihre erste Antwort fertig war, wird mit `This session has no saved transcript` abgelehnt, statt unbemerkt eine leere Konversation unter derselben Sitzungs-ID zu starten; das Öffnen derselben Zeile aus der Agentenansicht zeigte die Ablehnung in der Fußzeile. Das Beenden des Prozesses einer `←`- oder `/background`-Sitzung von außerhalb von Claude Code markiert sie als gestoppt, statt dass der Supervisor sie neu startet, ein bereits auf der Festplatte aufgezeichneter Stopp wird beachtet, es sei denn, eine von Ihnen gesendete Antwort wartet noch auf Zustellung, einer nach einem Absturz neu gestarteten Sitzung wird mitgeteilt, dass sie neu gestartet wurde, und eine neu gestartete `←`- oder `/background`-Sitzung setzt keine unterbrochene Antwort fort, die älter als etwa eine Stunde ist. Eine Antwort zur Sitzungsbenennung, die den Prompt beantwortet oder ablehnt, statt ihn zu beschriften, etwa bei einem Prompt, der größtenteils aus einem Link besteht, wird verworfen, und die Zeile behält einen aus dem Prompt-Text übernommenen Namen. Das Löschen einer Sitzung, deren Worktree Git nicht mehr erkennt, gelingt, wobei das Worktree-Verzeichnis auf der Festplatte verbleibt und sein Pfad genannt wird, statt dass jeder Versuch abgelehnt wird. Ein abgelehntes Löschen zeigt den Grund in der Zeile der Sitzung an, einschließlich des zugrunde liegenden Git-Fehlers, wenn der Worktree nicht entfernt werden konnte, statt dass die Zeile unbemerkt wieder erscheint. |

1119| v2.1.210 | `claude attach` wartet, während der Hintergrunddienst startet oder sich erneut verbindet, anstatt mit einem `job not found`- oder `still starting`-Fehler fehlzuschlagen, meldet eine Sitzung, die während des Anhängens beendet wird, als beendet, und wendet eine während eines langsamen Anhängens vorgenommene Terminal-Größenänderung an, wenn das Anhängen abgeschlossen ist. Der Hinweis `←` der Eingabeaufforderungs-Fußzeile für die Eingabe-Anzahl wird auf jedem Anbieter angezeigt, einschließlich Drittanbieter-Anbieter, die zuvor die einfache `← for agents`-Formulare zeigten. Das Verschieben einer Sitzung in den Hintergrund mit `←` überträgt Claudes Aufgabenliste zur Hintergrund-Sitzung, anstatt sie zu verwerfen. Die Zeile, auf die Sie `←` drückten, behält einen fetten, nicht abgedimmten Namen, nachdem die Auswahl verschoben wird. `claude agents --effort` akzeptiert `ultracode`, anstatt es stillschweigend zu verwerfen. |1139| v2.1.210 | `claude attach` wartet, während der Hintergrunddienst startet oder sich neu verbindet, statt mit einem `job not found`- oder `still starting`-Fehler fehlzuschlagen, meldet eine Sitzung, die während des Verbindens beendet wurde, als beendet, und wendet eine während eines langsamen Verbindens vorgenommene Größenänderung des Terminals an, wenn das Verbinden abgeschlossen ist. Die `←`-Anzahl der auf Eingabe wartenden Sitzungen in der Prompt-Fußzeile erscheint bei jedem Anbieter, einschließlich Drittanbietern, die zuvor die einfache Form `← for agents` zeigten. Das Verschieben einer Sitzung in den Hintergrund mit `←` überträgt Claudes Aufgabenliste in die Hintergrundsitzung, statt sie zu verwerfen. Die Zeile, aus der Sie `←` gedrückt haben, behält einen fetten, nicht abgeblendeten Namen, nachdem die Auswahl weiterbewegt wurde. `claude agents --effort` akzeptiert `ultracode`, statt es unbemerkt zu verwerfen. |

1120| v2.1.208 | Das Anhängen an eine Sitzung, deren Prozess gestoppt wurde, zeigt den letzten Bildschirmvoll ihres Transkripts an, während der Prozess startet, anstatt nur eine `Session is starting`-Notiz. Eine Antwort, die nicht zugestellt werden kann, weil der Hintergrunddienst nicht erreichbar ist oder das Senden fehlschlägt, wird gespeichert und als nächste Eingabeaufforderung der Sitzung gesendet, wenn ihr Prozess wieder startet; vor dieser Version ging eine Antwort, die verloren ging, während der Hintergrunddienst nicht erreichbar war, verloren. Ein Prozess, dessen eigene Binärdatei durch ein Update ersetzt wurde, kann den Supervisor immer noch starten, vom installierten `claude`-Launcher oder der neuesten Version auf der Festplatte, anstatt fehlzuschlagen, bis Claude Code neu gestartet wurde. Ein Supervisor, der eine ältere Version ausführt, startet eine untätige Sitzung, die von einer neueren Version gestartet wurde, niemals auf seiner eigenen älteren Binärdatei neu. Das Löschen einer Sitzung entfernt ihren Worktree auch nachdem die Sitzung den Worktree auf einen anderen Branch verschoben hat, und behält den Worktree zusammen mit der Sitzungszeile, wenn der Worktree Commits hat, die nirgendwo gepusht werden, oder eine andere Sitzung ihn beansprucht, anstatt die Commits zu zerstören oder den Worktree verwaist zu lassen. `/install-github-app` und die `/mcp`-Einstellungsliste und ihre Authentifizierungsaktionen werden in einer Hintergrund-Sitzung mit einer Nachricht abgelehnt, die die Alternative benennt; in v2.1.208 nur wurde die `/model`-Auswahl auf die gleiche Weise abgelehnt und ein eingegebenes `/model <name>` schaltete nur diese Sitzung um, anstatt auch Ihr Standard-Modell zu speichern. |1140| v2.1.208 | Das Verbinden mit einer Sitzung, deren Prozess gestoppt wurde, zeigt den letzten Bildschirminhalt ihres Transkripts an, während der Prozess startet, statt nur eines `Session is starting`-Hinweises. Eine Antwort, die nicht zugestellt werden kann, weil der Hintergrunddienst nicht erreichbar ist oder das Senden fehlschlägt, wird gespeichert und als nächster Prompt der Sitzung gesendet, wenn ihr Prozess wieder startet; vor diesem Release wurde eine Antwort, die verloren ging, während der Hintergrunddienst nicht erreichbar war, verworfen. Ein Prozess, dessen eigene Binärdatei durch ein Update ersetzt wurde, kann den Supervisor weiterhin starten, über den installierten `claude`-Launcher oder die neueste Version auf der Festplatte, statt fehlzuschlagen, bis Claude Code neu gestartet wurde. Ein Supervisor, der eine ältere Version ausführt, startet eine inaktive, von einer neueren Version gestartete Sitzung nie mit seiner eigenen älteren Binärdatei neu. Das Löschen einer Sitzung entfernt ihren Worktree auch dann, wenn die Sitzung den Worktree auf einen anderen Branch umgestellt hat, und behält den Worktree zusammen mit der Sitzungszeile bei, wenn der Worktree Commits hat, die nirgendwohin gepusht wurden, oder eine andere Sitzung ihn beansprucht, statt die Commits zu vernichten oder den Worktree verwaist zurückzulassen. `/install-github-app` sowie die `/mcp`-Einstellungsliste und deren Authentifizierungsaktionen werden in einer Hintergrundsitzung mit einer Meldung abgelehnt, die die Alternative nennt; nur in v2.1.208 wurde die `/model`-Auswahl auf dieselbe Weise abgelehnt, und ein eingegebenes `/model <name>` wechselte nur das Modell dieser Sitzung, statt auch Ihr Standardmodell zu speichern. |

1121| v2.1.207 | Das Vorschau-Panel öffnet sich mit dem Satz, den die Zeile abschneidet, wie z. B. die genaue Frage für eine Sitzung, die auf Sie wartet, und zeigt, wie lange eine blockierte Sitzung wartet, als eine einzelne `waiting 3m`-Zeile, anstatt denselben Zeitstempel dem Statussatz und der Frage voranzustellen. Das Einfügen desselben Textes erneut in die Versand-Eingabe erweitert den zusammengeklappten `[Pasted text #N]`-Platzhalter, anstatt einen zweiten hinzuzufügen. Eine Hintergrund-Sitzung, die durch Akzeptieren eines Plans benannt wird, zeigt diesen Namen auf ihrer Zeile an. Eine Hintergrund-Sitzung, die in einen Worktree verschoben wurde, behält ihre Unterhaltung, wenn ihr Prozess aus der Agenten-Ansicht neu gestartet wird. |1141| v2.1.207 | Das Peek-Panel öffnet sich mit dem Satz, den die Zeile abschneidet, etwa der genauen Frage bei einer Sitzung, die auf Sie wartet, und zeigt in einer einzigen `waiting 3m`-Zeile an, wie lange eine blockierte Sitzung bereits wartet, statt denselben Zeitstempel dem Statussatz und der Frage voranzustellen. Erneutes Einfügen desselben Textes in die Dispatch-Eingabe erweitert den eingeklappten `[Pasted text #N]`-Platzhalter, statt einen zweiten hinzuzufügen. Eine Hintergrundsitzung, die durch das Annehmen eines Plans benannt wurde, zeigt diesen Namen in ihrer Zeile. Eine Hintergrundsitzung, die in einen Worktree gewechselt ist, behält ihre Konversation, wenn ihr Prozess aus der Agentenansicht neu gestartet wird. |

1122| v2.1.206 | Zeilenzusammenfassungen füllen die verbleibende Breite der Zeile und schneiden nur am rechten Rand des Terminals ab, anstatt bei 64 Spalten. Nachdem der Supervisor in eine neue Claude Code-Version neu startet, startet er die verbleibenden untätigen Hintergrund-Sitzungen im Hintergrund auf diese Version neu, anstatt einige pro Minute. Das Löschen einer Sitzung mit `Ctrl+X` oder `claude rm` löscht sie auch aus der Sitzungsliste des Supervisors, sodass die Zeile nach einem Supervisor-Neustart nicht mehr erneut angezeigt wird. Ein `CLAUDE_CODE_EXTRA_BODY`-Anfragekörper-Override, der in der Versand-Shell exportiert wird, erreicht Hintergrund-Sitzungen, anstatt ignoriert zu werden. |1142| v2.1.206 | Zeilenzusammenfassungen füllen die verbleibende Breite der Zeile und werden erst am rechten Rand des Terminals abgeschnitten statt bei 64 Spalten. Nachdem der Supervisor in eine neue Claude-Code-Version neu gestartet ist, startet er die verbleibenden inaktiven Hintergrundsitzungen im Hintergrund mit dieser Version neu, statt einige pro Minute. Das Löschen einer Sitzung mit `Ctrl+X` oder `claude rm` entfernt sie auch aus der Sitzungsliste des Supervisors, sodass die Zeile nach einem Neustart des Supervisors nicht mehr erneut erscheint. Eine in der startenden Shell exportierte `CLAUDE_CODE_EXTRA_BODY`-Überschreibung des Anfrage-Bodys erreicht Hintergrundsitzungen, statt ignoriert zu werden. |

1123| v2.1.205 | Der Hinweis `←` der Eingabeaufforderungs-Fußzeile in einer regulären `claude`-Sitzung zählt die Hintergrund-Agenten, die auf Sie warten, wie `← 2 agents`. Zeilenzusammenfassungen zeigen den eigenen einzeiligen Bericht der Sitzung, abgeschnitten bei 64 Spalten, anstelle einer rohen Tool-Aufrufe oder einer `done/total`-Anzahl; verzeichnisgruppierten Zeilen öffnen sich mit einem farbigen Statuswort. Das Vorschau-Panel öffnet sich mit dem vollständigen Statussatz und für eine Sitzung, die auf Sie wartet, ihrer genauen Frage über der Antwort-Eingabe. Sitzungen, die einen Pull Request mit `gh` bearbeiten, kommentieren, schließen oder als bereit markieren, sind damit verknüpft, nicht nur solche, die einen Pull Request erstellen oder auschecken, ein Push verknüpft einen Pull Request auch wenn der lokale Branch-Name nicht übereinstimmt, und ein Pull Request, dessen Erstellungsbefehl-Ausgabe das Inline-Limit überschritten hat, ist auch verknüpft. Eine Wendung ohne lesbaren Text behält den vorherigen Zustand der Sitzung bei, anstatt ihn zurück auf `Working` zu setzen. `claude attach` wartet bis zu etwa 60 Sekunden auf eine Sitzung, die neu startet, mit einer Statuszeile, die angibt warum, anstatt fehlzuschlagen. |1143| v2.1.205 | Der `←`-Hinweis in der Prompt-Fußzeile einer regulären `claude`-Sitzung zählt die Hintergrundagenten, die auf Sie warten, etwa `← 2 agents`. Zeilenzusammenfassungen zeigen den eigenen einzeiligen Bericht der Sitzung, abgeschnitten bei 64 Spalten, statt eines rohen Tool-Aufrufs oder einer `done/total`-Anzahl; nach Verzeichnis gruppierte Zeilen beginnen mit einem farbigen Zustandswort. Das Peek-Panel öffnet sich mit dem vollständigen Statussatz und bei einer Sitzung, die auf Sie wartet, mit ihrer genauen Frage über dem Antwort-Eingabefeld. Sitzungen, die mit `gh` einen Pull Request bearbeiten, kommentieren, schließen oder als bereit markieren, werden mit ihm verknüpft, nicht nur solche, die einen Pull Request erstellen oder auschecken; ein Push verknüpft einen Pull Request auch dann, wenn der lokale Branch-Name nicht übereinstimmt, und ein Pull Request, bei dem die Ausgabe des Erstellungsbefehls das Inline-Limit überschritten hat, wird ebenfalls verknüpft. Ein Turn ohne lesbaren Text behält den vorherigen Zustand der Sitzung bei, statt ihn auf `Working` zurückzusetzen. `claude attach` wartet bis zu etwa 60 Sekunden auf eine Sitzung, die neu startet, mit einer Statuszeile, die den Grund nennt, statt fehlzuschlagen. |

1124| v2.1.203 | Ein Gateway `ANTHROPIC_BASE_URL`, das in der Versand-Shell exportiert wird, erreicht die von ihr versendeten Sitzungen in demselben Verzeichnis, wenn der Supervisor diese Gateway-Umgebung teilt, anstatt gelöscht zu werden, während der daneben exportierte API-Schlüssel beibehalten wird. Der `PATH` der Versand-Shell wird auf den Worker jeder Sitzung angewendet. Das Drücken von `←` während Subagenten laufen, wartet auf sie, anstatt sie nach zehn Sekunden neu zu starten. Die leere Liste zeigt immer die Abschnittskopfzeilen mit einer Beschreibung unter jedem an. Das Eingeben von `@` in der Versand-Eingabe listet auch die registrierten Git-Worktrees des Start-Repositorys auf, die sich in seinem Verzeichnisbaum befinden. Ein Aufwand, der von der `effortLevel`-Einstellung geerbt wird, folgt späteren Änderungen dieser Einstellung, anstatt beim Versand festgelegt zu werden. Das Öffnen einer gestoppten Sitzung, deren Unterhaltung bereits in einer anderen laufenden Sitzung offen ist, wird mit einer Nachricht abgelehnt, anstatt die Zeile fehlschlagen zu lassen. Ein Befehl, der in der Agenten-Ansicht nicht verfügbar ist, lässt den eingegebenen Text in der Eingabe. Ein `WorktreeCreate`-Hook, der außerhalb eines Git-Repositorys fehlschlägt, blockiert die Sitzung nicht mehr beim Bearbeiten von Dateien. |1144| v2.1.203 | Eine in der startenden Shell exportierte Gateway-`ANTHROPIC_BASE_URL` erreicht die daraus in dasselbe Verzeichnis gestarteten Sitzungen, wenn der Supervisor diese Gateway-Umgebung teilt, statt verworfen zu werden, während der zusammen damit exportierte API-Schlüssel beibehalten wurde. Der `PATH` der startenden Shell wird auf den Worker jeder Sitzung angewendet. Das Drücken von `←`, während Subagenten laufen, wartet auf diese, statt sie nach zehn Sekunden neu zu starten. Die leere Liste zeigt immer die Abschnittsüberschriften mit einer Beschreibung unter jeder an. Die Eingabe von `@` in der Dispatch-Eingabe listet auch die registrierten Git-Worktrees des Start-Repositorys auf, die sich in dessen Verzeichnisbaum befinden. Ein aus der Einstellung `effortLevel` geerbter Effort folgt späteren Änderungen an dieser Einstellung, statt beim Start festgelegt zu sein. Das Öffnen einer gestoppten Sitzung, deren Konversation bereits in einer anderen laufenden Sitzung geöffnet ist, wird mit einer Meldung abgelehnt, statt die Zeile fehlschlagen zu lassen. Ein Befehl, der in der Agentenansicht nicht verfügbar ist, belässt den eingegebenen Text in der Eingabe. Ein `WorktreeCreate`-Hook, der außerhalb eines Git-Repositorys fehlschlägt, hindert die Sitzung nicht mehr daran, Dateien zu bearbeiten. |

1125| v2.1.202 | Ein Name, der mit `/rename` oder `Ctrl+R` in einer Hintergrund-Sitzung festgelegt wird, bleibt erhalten, wenn der Supervisor seinen Prozess stoppt und neu startet, anstatt auf den Namen zurückzusetzen, mit dem die Sitzung versendet wurde. |1145| v2.1.202 | Ein mit `/rename` oder `Ctrl+R` für eine Hintergrundsitzung festgelegter Name bleibt erhalten, wenn der Supervisor ihren Prozess stoppt und neu startet, statt auf den Namen zurückzufallen, mit dem die Sitzung gestartet wurde. |

1126| v2.1.200 | Eine ältere Claude Code-Version, die die Sitzungsliste in `roster.json` umschreibt, behält Felder bei, die von einer neueren Version geschrieben wurden, was der bestehenden `state.json`-Garantie entspricht, sodass Sitzungen, die von der neueren Version gestartet wurden, nach dem Neustart des Supervisors weiterhin Eingaben akzeptieren. Wenn Sie eine Sitzung öffnen, die nicht mehr reagiert, startet der Supervisor ihren Prozess neu und die Sitzung setzt die unterbrochene Antwort von dort fort, wo sie stehen geblieben ist. Die Agenten-Ansicht wendet ein `--plugin-dir`-Flag, das nach `agents` platziert wird, auf ihre eigenen Subagenten- und Skill-Autovervollständigung in der Versand-Eingabe sowie versendete Sitzungen an. |1146| v2.1.200 | Eine ältere Claude-Code-Version, die die Sitzungsliste in `roster.json` neu schreibt, bewahrt die von einer neueren Version geschriebenen Felder, entsprechend der bestehenden Garantie für `state.json`, sodass von der neueren Version gestartete Sitzungen nach einem Neustart des Supervisors weiterhin Eingaben annehmen. Wenn Sie eine Sitzung öffnen, die nicht mehr reagiert, startet der Supervisor ihren Prozess neu, und die Sitzung setzt die unterbrochene Antwort dort fort, wo sie aufgehört hat. Die Agentenansicht wendet ein nach `agents` angegebenes `--plugin-dir`-Flag sowohl auf ihre eigene Autovervollständigung für Subagenten und Skills in der Dispatch-Eingabe als auch auf gestartete Sitzungen an. |

1127| v2.1.199 | Eine Hintergrund-Sitzung, deren Prozess beendet wird, bevor sie auf einem Host mit wenig Speicher vollständig startet, zeigt `possibly low memory — free some up and retry` in ihrem Zeilenstatus an, anstatt nur die bloße Beendigungsursache anzuzeigen. Das Verschieben einer Sitzung in den Hintergrund mit `←` oder `/background` überträgt ihre `/color`-Einstellung auf die neue Zeile. |1147| v2.1.199 | Eine Hintergrundsitzung, deren Prozess auf einem Host mit wenig Arbeitsspeicher beendet wird, bevor er vollständig gestartet ist, zeigt in ihrem Zeilenstatus `possibly low memory — free some up and retry` an statt nur des reinen Beendigungsgrunds. Das Verschieben einer Sitzung in den Hintergrund mit `←` oder `/background` überträgt ihre `/color` auf die neue Zeile. |

1128| v2.1.198 | Die Agenten-Ansicht sendet eine Benachrichtigung über `preferredNotifChannel`, wenn eine Hintergrund-Sitzung Eingabe benötigt, beendet wird oder fehlschlägt, und löst den `Notification`-Hook mit dem Typ `agent_needs_input` oder `agent_completed` aus. `←` und `/exit` innerhalb von `claude attach <id>` kehren zur Agenten-Ansicht zurück, anstatt zur Shell zu beenden; `Ctrl+Z` kehrt zur Shell zurück. Eine Hintergrund-Sitzung, die ihre Arbeit in einem Worktree isoliert, committed und pusht ihren eigenen isolierten Branch, niemals `main` oder `master`, und öffnet einen Entwurf eines Pull Requests, wenn sie beendet wird, anstatt zuerst zu fragen. `/login` wird in der Agenten-Ansicht ausgeführt und öffnet den Anmeldedialog. Der Beendigungsdialog `Background work is running` bietet `Move to background and exit` an. Die Beendigungsübergabe deckt auch Hintergrund-Subagenten ab, die beim nächsten Aufwachen aus ihrem Transkript fortgesetzt werden, anstatt als fehlgeschlagen gemeldet zu werden. `claude --bg` kombiniert mit `-p` oder `--print` wird mit einem Fehler abgelehnt. Der Hintergrund-Sitzungs-Host fordert macOS Local Network-Berechtigung beim ersten LAN-Zugriff an, anstatt mit `connect: no route to host` fehlzuschlagen. |1148| v2.1.198 | Die Agentenansicht sendet eine Benachrichtigung über `preferredNotifChannel`, wenn eine Hintergrundsitzung eine Eingabe benötigt, fertig wird oder fehlschlägt, und löst den `Notification`-Hook mit dem Typ `agent_needs_input` oder `agent_completed` aus. `←` und `/exit` innerhalb von `claude attach <id>` kehren zur Agentenansicht zurück, statt zur Shell zu beenden; `Ctrl+Z` kehrt zur Shell zurück. Eine Hintergrundsitzung, die ihre Arbeit in einem Worktree isoliert hat, committet, pusht ihren eigenen isolierten Branch, niemals `main` oder `master`, und öffnet einen Draft-Pull-Request, wenn sie fertig ist, statt vorher nachzufragen. `/login` läuft in der Agentenansicht und öffnet den Anmeldedialog. Der Beenden-Dialog `Background work is running` bietet `Move to background and exit` an. Die Übergabe beim Beenden umfasst auch Hintergrund-Subagenten, die beim nächsten Aufwecken aus ihrem Transkript fortgesetzt werden, statt als fehlgeschlagen gemeldet zu werden. `claude --bg` in Kombination mit `-p` oder `--print` wird mit einem Fehler abgelehnt. Der Host für Hintergrundsitzungen fordert beim ersten LAN-Zugriff die macOS-Berechtigung für das lokale Netzwerk an, statt mit `connect: no route to host` fehlzuschlagen. |

1129| v2.1.196 | Ein einzelner `←`-Druck verschiebt eine Vordergrund-Sitzung in den Hintergrund; frühere Versionen erforderten zwei Drücke, mit einem Fußzeilen-Hinweis und einer Bestätigung. `--dangerously-skip-permissions`, das an `claude agents` übergeben wird, zeigt den Bypass-Haftungsausschluss an, anstatt stillschweigend gelöscht zu werden. Interaktive Sitzungen, die Sie nie benannt haben, tragen einen Standard-Namen wie `my-app-3f` in Sitzungsauflistungen und `claude agents --json`. Hintergrund-Shell-Befehle und dynamische Workflows überleben das Stoppen, Neustarten oder Aktualisieren des Sitzungsprozesses, einschließlich unter Windows; setzen Sie `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF=1`, um die Übergabe auszuschalten. Ein Transkript, das beim Neustart als leer missverstanden wird, wird mit einem `.orphaned-`-Suffix umbenannt, anstatt gelöscht zu werden. |1149| v2.1.196 | Ein einziges Drücken von `←` verschiebt eine Vordergrundsitzung in den Hintergrund; frühere Versionen erforderten zwei Tastendrücke, mit einem Hinweis in der Fußzeile und einer Bestätigung. An `claude agents` übergebenes `--dangerously-skip-permissions` zeigt den Bypass-Hinweis an, statt unbemerkt verworfen zu werden. Interaktive Sitzungen, die Sie nie benannt haben, tragen in Sitzungslisten und in `claude agents --json` einen Standardnamen wie `my-app-3f`. Hintergrund-Shell-Befehle und dynamische Workflows überstehen das Stoppen, Neustarten oder Aktualisieren des Sitzungsprozesses, auch unter Windows; setzen Sie `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF=1`, um die Übergabe zu deaktivieren. Ein Transkript, das beim Neustart fälschlich als leer gelesen wird, wird mit einem `.orphaned-`-Suffix umbenannt statt gelöscht. |

1130| v2.1.195 | Laufende Arbeit wird auch unter Windows übertragen, wenn Sie eine Sitzung in den Hintergrund verschieben; setzen Sie `CLAUDE_DISABLE_ADOPT=1`, um sie stattdessen zu stoppen. Die Gruppe `Abgeschlossen` füllt den verbleibenden vertikalen Platz und die Kopfzeile wird auf kurzen Terminals komprimiert. Eine ältere Claude Code-Version löscht nicht mehr neuere Sitzungs-`state.json`-Felder oder versteckt diese Sitzungen nicht vor `claude agents`. Das Anhängen an eine gestoppte Sitzung wechselt sofort, anstatt bis zu fünf Sekunden einen leeren Bildschirm zu zeigen. Ein Supervisor, der keine Verbindungen akzeptieren kann, beendet sich selbst und gibt seine Sperre frei. |1150| v2.1.195 | Laufende Arbeit wird auch unter Windows übernommen, wenn Sie eine Sitzung in den Hintergrund verschieben; setzen Sie `CLAUDE_DISABLE_ADOPT=1`, um sie stattdessen zu stoppen. Die Gruppe `Completed` füllt den verbleibenden vertikalen Platz, und die Kopfzeile wird auf kurzen Terminals kompakter. Eine ältere Claude-Code-Version verwirft keine `state.json`-Felder neuerer Sitzungen mehr und blendet diese Sitzungen nicht mehr in `claude agents` aus. Das Verbinden mit einer gestoppten Sitzung wechselt sofort, statt bis zu fünf Sekunden lang einen leeren Bildschirm anzuzeigen. Ein Supervisor, der keine Verbindungen annehmen kann, beendet sich und gibt seine Sperre selbstständig frei. |

1131| v2.1.191 | `claude --bg` mit einem `--agent`-Namen, der keinem Ihrer Subagenten entspricht, schlägt beim Start fehl: Die Sitzung beendet sich sofort mit einem `--agent '<name>' not found`-Fehler, anstatt mit dem Standard-Agent zu laufen. |1151| v2.1.191 | `claude --bg` mit einem `--agent`-Namen, der keinem Ihrer Subagenten entspricht, lässt den Start fehlschlagen: Die Sitzung beendet sich sofort mit einem `--agent '<name>' not found`-Fehler, statt mit dem Standard-Agenten zu laufen. |

1132| v2.1.174 | Hintergrund-Sitzungen erben keine Gateway-Endpunkt-Variablen wie `ANTHROPIC_BASE_URL` aus der Supervisor-Start-Shell mehr; der Supervisor stellt einen frischen Snapshot der Anmeldedaten für vorgewärmte Worker bereit, was spurlose `Could not resolve authentication method`-Fehler behebt. |1152| v2.1.174 | Hintergrundsitzungen erben keine Gateway-Endpunkt-Variablen wie `ANTHROPIC_BASE_URL` mehr aus der Start-Shell des Supervisors; der Supervisor liefert vorab gestarteten Workern einen frischen Snapshot der Anmeldedaten, wodurch fälschliche `Could not resolve authentication method`-Fehler behoben werden. |

1133| v2.1.172 | `/model` in der Versand-Eingabe setzt eine Sitzungs-Bereichs-Versand-Modell-Überschreibung. |1153| v2.1.172 | `/model` in der Dispatch-Eingabe legt eine sitzungsbezogene Überschreibung des Dispatch-Modells fest. |

1134| v2.1.161 | Zeilenzusammenfassungen zeigen eine `done/total`-Anzahl für parallele Arbeitselemente; das Vorschau-Panel benennt das am längsten laufende parallele Arbeitselement. |1154| v2.1.161 | Zeilenzusammenfassungen zeigen eine `done/total`-Anzahl für parallele Arbeitselemente; das Peek-Panel nennt das am längsten laufende parallele Arbeitselement. |

1135| v2.1.157 | `claude agents` akzeptiert `--agent`; versendete Sitzungen beachten die `agent`-Einstellung. |1155| v2.1.157 | `claude agents` akzeptiert `--agent`; gestartete Sitzungen berücksichtigen die Einstellung `agent`. |

1136| v2.1.145 | Sprachdiktat wird in der Vorschau-Panel-Antwort-Eingabe und der Versand-Eingabe unterstützt. |1156| v2.1.145 | Sprachdiktat wird im Antwort-Eingabefeld des Peek-Panels und in der Dispatch-Eingabe unterstützt. |

1137| v2.1.143 | `worktree.bgIsolation`-Einstellung hinzugefügt; `claude agents` akzeptiert `--allow-dangerously-skip-permissions`. |1157| v2.1.143 | Einstellung `worktree.bgIsolation` hinzugefügt; `claude agents` akzeptiert `--allow-dangerously-skip-permissions`. |

1138| v2.1.142 | `claude agents` akzeptiert `--permission-mode`, `--model`, `--effort`, `--dangerously-skip-permissions`, `--settings`, `--add-dir`, `--plugin-dir`, `--mcp-config` und `--strict-mcp-config`. |1158| v2.1.142 | `claude agents` akzeptiert `--permission-mode`, `--model`, `--effort`, `--dangerously-skip-permissions`, `--settings`, `--add-dir`, `--plugin-dir`, `--mcp-config` und `--strict-mcp-config`. |

1139| v2.1.141 | `claude agents` akzeptiert `--cwd`, um die Liste auf ein Projekt zu beschränken. |1159| v2.1.141 | `claude agents` akzeptiert `--cwd`, um die Liste auf ein Projekt zu beschränken. |

1140| v2.1.139 | Agenten-Ansicht als Forschungsvorschau eingeführt. |1160| v2.1.139 | Agentenansicht als Research Preview eingeführt. |

Details

526 526 

527Wenn Ihre Organisation die Guardrail-Header stattdessen über eine [Claude-Apps-Gateway](/docs/de/claude-apps-gateway)-Richtlinie bereitstellt, zählen sie als [Einstellungen, die Genehmigung benötigen](/docs/de/server-managed-settings#environment-variables-and-the-approval-dialog).527Wenn Ihre Organisation die Guardrail-Header stattdessen über eine [Claude-Apps-Gateway](/docs/de/claude-apps-gateway)-Richtlinie bereitstellt, zählen sie als [Einstellungen, die Genehmigung benötigen](/docs/de/server-managed-settings#environment-variables-and-the-approval-dialog).

528 528 

529Wenn der Guardrail eine Antwort mittendrin blockiert, bleibt der bis dahin gestreamte Text erhalten, und die Antwort endet mit der Nachricht, die auf dem Guardrail für blockierte Antworten konfiguriert ist.

530 

529<h2 id="use-the-mantle-endpoint">531<h2 id="use-the-mantle-endpoint">

530 Verwenden Sie den Mantle-Endpunkt532 Verwenden Sie den Mantle-Endpunkt

531</h2>533</h2>

Details

66| `port` | Nein | Bindungsport. Standard `8080`. |66| `port` | Nein | Bindungsport. Standard `8080`. |

67| `public_url` | Sofern `host` nicht loopback ist | Der extern sichtbare `https://`-Ursprung, der zum Erstellen des IdP-`redirect_uri` und der Discovery-Metadaten verwendet wird. Erforderlich, wenn `host` keine Loopback-Adresse ist, unabhängig davon, ob TLS bei einem Proxy wie ALB, Ingress oder Cloud Run oder beim Gateway selbst über `tls` beendet wird, da das Gateway seinen eigenen Ursprung niemals aus `X-Forwarded-*`-Headern ableitet; diese können vom Client gefälscht werden. Der Start schlägt ohne diese fehl. `trusted_proxies` unten regelt nur die Client-IP-Auflösung. Auch erforderlich, um [Telemetrie](#telemetry) zu aktivieren, da das Gateway den OTLP-Endpunkt, den es an Clients überträgt, aus dieser URL erstellt. |67| `public_url` | Sofern `host` nicht loopback ist | Der extern sichtbare `https://`-Ursprung, der zum Erstellen des IdP-`redirect_uri` und der Discovery-Metadaten verwendet wird. Erforderlich, wenn `host` keine Loopback-Adresse ist, unabhängig davon, ob TLS bei einem Proxy wie ALB, Ingress oder Cloud Run oder beim Gateway selbst über `tls` beendet wird, da das Gateway seinen eigenen Ursprung niemals aus `X-Forwarded-*`-Headern ableitet; diese können vom Client gefälscht werden. Der Start schlägt ohne diese fehl. `trusted_proxies` unten regelt nur die Client-IP-Auflösung. Auch erforderlich, um [Telemetrie](#telemetry) zu aktivieren, da das Gateway den OTLP-Endpunkt, den es an Clients überträgt, aus dieser URL erstellt. |

68| `tls.cert` / `tls.key` | Nein | PEM-Pfade, wenn das Gateway TLS selbst beendet |68| `tls.cert` / `tls.key` | Nein | PEM-Pfade, wenn das Gateway TLS selbst beendet |

69| `trusted_proxies` | Nein | CIDRs oder IPs von Load Balancern vor dem Gateway. Wenn gesetzt, vertraut das Gateway `X-Forwarded-For` nur von diesen Peers und zeichnet die echte Client-IP für Pro-IP-Ratenbegrenzung und Audit auf. Äquivalent zu nginx `set_real_ip_from`. `X-Forwarded-For`-Einträge, die als `ipv4:port` oder `[ipv6]:port` geschrieben sind, wie es einige Load Balancer tun, werden mit dem Port gelesen, der gelöscht wird. Eine IPv6-Adresse mit angehängtem Port und ohne Klammern kann als eine andere Adresse gelesen werden oder überhaupt nicht gelesen werden, daher deaktivieren Sie die Port-Option auf jedem Proxy, der diese Form schreibt. |69| `trusted_proxies` | Nein | CIDRs oder IPs von Load Balancern vor dem Gateway. Wenn gesetzt, vertraut das Gateway `X-Forwarded-For` nur von diesen Peers und zeichnet die echte Client-IP für Rate-Limits pro IP und Audit auf. Äquivalent zu nginx `set_real_ip_from`. `X-Forwarded-For`-Einträge, die als `ipv4:port` oder `[ipv6]:port` geschrieben sind, wie es einige Load Balancer tun, werden ohne den Port gelesen. Eine IPv6-Adresse mit angehängtem Port und ohne Klammern kann als eine andere Adresse gelesen werden oder überhaupt nicht gelesen werden, daher deaktivieren Sie die Port-Option auf jedem Proxy, der diese Form schreibt. |

70 70 

71<h3 id="oidc">71<h3 id="oidc">

72 `oidc`72 `oidc`


83| `allowed_email_domains` | Nein | Lehnen Sie id\_tokens ab, deren `email`-Anspruch nicht in einer dieser Domänen liegt, Groß-/Kleinschreibung wird ignoriert. Defense-in-Depth gegen Multi-Tenant-IdP-Fehlkonfiguration. Unabhängig von dieser Einstellung wird ein id\_token, dessen `email_verified`-Anspruch explizit `false` ist, immer abgelehnt. |83| `allowed_email_domains` | Nein | Lehnen Sie id\_tokens ab, deren `email`-Anspruch nicht in einer dieser Domänen liegt, Groß-/Kleinschreibung wird ignoriert. Defense-in-Depth gegen Multi-Tenant-IdP-Fehlkonfiguration. Unabhängig von dieser Einstellung wird ein id\_token, dessen `email_verified`-Anspruch explizit `false` ist, immer abgelehnt. |

84| `allowed_groups` | Nein | Beschränken Sie die Anmeldung auf Mitglieder dieser IdP-Gruppen, abgeglichen gegen `groups_claim`. Ein Benutzer in einer zulässigen E-Mail-Domäne, aber in keiner dieser Gruppen, wird abgelehnt. Erfordert, dass der IdP den Gruppenanspruch ausgibt. Der Abgleich ist ein exakter, Groß-/Kleinschreibung beachtender Zeichenfolgenvergleich gegen die Werte in diesem Anspruch, und das Gateway erweitert verschachtelte Gruppen nicht: Um Mitglieder einer Untergruppe zuzulassen, listen Sie die Untergruppe hier auf oder konfigurieren Sie den IdP so, dass er flache Mitgliedschaften ausgibt. |84| `allowed_groups` | Nein | Beschränken Sie die Anmeldung auf Mitglieder dieser IdP-Gruppen, abgeglichen gegen `groups_claim`. Ein Benutzer in einer zulässigen E-Mail-Domäne, aber in keiner dieser Gruppen, wird abgelehnt. Erfordert, dass der IdP den Gruppenanspruch ausgibt. Der Abgleich ist ein exakter, Groß-/Kleinschreibung beachtender Zeichenfolgenvergleich gegen die Werte in diesem Anspruch, und das Gateway erweitert verschachtelte Gruppen nicht: Um Mitglieder einer Untergruppe zuzulassen, listen Sie die Untergruppe hier auf oder konfigurieren Sie den IdP so, dass er flache Mitgliedschaften ausgibt. |

85| `groups_claim` | Nein | Welcher id\_token-Anspruch trägt die Gruppenmitgliedschaft. Standard `groups`. Microsoft Entra gibt App-Rollen unter `roles` aus. Akzeptiert einen flachen Schlüssel oder einen RFC-6901-JSON-Pointer wie `/resource_access/gateway/roles` für verschachtelte Ansprüche. |85| `groups_claim` | Nein | Welcher id\_token-Anspruch trägt die Gruppenmitgliedschaft. Standard `groups`. Microsoft Entra gibt App-Rollen unter `roles` aus. Akzeptiert einen flachen Schlüssel oder einen RFC-6901-JSON-Pointer wie `/resource_access/gateway/roles` für verschachtelte Ansprüche. |

86| `google_groups` | Nein | Schlagen Sie die Gruppen des angemeldeten Benutzers über die Google Workspace Admin SDK Directory API nach, da Googles id\_token keinen Gruppenanspruch trägt. Setzen Sie `service_account_json_path` auf eine Service-Account-Schlüsseldatei mit Domain-weiter Delegierung im Bereich `https://www.googleapis.com/auth/admin.directory.group.readonly`, und `admin_email` auf einen Workspace-Administrator, den der Service Account annimmt; die Directory API erfordert ein echtes Admin-Subjekt. Die E-Mail-Adressen jeder Benutzergruppe werden zu ihrem Gruppenanspruch, daher stimmen `allowed_groups` und `managed.policies.match.groups` mit Gruppen-E-Mails überein. |86| `google_groups` | Nein | Schlagen Sie die Gruppen des angemeldeten Benutzers über die Google Workspace Admin SDK Directory API nach, da Googles id\_token keinen Gruppenanspruch trägt. Setzen Sie `service_account_json_path` auf eine Service-Account-Schlüsseldatei mit Domain-weiter Delegierung im Scope `https://www.googleapis.com/auth/admin.directory.group.readonly`, und `admin_email` auf einen Workspace-Administrator, den der Service Account annimmt; die Directory API erfordert ein echtes Admin-Subjekt. Die E-Mail-Adressen jeder Benutzergruppe werden zu ihrem Gruppenanspruch, daher stimmen `allowed_groups` und `managed.policies.match.groups` mit Gruppen-E-Mails überein. |

87| `email_claim` | Nein | Welcher id\_token-Anspruch trägt die E-Mail des Benutzers. Standard `email`. Einige IdPs wie ADFS und Entra B2C geben stattdessen `upn` oder `preferred_username` aus. Akzeptiert einen flachen Schlüssel, einen JSON-Pointer oder eine Liste von Fallback-Schlüsseln, wobei der erste vorhandene Schlüssel verwendet wird. |87| `email_claim` | Nein | Welcher id\_token-Anspruch trägt die E-Mail des Benutzers. Standard `email`. Einige IdPs wie ADFS und Entra B2C geben stattdessen `upn` oder `preferred_username` aus. Akzeptiert einen flachen Schlüssel, einen JSON-Pointer oder eine Liste von Fallback-Schlüsseln, wobei der erste vorhandene Schlüssel verwendet wird. |

88| `scopes` | Nein | Vollständige Überschreibung der OIDC-Bereiche, die das Gateway anfordert. Standard `[openid, profile, email, offline_access]`. Setzen Sie, wenn Ihr IdP Bereiche ablehnt, die er nicht erkennt, oder einen benutzerdefinierten Bereich erfordert, um Gruppen oder E-Mail auszugeben. Muss `openid` enthalten. Das Löschen von `offline_access` deaktiviert Aktualisierungstoken, daher führen Entwickler die Browser-Anmeldung alle `session.ttl_hours` erneut aus. Siehe [Identitätsanbieter-Setup](/docs/de/claude-apps-gateway-deploy#identity-provider-setup) für IdP-spezifische Bereichsrezepte wie Googles Aktualisierungstoken-Flow. |88| `scopes` | Nein | Vollständige Überschreibung der OIDC-Scopes, die das Gateway anfordert. Standard `[openid, profile, email, offline_access]`. Setzen Sie, wenn Ihr IdP Scopes ablehnt, die er nicht erkennt, oder einen benutzerdefinierten Scope erfordert, um Gruppen oder E-Mail auszugeben. Muss `openid` enthalten. Das Entfernen von `offline_access` deaktiviert Aktualisierungstoken, daher führen Entwickler die Browser-Anmeldung alle `session.ttl_hours` erneut aus. Siehe [Identitätsanbieter-Setup](/docs/de/claude-apps-gateway-deploy#identity-provider-setup) für IdP-spezifische Scope-Rezepte wie Googles Aktualisierungstoken-Flow. |

89| `scope_on_refresh` | Nein | Senden Sie auch `scope` mit der gleichen Liste wie die Anmeldeanfrage, wenn das Gateway ein Aktualisierungstoken austauscht. Standard `false`: die Aktualisierungsanfrage lässt `scope` weg. Die meisten IdPs geben bei jeder Aktualisierung ein id\_token zurück und benötigen dies nicht. Setzen Sie `true`, wenn Ihr IdP ein id\_token bei Aktualisierung nur zurückgibt, wenn `openid` erneut angefordert wird, was Okta für seinen Aktualisierungszuschuss dokumentiert. Ohne ein id\_token hängt jede Aktualisierung davon ab, dass der Userinfo-Endpunkt des IdP das aktualisierte Zugriffstoken akzeptiert. Wenn Sie die Anmeldung oder Richtlinienabgleiche auf Gruppen beschränken und das id\_token Ihres IdP zur Aktualisierungszeit diese auslässt, setzen Sie auch `userinfo_fallback: true`, damit das Gateway diese vom Userinfo-Endpunkt ausfüllt. Ein IdP, der weniger Bereiche als angefordert gewährte, kann die Aktualisierung mit `invalid_scope` ablehnen, auch für bestehende Sitzungen, wenn Sie Einträge zu `scopes` hinzufügen, während dies aktiviert ist. Heben Sie den Schlüssel auf, wenn Aktualisierungen nach dem Setzen am `token_endpoint` fehlschlagen. Erfordert Claude Code v2.1.260 oder später auf dem Gateway-Server. |89| `scope_on_refresh` | Nein | Senden Sie auch `scope` mit der gleichen Liste wie die Anmeldeanfrage, wenn das Gateway ein Aktualisierungstoken austauscht. Standard `false`: die Aktualisierungsanfrage lässt `scope` weg. Die meisten IdPs geben bei jeder Aktualisierung ein id\_token zurück und benötigen dies nicht. Setzen Sie `true`, wenn Ihr IdP ein id\_token bei Aktualisierung nur zurückgibt, wenn `openid` erneut angefordert wird, was Okta für seinen Refresh-Grant dokumentiert. Ohne ein id\_token hängt jede Aktualisierung davon ab, dass der Userinfo-Endpunkt des IdP das aktualisierte Zugriffstoken akzeptiert. Wenn Sie die Anmeldung oder Richtlinienabgleiche auf Gruppen beschränken und das id\_token Ihres IdP zur Aktualisierungszeit diese auslässt, setzen Sie auch `userinfo_fallback: true`, damit das Gateway diese vom Userinfo-Endpunkt ausfüllt. Ein IdP, der weniger Scopes als angefordert gewährte, kann die Aktualisierung mit `invalid_scope` ablehnen, auch für bestehende Sitzungen, wenn Sie Einträge zu `scopes` hinzufügen, während dies aktiviert ist. Entfernen Sie den Schlüssel, wenn Aktualisierungen nach dem Setzen am `token_endpoint` fehlschlagen. Erfordert Claude Code v2.1.260 oder später auf dem Gateway-Server. |

90| `extra_auth_params` | Nein | Zusätzliche Abfrageparameter, die wörtlich an die IdP-Autorisierungsanfrage angehängt werden. Dies ist der Überschreibungsmechanismus für IdP-spezifisches Verhalten, wie `access_type: offline` für Google-Aktualisierungstoken, `domain_hint` für einige Entra-Mandanten oder `acr_values` für Step-up-Flows. Kann die vom Gateway verwalteten Protokollparameter nicht überschreiben: `state`, `nonce`, `redirect_uri`, PKCE, `scope`, `response_type`, `response_mode` und `client_id`. |90| `extra_auth_params` | Nein | Zusätzliche Abfrageparameter, die wörtlich an die IdP-Autorisierungsanfrage angehängt werden. Dies ist der Überschreibungsmechanismus für IdP-spezifisches Verhalten, wie `access_type: offline` für Google-Aktualisierungstoken, `domain_hint` für einige Entra-Mandanten oder `acr_values` für Step-up-Flows. Kann die vom Gateway verwalteten Protokollparameter nicht überschreiben: `state`, `nonce`, `redirect_uri`, PKCE, `scope`, `response_type`, `response_mode` und `client_id`. |

91| `userinfo_fallback` | Nein | Wenn das id\_token E-Mail oder Gruppen auslässt, rufen Sie diese von `/userinfo` ab. Erforderlich für Keycloak-Lightweight-Zugriffstokens, den Okta-Org-Server und ADFS-Minimal-Tokens. Das id\_token bleibt maßgeblich; userinfo füllt nur Lücken. Standard `false`. |91| `userinfo_fallback` | Nein | Wenn das id\_token E-Mail oder Gruppen auslässt, rufen Sie diese von `/userinfo` ab. Erforderlich für Keycloak-Lightweight-Zugriffstokens, den Okta-Org-Server und ADFS-Minimal-Tokens. Das id\_token bleibt maßgeblich; userinfo füllt nur Lücken. Standard `false`. |

92| `use_pkce` | Nein | Senden Sie eine PKCE-Herausforderung (S256) in der Autorisierungsanfrage. Standard `true`. Setzen Sie `false` nur, wenn Ihr IdP PKCE für diesen vertraulichen Client ablehnt. |92| `use_pkce` | Nein | Senden Sie eine PKCE-Herausforderung (S256) in der Autorisierungsanfrage. Standard `true`. Setzen Sie `false` nur, wenn Ihr IdP PKCE für diesen vertraulichen Client ablehnt. |


105 105 

106Die Inference-Upstreams beachten `HTTPS_PROXY` und `HTTP_PROXY` in jeder Version. Die eigenen Anfragen des Gateways an den IdP, Discovery, JWKS, Token und Userinfo gehen direkt, sofern Sie nicht `oidc.use_proxy: true` setzen, was v2.1.227 oder später erfordert. Wenn eine Proxy-Variable gesetzt ist, `use_proxy` nicht gesetzt ist und der Aussteller nicht von `NO_PROXY` abgedeckt ist, hält das Gateway diese Anfragen direkt und protokolliert beim Start einen Hinweis, der Sie auffordert, eine Wahl zu treffen; `use_proxy: false` hält sie direkt und unterdrückt den Hinweis.106Die Inference-Upstreams beachten `HTTPS_PROXY` und `HTTP_PROXY` in jeder Version. Die eigenen Anfragen des Gateways an den IdP, Discovery, JWKS, Token und Userinfo gehen direkt, sofern Sie nicht `oidc.use_proxy: true` setzen, was v2.1.227 oder später erfordert. Wenn eine Proxy-Variable gesetzt ist, `use_proxy` nicht gesetzt ist und der Aussteller nicht von `NO_PROXY` abgedeckt ist, hält das Gateway diese Anfragen direkt und protokolliert beim Start einen Hinweis, der Sie auffordert, eine Wahl zu treffen; `use_proxy: false` hält sie direkt und unterdrückt den Hinweis.

107 107 

108Mit `use_proxy: true` löst der Pod den Hostnamen jedes IdP-Endpunkts selbst auf und fordert den Proxy auf, sich mit der aufgelösten IP-Adresse zu `CONNECT`, daher muss der Proxy `CONNECT` zur IP-Adresse jedes Hosts akzeptieren, den das Discovery-Dokument benennt, nicht nur den Aussteller. Verwenden Sie eine `http://`-Proxy-URL. `ca_cert_pem` und der [SSRF-Schutz](/docs/de/claude-apps-gateway-deploy#threat-model-summary) gelten auch auf dem Proxy-Pfad.108Mit `use_proxy: true` löst der Pod den Hostnamen jedes IdP-Endpunkts selbst auf und fordert den Proxy auf, sich per `CONNECT` mit der aufgelösten IP-Adresse zu verbinden, daher muss der Proxy `CONNECT` zur IP-Adresse jedes Hosts akzeptieren, den das Discovery-Dokument benennt, nicht nur den Aussteller. Verwenden Sie eine `http://`-Proxy-URL. `ca_cert_pem` und der [SSRF-Schutz](/docs/de/claude-apps-gateway-deploy#threat-model-summary) gelten auch auf dem Proxy-Pfad.

109 109 

110[Proxy-only Egress](#proxy-only-egress) ändert beide: Während es aktiv ist, folgen IdP-Anfragen dem Proxy, sofern Sie nicht `use_proxy: false` setzen, und das Gateway übergibt dem Proxy jeden IdP-Hostnamen, ohne ihn zuerst aufzulösen.110[Proxy-only Egress](#proxy-only-egress) ändert beide: Während es aktiv ist, folgen IdP-Anfragen dem Proxy, sofern Sie nicht `use_proxy: false` setzen, und das Gateway übergibt dem Proxy jeden IdP-Hostnamen, ohne ihn zuerst aufzulösen.

111 111 


113 Proxy-only Egress113 Proxy-only Egress

114</h4>114</h4>

115 115 

116Setzen Sie `CLAUDE_GATEWAY_PROXY_IS_EGRESS_BOUNDARY=1` in der Umgebung des Gateways, neben `HTTPS_PROXY`, wenn der Pod andere Hosts nur durch diesen Forward-Proxy erreicht und öffentliche DNS-Namen nicht selbst auflösen kann, oder wenn der Proxy `CONNECT` zu einer IP-Adresse ablehnt. Erfordert v2.1.277 oder später. Es ist eine Umgebungsvariable statt eines `gateway.yaml`-Schlüssels, daher kann nichts in der Konfigurationsdatei die Adressprüfung des Gateways lockern.116Setzen Sie `CLAUDE_GATEWAY_PROXY_IS_EGRESS_BOUNDARY=1` in der Umgebung des Gateways, neben `HTTPS_PROXY`, wenn der Pod andere Hosts nur durch diesen Forward-Proxy erreicht und öffentliche DNS-Namen nicht selbst auflösen kann, oder wenn der Proxy `CONNECT` zu einer IP-Adresse ablehnt. Erfordert v2.1.277 oder später. Es ist eine Umgebungsvariable statt eines `gateway.yaml`-Schlüssels, damit nichts in der Konfigurationsdatei die Adressprüfung des Gateways lockern kann.

117 117 

118```bash theme={null}118```bash theme={null}

119export HTTPS_PROXY=http://proxy.corp.example.com:3128119export HTTPS_PROXY=http://proxy.corp.example.com:3128


124 124 

125Das Gateway protokolliert eine `network:`-Zeile beim Start, während Proxy-only Egress aktiv ist.125Das Gateway protokolliert eine `network:`-Zeile beim Start, während Proxy-only Egress aktiv ist.

126 126 

127Jede Zeile unten ist eine Klasse von ausgehenden Anfragen auf einem Gateway mit `HTTPS_PROXY` gesetzt, standardmäßig und während Proxy-only Egress aktiv ist.127Jede Zeile unten ist eine Klasse von ausgehenden Anfragen auf einem Gateway mit gesetztem `HTTPS_PROXY`, standardmäßig und während Proxy-only Egress aktiv ist.

128 128 

129| Ausgehende Anfrage | Standard | Proxy-only Egress aktiv |129| Ausgehende Anfrage | Standard | Proxy-only Egress aktiv |

130| - | - | - |130| - | - | - |

131| `provider: anthropic`-Upstreams, Workload Identity Federation-Token-Austausch, `telemetry.forward_to`-Exporte | Lokal aufgelöst und überprüft, dann `CONNECT` zur überprüften IP-Adresse durch den Proxy. Ein in `NO_PROXY` aufgelisteter Telemetrie-Collector wird stattdessen direkt erreicht | Hostname an den Proxy übergeben |131| `provider: anthropic`-Upstreams, Workload Identity Federation-Token-Austausch, `telemetry.forward_to`-Exporte | Lokal aufgelöst und überprüft, dann `CONNECT` zur überprüften IP-Adresse durch den Proxy. Ein in `NO_PROXY` aufgelisteter Telemetrie-Collector wird stattdessen direkt erreicht | Hostname an den Proxy übergeben |

132| IdP-Discovery, JWKS, Token und Userinfo | Direkt, sofern nicht [`oidc.use_proxy: true`](#idp-requests-through-a-forward-proxy), dann `CONNECT` zur überprüften IP-Adresse | Hostname an den Proxy übergeben, sofern nicht `oidc.use_proxy: false` hält einen internen IdP direkt |132| IdP-Discovery, JWKS, Token und Userinfo | Direkt, sofern nicht [`oidc.use_proxy: true`](#idp-requests-through-a-forward-proxy), dann `CONNECT` zur überprüften IP-Adresse | Hostname an den Proxy übergeben, sofern nicht `oidc.use_proxy: false` einen internen IdP direkt hält |

133| Amazon Bedrock, Claude Platform on AWS, Google Cloud's Agent Platform und Microsoft Foundry-Upstreams; Google-Gruppen-Lookups | Hostname an den Proxy übergeben | Unverändert |133| Amazon Bedrock, Claude Platform on AWS, Google Cloud's Agent Platform und Microsoft Foundry-Upstreams; Google-Gruppen-Lookups | Hostname an den Proxy übergeben | Unverändert |

134 134 

135Proxy-only Egress bleibt aus, sofern die Umgebung des Gateways nicht alle drei dieser Bedingungen erfüllt:135Proxy-only Egress bleibt aus, sofern die Umgebung des Gateways nicht alle drei dieser Bedingungen erfüllt:

136 136 

137* `HTTPS_PROXY` oder `HTTP_PROXY` ist gesetzt.137* `HTTPS_PROXY` oder `HTTP_PROXY` ist gesetzt.

138* `NO_PROXY` und `no_proxy` sind leer. Wenn Ihre Plattform eines in Pods injiziert, setzen Sie beide auf einen leeren Wert auf dem Gateway-Container. Das Auflisten eines Telemetrie-Collectors in `NO_PROXY` hält Proxy-only Egress aus.138* `NO_PROXY` und `no_proxy` sind leer. Wenn Ihre Plattform eines davon in Pods injiziert, setzen Sie beide auf einen leeren Wert auf dem Gateway-Container. Das Auflisten eines Telemetrie-Collectors in `NO_PROXY` hält Proxy-only Egress aus.

139* `CLAUDE_GATEWAY_ALLOW_LOOPBACK` ist nicht aktiviert. Ein Collector oder IdP auf dem eigenen Loopback des Pods kann nicht mit Proxy-only Egress kombiniert werden, da eine an den Proxy übergebene Loopback-Adresse die des Proxy-Hosts selbst wäre, daher geben Sie diesen Services stattdessen eine Adresse, die der Proxy erreichen kann. Aus dem gleichen Grund weigert sich das Gateway, `localhost`-ähnliche Namen direkt zu akzeptieren, während Proxy-only Egress aktiv ist.139* `CLAUDE_GATEWAY_ALLOW_LOOPBACK` ist nicht aktiviert. Ein Collector oder IdP auf dem eigenen Loopback des Pods kann nicht mit Proxy-only Egress kombiniert werden, da eine an den Proxy übergebene Loopback-Adresse die des Proxy-Hosts selbst wäre, daher geben Sie diesen Services stattdessen eine Adresse, die der Proxy erreichen kann. Aus dem gleichen Grund lehnt das Gateway `localhost`-ähnliche Namen grundsätzlich ab, während Proxy-only Egress aktiv ist.

140 140 

141Wenn eine dieser Bedingungen nicht erfüllt ist, protokolliert das Gateway beim Start eine Warnung, die die Variable benennt, die es gestoppt hat, und behält das Standardverhalten.141Wenn eine dieser Bedingungen nicht erfüllt ist, protokolliert das Gateway beim Start eine Warnung, die die Variable benennt, die es verhindert hat, und behält das Standardverhalten.

142 142 

143Sobald Proxy-only Egress aktiv ist, erlauben Sie jeden Ziel im Proxy, einschließlich eines internen Collectors und jeden Host, der durch IP-Adresse konfiguriert ist. Sie können immer noch einen internen IdP direkt mit [`oidc.use_proxy: false`](#idp-requests-through-a-forward-proxy) halten.143Sobald Proxy-only Egress aktiv ist, erlauben Sie jedes Ziel im Proxy, einschließlich eines internen Collectors und jedes Hosts, der durch IP-Adresse konfiguriert ist. Sie können einen internen IdP weiterhin mit [`oidc.use_proxy: false`](#idp-requests-through-a-forward-proxy) direkt halten.

144 144 

145<Warning>145<Warning>

146 Aktivieren Sie dies nur, wenn die Allowlist des Proxys mindestens so streng ist wie die eigene Prüfung des Gateways. Der Proxy muss Cloud-Metadaten-Endpunkte wie `169.254.169.254` und `metadata.google.internal`, Link-Local-Adressen und das eigene Loopback des Proxy-Hosts ablehnen, und er muss sie nach der Adresse ablehnen, zu der ein Name aufgelöst wird, nicht nur nach Name, da das Gateway einen Hostnamen, der zu einem von ihnen aufgelöst wird, nicht mehr abfängt. Ein Proxy, der überall verbunden ist, wo er gefragt wird, entfernt den [SSRF-Schutz](/docs/de/claude-apps-gateway-deploy#threat-model-summary) des Gateways für diese Anfragen.146 Aktivieren Sie dies nur, wenn die Allowlist des Proxys mindestens so streng ist wie die eigene Prüfung des Gateways. Der Proxy muss Cloud-Metadaten-Endpunkte wie `169.254.169.254` und `metadata.google.internal`, Link-Local-Adressen und das eigene Loopback des Proxy-Hosts ablehnen, und er muss sie nach der Adresse ablehnen, zu der ein Name aufgelöst wird, nicht nur nach Name, da das Gateway einen Hostnamen, der zu einem von ihnen aufgelöst wird, nicht mehr abfängt. Ein Proxy, der sich überall hin verbindet, wohin er gebeten wird, entfernt den [SSRF-Schutz](/docs/de/claude-apps-gateway-deploy#threat-model-summary) des Gateways für diese Anfragen.

147</Warning>147</Warning>

148 148 

149<h3 id="session">149<h3 id="session">

150 `session`150 `session`

151</h3>151</h3>

152 152 

153Der `session`-Block formt die Bearer-Tokens, die das Gateway nach der Anmeldung ausgibt: das Geheimnis, das sie signiert, und wie lange sie leben.153Der `session`-Block formt die Bearer-Tokens, die das Gateway nach der Anmeldung ausgibt: das Geheimnis, das sie signiert, und wie lange sie gültig sind.

154 154 

155| Feld | Erforderlich | Beschreibung |155| Feld | Erforderlich | Beschreibung |

156| - | - | - |156| - | - | - |

157| `jwt_secret` | Ja | Mindestens 32 Bytes Entropie, zum Beispiel von `openssl rand -base64 32`. Signiert die HS256-Bearer-Tokens des Gateways. Akzeptiert eine einzelne Zeichenkette oder ein Array zur Rotation: Index 0 signiert und alle Einträge verifizieren. Zum Rotieren fügen Sie ein neues Geheimnis vorne hinzu, warten `ttl_hours`, dann löschen Sie das alte. |157| `jwt_secret` | Ja | Mindestens 32 Bytes Entropie, zum Beispiel von `openssl rand -base64 32`. Signiert die HS256-Bearer-Tokens des Gateways. Akzeptiert eine einzelne Zeichenkette oder ein Array zur Rotation: Index 0 signiert und alle Einträge verifizieren. Zum Rotieren fügen Sie ein neues Geheimnis vorne hinzu, warten `ttl_hours`, dann löschen Sie das alte. |

158| `ttl_hours` | Nein | Lebensdauer des Gateway-Bearer-Tokens. Standard `1`. Die CLI aktualisiert automatisch vor Ablauf, wenn der IdP Aktualisierungstoken ausgibt. Eine kürzere Lebensdauer hebt die Bereitstellung schneller auf; eine längere macht weniger IdP-Roundtrips. Wenn Ihr IdP keine Aktualisierungstoken ausstellen kann, weil `offline_access` nicht verfügbar ist, gibt es keine automatische Aktualisierung, daher erhöhen Sie dies auf `8` oder `12`, um zu vermeiden, dass Entwickler stündlich zur Browser-Anmeldung zurückkehren. |158| `ttl_hours` | Nein | Lebensdauer des Gateway-Bearer-Tokens. Standard `1`. Die CLI aktualisiert automatisch vor Ablauf, wenn der IdP Aktualisierungstoken ausgibt. Eine kürzere Lebensdauer entzieht den Zugang schneller; eine längere macht weniger IdP-Roundtrips. Wenn Ihr IdP keine Aktualisierungstoken ausstellen kann, weil `offline_access` nicht verfügbar ist, gibt es keine automatische Aktualisierung, daher erhöhen Sie dies auf `8` oder `12`, um zu vermeiden, dass Entwickler stündlich zur Browser-Anmeldung zurückkehren. |

159 159 

160<h3 id="store">160<h3 id="store">

161 `store`161 `store`

162</h3>162</h3>

163 163 

164Der `store`-Block verweist das Gateway auf seine PostgreSQL-Datenbank, die Gerätezuschüsse und Ratenbegrenzungszähler enthält.164Der `store`-Block verweist das Gateway auf seine PostgreSQL-Datenbank, die Device-Grants und Rate-Limit-Zähler enthält.

165 165 

166| Feld | Erforderlich | Beschreibung |166| Feld | Erforderlich | Beschreibung |

167| - | - | - |167| - | - | - |

168| `postgres_url` | Ja | `postgres://` oder `postgresql://` URL. Erforderlich: das Gerätezuschuss-Rendezvous, wo der Browser-Callback schreibt und die Polling-CLI liest, benötigt Zustand über Replikas hinweg. Das Gateway führt seine eigenen Schema-Migrationen beim Start und bei Upgrades aus, daher benötigt die Rolle Rechte zum Erstellen und Ändern von Tabellen im Zielschema. Siehe [Upgrades](/docs/de/claude-apps-gateway-deploy#upgrades) und [Postgres](/docs/de/claude-apps-gateway-deploy#postgres). |168| `postgres_url` | Ja | `postgres://` oder `postgresql://` URL. Erforderlich: das Device-Grant-Rendezvous, wo der Browser-Callback schreibt und die Polling-CLI liest, benötigt Zustand über Replikate hinweg. Das Gateway führt seine eigenen Schema-Migrationen beim Start und bei Upgrades aus, daher benötigt die Rolle Rechte zum Erstellen und Ändern von Tabellen im Zielschema. Siehe [Upgrades](/docs/de/claude-apps-gateway-deploy#upgrades) und [Postgres](/docs/de/claude-apps-gateway-deploy#postgres). |

169| `username` | Nein | Überschreibt den Benutzer in `postgres_url` |169| `username` | Nein | Überschreibt den Benutzer in `postgres_url` |

170| `password` | Nein | Datenbankberechtigungsnachweis. Setzen Sie ihn hier anstelle von `postgres_url`, damit der Berechtigungsnachweis aus der URL bleibt. Akzeptiert beliebige Zeichen und hat Vorrang vor URL-Berechtigungsnachweisen. |170| `password` | Nein | Datenbank-Anmeldedaten. Setzen Sie sie hier anstelle von `postgres_url`, damit die Anmeldedaten nicht in der URL stehen. Akzeptiert beliebige Zeichen und hat Vorrang vor Anmeldedaten in der URL. |

171| `max_connections` | Nein | Postgres-Verbindungspool-Größe pro Replik. Standard `5`, was konservativ und freundlich zu gemeinsamen Datenbanken ist. Mit [Ausgabenlimits](#admin) aktiviert, führt der Hot-Path einige Operationen pro Inference-Anfrage durch, daher erhöhen Sie ihn für eine dedizierte Datenbank unter Last, und halten Sie Replikas × dies unter dem `max_connections` der Datenbank. |171| `max_connections` | Nein | Postgres-Verbindungspool-Größe pro Replikat. Standard `5`, was konservativ und schonend für gemeinsam genutzte Datenbanken ist. Mit aktivierten [Ausgabenlimits](#admin) führt der Hot-Path einige Operationen pro Inference-Anfrage durch, daher erhöhen Sie den Wert für eine dedizierte Datenbank unter Last, und halten Sie Replikate × diesen Wert unter dem `max_connections` der Datenbank. |

172| `connect_timeout_seconds` | Nein | Sekunden, die das Gateway wartet, wenn es eine Postgres-Verbindung öffnet. Eine ganze Zahl von `1` bis `60`, Standard `5`. Erhöhen Sie, wenn Verbindungsversuche zeitlich überschritten werden, wenn eine neue Gateway-Instanz startet. Erfordert Claude Code v2.1.274 oder später auf dem Gateway-Server. Frühere Versionen weigern sich zu starten, wenn der Schlüssel gesetzt ist. |172| `connect_timeout_seconds` | Nein | Sekunden, die das Gateway wartet, wenn es eine Postgres-Verbindung öffnet. Eine ganze Zahl von `1` bis `60`, Standard `5`. Erhöhen Sie den Wert, wenn Verbindungsversuche beim Start einer neuen Gateway-Instanz in eine Zeitüberschreitung laufen. Erfordert Claude Code v2.1.274 oder später auf dem Gateway-Server. Frühere Versionen weigern sich zu starten, wenn der Schlüssel gesetzt ist. |

173| `readiness_grace_seconds` | Nein | Wie viele Sekunden `/readyz` weiterhin Bereitschaft meldet, nachdem Postgres nicht mehr antwortet. Eine ganze Zahl von `0` bis `3600`, Standard `0`. Siehe [Verhalten bei Ausfällen](/docs/de/claude-apps-gateway-deploy#outage-behavior) zur Wahl eines Werts. Erfordert Claude Code v2.1.282 oder später auf dem Gateway-Server. Frühere Versionen weigern sich zu starten, wenn der Schlüssel gesetzt ist. |

173 174 

174Für die lokale Entwicklung verweisen Sie `postgres_url` auf einen Wegwerf-Postgres-Container, zum Beispiel `docker run --rm -p 5432:5432 -e POSTGRES_HOST_AUTH_METHOD=trust postgres`.175Für die lokale Entwicklung verweisen Sie `postgres_url` auf einen Wegwerf-Postgres-Container, zum Beispiel `docker run --rm -p 5432:5432 -e POSTGRES_HOST_AUTH_METHOD=trust postgres`.

175 176 


179 180 

180`upstreams` ist eine geordnete Liste. Das Gateway leitet Inference an den ersten Upstream weiter, der das angeforderte Modell auflöst.181`upstreams` ist eine geordnete Liste. Das Gateway leitet Inference an den ersten Upstream weiter, der das angeforderte Modell auflöst.

181 182 

182Bei `5xx`, `429`, `401`, `403`, `404` oder Timeout schlägt das Gateway zum nächsten Upstream fehl über; andere `4xx` nicht, da diese Fehler dem Request statt dem Upstream zuzuordnen sind. Ein `401` oder `403` bedeutet, dass die eigene Berechtigung des Gateways gegen diesen Upstream fehlgeschlagen ist. Ein `404` bedeutet, dass dieser Upstream das angeforderte Modell nicht bereitstellt, daher kann ein späterer Upstream in der Liste es immer noch tun.183Bei `5xx`, `429`, `401`, `403`, `404` oder Timeout führt das Gateway ein Failover zum nächsten Upstream durch; bei anderen `4xx` nicht, da diese Fehler der Anfrage statt dem Upstream zuzuordnen sind. Ein `401` oder `403` bedeutet, dass die Anmeldedaten, die das Gateway gegenüber diesem Upstream verwendet hat, fehlgeschlagen sind. Ein `404` bedeutet, dass dieser Upstream das angeforderte Modell nicht bereitstellt, daher kann ein späterer Upstream in der Liste es immer noch tun.

183 184 

184Wenn Sie `forward_user_identity: true` auf einem Upstream setzen, schlägt ein `429`, das dieser auf eine Anfrage zurückgibt, die die E-Mail des Entwicklers trug, nicht fehl über. Siehe [wie eine Pro-Benutzer-Limit-Ablehnung den Entwickler erreicht](#per-user-identity-headers-for-a-proxy-you-run).185Wenn Sie `forward_user_identity: true` auf einem Upstream setzen, führt ein `429`, das dieser auf eine Anfrage zurückgibt, die die E-Mail des Entwicklers trug, nicht zu einem Failover. Siehe [wie eine Limit-Ablehnung pro Benutzer den Entwickler erreicht](#per-user-identity-headers-for-a-proxy-you-run).

185 186 

186Failover bei `404` erfordert Gateway v2.1.198 oder später. Frühere Versionen gaben den ersten `404` an den Client zurück, auch wenn ein späterer Upstream in der Liste das Modell bereitstellte.187Failover bei `404` erfordert Gateway v2.1.198 oder später. Frühere Versionen gaben den ersten `404` an den Client zurück, auch wenn ein späterer Upstream in der Liste das Modell bereitstellte.

187 188 

188Mehrere Upstreams desselben Anbieters müssen einen unterschiedlichen `name:` setzen.189Mehrere Upstreams desselben Anbieters müssen einen unterschiedlichen `name:` setzen.

189 190 

190Amazon Bedrock, Claude Platform on AWS, Google Cloud's Agent Platform und Microsoft Foundry-Clients werden beim Start einmal erstellt, und ihre SDKs aktualisieren Berechtigungsnachweise intern, daher erfordert das Rotieren von Cloud-Berechtigungsnachweisen keinen Neustart. Statische Anthropic-API-Schlüssel und Bearer werden beim Start gelesen; siehe [Anthropic API](#anthropic-api).191Amazon Bedrock, Claude Platform on AWS, Google Cloud's Agent Platform und Microsoft Foundry-Clients werden beim Start einmal erstellt, und ihre SDKs aktualisieren Anmeldedaten intern, daher erfordert das Rotieren von Cloud-Anmeldedaten keinen Neustart. Statische Anthropic-API-Schlüssel und Bearer werden beim Start gelesen; siehe [Anthropic API](#anthropic-api).

191 192 

192<h4 id="upstream-error-messages">193<h4 id="upstream-error-messages">

193 Upstream-Fehlermeldungen194 Upstream-Fehlermeldungen


195 196 

196Das Gateway gibt die Fehlerantwort eines Upstreams oder sein eigenes `502` zurück, je nachdem, wie die Upstreams antworteten:197Das Gateway gibt die Fehlerantwort eines Upstreams oder sein eigenes `502` zurück, je nachdem, wie die Upstreams antworteten:

197 198 

198* **Ein Upstream gab einen Status zurück, bei dem das Gateway nicht [fehlschlägt über](#multiple-upstreams)**: diese Upstream-Antwort. Das Gateway versucht keine weiteren Upstreams.199* **Ein Upstream gab einen Status zurück, bei dem das Gateway kein [Failover](#multiple-upstreams) durchführt**: die Antwort dieses Upstreams. Das Gateway versucht keine weiteren Upstreams.

199* **Jeder Upstream, den das Gateway versuchte, schlug auf eine Weise fehl, bei der es [fehlschlägt über](#multiple-upstreams)**: das letzte `429`. Wenn keiner ein `429` zurückgab, bevorzugt das Gateway in der Reihenfolge das letzte `401` oder `403`, das letzte `404` und das letzte `501`. Wenn keiner von diesen zurückgab, das eigene `502` des Gateways, `all upstreams failed (N attempted)`, wobei N jeden Eintrag in [`upstreams`](#upstreams) zählt, einschließlich Einträge, die das Gateway übersprungen hat, weil sie das angeforderte Modell nicht bereitstellen.200* **Jeder Upstream, den das Gateway versuchte, schlug auf eine Weise fehl, bei der es ein [Failover](#multiple-upstreams) durchführt**: das letzte `429`. Wenn keiner ein `429` zurückgab, bevorzugt das Gateway in der Reihenfolge das letzte `401` oder `403`, das letzte `404` und das letzte `501`. Wenn keiner davon zurückgegeben wurde, das eigene `502` des Gateways, `all upstreams failed (N attempted)`, wobei N jeden Eintrag in [`upstreams`](#upstreams) zählt, einschließlich Einträgen, die das Gateway übersprungen hat, weil sie das angeforderte Modell nicht bereitstellen.

200 201 

201Wenn das Gateway eine Upstream-Antwort zurückgibt, behält es den Statuscode des Upstreams. Ob es die Nachricht des Upstreams behält, hängt vom Anbieter ab. Eine Fehlerantwort eines Anthropic-API-Upstreams erreicht den Entwickler unverändert.202Wenn das Gateway eine Upstream-Antwort zurückgibt, behält es den Statuscode des Upstreams. Ob es die Nachricht des Upstreams behält, hängt vom Anbieter ab. Der Fehler-Body eines Anthropic-API-Upstreams erreicht den Entwickler unverändert.

202 203 

203Die Amazon Bedrock, Claude Platform on AWS, Google Cloud's Agent Platform und Microsoft Foundry-Upstreams können Ihre Konto-IDs, Rollen-ARNs und Projekt-IDs in ihrem Fehlertext benennen. Das Gateway zeichnet diesen vollständigen Text im [Betriebsprotokoll](/docs/de/claude-apps-gateway-deploy#logs) auf. Was der Entwickler von diesen Upstreams sieht, hängt von der Ablehnung ab:204Die Amazon Bedrock, Claude Platform on AWS, Google Cloud's Agent Platform und Microsoft Foundry-Upstreams können Ihre Konto-IDs, Rollen-ARNs und Projekt-IDs in ihrem Fehlertext benennen. Das Gateway zeichnet diesen vollständigen Text im [Betriebs-Log](/docs/de/claude-apps-gateway-deploy#logs) auf. Was der Entwickler von diesen Upstreams sieht, hängt von der Ablehnung ab:

204 205 

205* `400` oder `413` in Anthropics Standard-Fehler-Envelope: die eigene Nachricht des Upstreams, wie `prompt is too long`. Claude Platform on AWS, Agent Platform und Microsoft Foundry geben dieses Envelope für Modell-API-Ablehnungen zurück.206* `400` oder `413` in Anthropics Standard-Fehler-Envelope: die eigene Nachricht des Upstreams, wie `prompt is too long`. Claude Platform on AWS, Agent Platform und Microsoft Foundry geben dieses Envelope für Modell-API-Ablehnungen zurück.

206* `400` oder `413` in der eigenen Form des Anbieters: ein `capability_rejected:`-Token. Wenn das Gateway die Ablehnung nicht klassifizieren kann, `upstream rejected the request` bei einem `400` oder `request too large for this upstream` bei einem `413`.207* `400` oder `413` in der eigenen Form des Anbieters: ein `capability_rejected:`-Token. Wenn das Gateway die Ablehnung nicht klassifizieren kann, `upstream rejected the request` bei einem `400` oder `request too large for this upstream` bei einem `413`.

207* Jeder andere Status: generischer Pro-Status-Text, wie `upstream rate limit exceeded` bei einem `429`.208* Jeder andere Status: generischer Text pro Status, wie `upstream rate limit exceeded` bei einem `429`.

208 209 

209Zum Beispiel ersetzt das Gateway Amazon Bedrocks `Input is too long for requested model.` durch `capability_rejected: prompt_too_long`. Claude Code [komprimiert automatisch](/docs/de/errors#prompt-is-too-long) auf dieses Token, wie es auf `prompt is too long` tut.210Zum Beispiel ersetzt das Gateway Amazon Bedrocks `Input is too long for requested model.` durch `capability_rejected: prompt_too_long`. Claude Code [komprimiert automatisch](/docs/de/errors#prompt-is-too-long) bei diesem Token, wie es bei `prompt is too long` tut.

210 211 

211Das Beibehalten einer Cloud-Upstream-Nachricht von `400` oder `413` oder das Ersetzen durch ein `capability_rejected:`-Token erfordert Gateway v2.1.233 oder später.212Das Beibehalten einer Cloud-Upstream-Nachricht von `400` oder `413` oder das Ersetzen durch ein `capability_rejected:`-Token erfordert Gateway v2.1.233 oder später.

212 213 


226 # base_url: https://api.anthropic.com # default; override for a forward proxy227 # base_url: https://api.anthropic.com # default; override for a forward proxy

227```228```

228 229 

229Die zwei Berechtigungsnachweis-Formen unterscheiden sich im Header, den sie senden:230Die zwei Formen von Anmeldedaten unterscheiden sich im Header, den sie senden:

230 231 

231* **`api_key`**: sendet `x-api-key`. Rotieren Sie ihn in der Claude Console und aktualisieren Sie die Umgebungsvariable.232* **`api_key`**: sendet `x-api-key`. Rotieren Sie ihn in der Claude Console und aktualisieren Sie die Umgebungsvariable.

232* **`oauth_token`**: sendet `Authorization: Bearer`. Verwenden Sie die Bearer-Form, wenn Ihre Organisation kurzlebige Tokens statt langlebiger API-Schlüssel ausgibt. Der Bearer wird einmal beim Start gelesen, daher aktualisieren Sie durch Remounten des Geheimnisses und Neustart.233* **`oauth_token`**: sendet `Authorization: Bearer`. Verwenden Sie die Bearer-Form, wenn Ihre Organisation kurzlebige Tokens statt langlebiger API-Schlüssel ausgibt. Der Bearer wird einmal beim Start gelesen, daher aktualisieren Sie durch erneutes Mounten des Geheimnisses und Neustart.

233 234 

234Anstelle eines statischen Schlüssels oder Bearers können Sie Workload Identity Federation verwenden. Erstellen Sie eine Verbindungsregel, indem Sie dem [Workload Identity Federation-Leitfaden](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation) folgen, dann mounten Sie das OIDC-JWT Ihrer Workload als Datei, wie ein Kubernetes-projiziertes Service-Account-Token oder ein ID-Token einer CI-Plattform. Das Gateway tauscht das JWT gegen einen kurzlebigen Bearer aus und aktualisiert ihn automatisch. Die Token-Datei wird bei jedem Austausch erneut gelesen, daher werden rotierte projizierte Tokens ohne Neustart aufgegriffen.235Anstelle eines statischen Schlüssels oder Bearers können Sie Workload Identity Federation verwenden. Erstellen Sie eine Federation-Regel, indem Sie dem [Workload Identity Federation-Leitfaden](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation) folgen, dann mounten Sie das OIDC-JWT Ihrer Workload als Datei, wie ein Kubernetes-projiziertes Service-Account-Token oder ein ID-Token einer CI-Plattform. Das Gateway tauscht das JWT gegen einen kurzlebigen Bearer aus und aktualisiert ihn automatisch. Die Token-Datei wird bei jedem Austausch erneut gelesen, daher werden rotierte projizierte Tokens ohne Neustart übernommen.

235 236 

236```yaml theme={null}237```yaml theme={null}

237upstreams:238upstreams:


247<a id="per-user-identity-headers-for-a-proxy-you-run" />248<a id="per-user-identity-headers-for-a-proxy-you-run" />

248 249 

249<h5 id="per-user-identity-headers-for-a-proxy-you-run">250<h5 id="per-user-identity-headers-for-a-proxy-you-run">

250 Pro-Benutzer-Identitäts-Header für einen Proxy, den Sie betreiben251 Identitäts-Header pro Benutzer für einen Proxy, den Sie betreiben

251</h5>252</h5>

252 253 

253Sie können die `base_url` eines `provider: anthropic`-Upstreams auf einen Proxy verweisen, den Sie betreiben, anstatt auf die Anthropic API. Um diesem Proxy mitzuteilen, welcher Entwickler jede Anfrage gesendet hat, setzen Sie `forward_user_identity: true` auf diesem Upstream. Der Proxy kann dann Ausgaben pro Entwickler zuordnen. Erfordert ein Gateway, das Claude Code v2.1.233 oder später ausführt.254Sie können die `base_url` eines `provider: anthropic`-Upstreams auf einen Proxy verweisen, den Sie betreiben, anstatt auf die Anthropic API. Um diesem Proxy mitzuteilen, welcher Entwickler jede Anfrage gesendet hat, setzen Sie `forward_user_identity: true` auf diesem Upstream. Der Proxy kann dann Ausgaben pro Entwickler zuordnen. Erfordert ein Gateway, das Claude Code v2.1.233 oder später ausführt.


273 274 

274Wenn das IdP-Token keine E-Mail trägt, sendet das Gateway nur `x-claude-gateway-user-id` und lässt die zwei E-Mail-Header weg. Wenn Ihr IdP die E-Mail in einem anderen Anspruch ablegt, setzen Sie [`oidc.email_claim`](#oidc) auf diesen Anspruch.275Wenn das IdP-Token keine E-Mail trägt, sendet das Gateway nur `x-claude-gateway-user-id` und lässt die zwei E-Mail-Header weg. Wenn Ihr IdP die E-Mail in einem anderen Anspruch ablegt, setzen Sie [`oidc.email_claim`](#oidc) auf diesen Anspruch.

275 276 

276Wenn Ihr Proxy `429` auf eine Anfrage antwortet, die die E-Mail des Entwicklers trug, gibt das Gateway diese Antwort unverändert an den Entwickler zurück, anstatt zum nächsten Upstream fehlzuschlagen, daher hält das Budget oder die Ratenbegrenzung pro Benutzer Ihres Proxys. Die anderen Antworten des Proxys folgen den gewöhnlichen [Failover-Regeln](#upstreams). Wenn das IdP-Token eines Entwicklers keine E-Mail trägt, leitet das Gateway seine Anfragen ohne die E-Mail-Header weiter, daher zählt ein `429` auf eine dieser Anfragen als Upstream-Kapazität und schlägt fehl über. Vor v2.1.267 auf dem Gateway-Server schlug jedes `429` fehl über.277Wenn Ihr Proxy `429` auf eine Anfrage antwortet, die die E-Mail des Entwicklers trug, gibt das Gateway diese Antwort unverändert an den Entwickler zurück, anstatt ein Failover zum nächsten Upstream durchzuführen, sodass das Budget oder Rate-Limit pro Benutzer Ihres Proxys greift. Die anderen Antworten des Proxys folgen den gewöhnlichen [Failover-Regeln](#upstreams). Wenn das IdP-Token eines Entwicklers keine E-Mail trägt, leitet das Gateway seine Anfragen ohne die E-Mail-Header weiter, daher zählt ein `429` auf eine dieser Anfragen als Upstream-Kapazität und führt zu einem Failover. Vor v2.1.267 auf dem Gateway-Server führte jedes `429` zu einem Failover.

277 278 

278Setzen Sie `forward_user_identity` nur auf einem Upstream, dessen `base_url` ein Proxy ist, den Sie betreiben. Das Gateway sendet Entwickler-E-Mails an jeden Server, den diese `base_url` benennt. Wenn die `base_url` die Anthropic API ist, die Standard ist, weigert sich das Gateway zu starten.279Setzen Sie `forward_user_identity` nur auf einem Upstream, dessen `base_url` ein Proxy ist, den Sie betreiben. Das Gateway sendet Entwickler-E-Mails an jeden Server, den diese `base_url` benennt. Wenn die `base_url` die Anthropic API ist, was der Standard ist, weigert sich das Gateway zu starten.

279 280 

280<h4 id="amazon-bedrock">281<h4 id="amazon-bedrock">

281 Amazon Bedrock282 Amazon Bedrock

282</h4>283</h4>

283 284 

284Für die Client-seitige Amazon Bedrock-Bereitstellung, die das Gateway ersetzt oder frontet, siehe [Claude Code on Amazon Bedrock](/docs/de/amazon-bedrock). Der Gateway-seitige Upstream:285Für die clientseitige Amazon Bedrock-Bereitstellung, die das Gateway ersetzt oder der es vorgeschaltet ist, siehe [Claude Code on Amazon Bedrock](/docs/de/amazon-bedrock). Der gatewayseitige Upstream:

285 286 

286```yaml theme={null}287```yaml theme={null}

287upstreams:288upstreams:


300 # base_url: https://bedrock-runtime-fips.us-east-1.amazonaws.com301 # base_url: https://bedrock-runtime-fips.us-east-1.amazonaws.com

301```302```

302 303 

303Ein leerer `auth`-Block verwendet die Standard-Berechtigungskette des AWS SDK: Umgebungsvariablen, `~/.aws/credentials`, ECS-Task-Rolle, EC2-Instanz-Metadaten oder IRSA auf EKS. Geben Sie in der Produktion dem Gateway-Pod eine IAM-Rolle, anstatt statische Schlüssel in ein Container-Image einzubetten.304Ein leerer `auth`-Block verwendet die Standard-Anmeldedatenkette des AWS SDK: Umgebungsvariablen, `~/.aws/credentials`, ECS-Task-Rolle, EC2-Instanz-Metadaten oder IRSA auf EKS. Geben Sie in der Produktion dem Gateway-Pod eine IAM-Rolle, anstatt statische Schlüssel in ein Container-Image einzubetten.

304 305 

305Explizite Berechtigungsnachweise müssen vollständig sein: Das Gateway schlägt beim Start fehl, wenn `aws_access_key_id` und `aws_secret_access_key` nicht zusammen gesetzt sind, oder wenn `aws_session_token` ohne sie gesetzt ist. Vor v2.1.207 bestand ein partieller `auth:`-Block die Validierung.306Explizite Anmeldedaten müssen vollständig sein: Das Gateway schlägt beim Start fehl, wenn `aws_access_key_id` und `aws_secret_access_key` nicht zusammen gesetzt sind, oder wenn `aws_session_token` ohne sie gesetzt ist. Vor v2.1.207 bestand ein unvollständiger `auth:`-Block die Validierung.

306 307 

307| Setup | Wie |308| Setup | Wie |

308| - | - |309| - | - |

309| IAM-Berechtigungen | Gewähren Sie dem Principal des Gateways `bedrock:InvokeModel` und `bedrock:InvokeModelWithResponseStream` auf sowohl den Inference-Profil-ARNs als auch den zugrunde liegenden Foundation-Modell-ARNs. Für den integrierten Katalog in US-Regionen: `arn:aws:bedrock:<region>:<account>:inference-profile/us.anthropic.*` und `arn:aws:bedrock:*::foundation-model/anthropic.*`. Gewähren Sie auch `bedrock:CountTokens` auf den Foundation-Modell-ARNs. Das Gateway verwendet es, kostenlos, um die Eingabe-Tokens einer Anfrage zu zählen, die der Client abgebrochen hat, daher bleiben [Ausgabenlimits](#admin) genau. Ohne es fällt das Gateway auf eine Ein-Token-Bedrock-Anfrage für diese Zählung zurück. |310| IAM-Berechtigungen | Gewähren Sie dem Principal des Gateways `bedrock:InvokeModel` und `bedrock:InvokeModelWithResponseStream` sowohl auf den Inference-Profil-ARNs als auch auf den zugrunde liegenden Foundation-Modell-ARNs. Für den integrierten Katalog in US-Regionen: `arn:aws:bedrock:<region>:<account>:inference-profile/us.anthropic.*` und `arn:aws:bedrock:*::foundation-model/anthropic.*`. Gewähren Sie auch `bedrock:CountTokens` auf den Foundation-Modell-ARNs. Das Gateway verwendet es kostenlos, um die Eingabe-Token einer Anfrage zu zählen, die der Client abgebrochen hat, damit [Ausgabenlimits](#admin) genau bleiben. Ohne es fällt das Gateway für diese Zählung auf eine Ein-Token-Bedrock-Anfrage zurück. |

310| Modellzugriff | Amazon Bedrock aktiviert Modellzugriff standardmäßig in kommerziellen Regionen. Das verbleibende Konto-Level-Gate ist Anthropics einmaliges Anwendungsformular: Wenn niemand in Ihrem AWS-Konto es eingereicht hat, öffnen Sie die Amazon Bedrock-Konsole, wählen Sie ein Anthropic-Modell aus dem Modellkatalog und füllen Sie das Formular aus. Siehe [Anwendungsdetails einreichen](/docs/de/amazon-bedrock#1-submit-use-case-details) für das AWS Organizations-Formular und die Berechtigungen, die der Einreicher benötigt. |311| Modellzugriff | Amazon Bedrock aktiviert Modellzugriff standardmäßig in kommerziellen Regionen. Die verbleibende Hürde auf Kontoebene ist Anthropics einmaliges Anwendungsfall-Formular: Wenn niemand in Ihrem AWS-Konto es eingereicht hat, öffnen Sie die Amazon Bedrock-Konsole, wählen Sie ein Anthropic-Modell aus dem Modellkatalog und füllen Sie das Formular aus. Siehe [Anwendungsfall-Details einreichen](/docs/de/amazon-bedrock#1-submit-use-case-details) für das AWS Organizations-Formular und die Berechtigungen, die der Einreicher benötigt. |

311| EKS (IRSA) | Erstellen Sie eine IAM-Rolle mit der obigen Richtlinie und einer Vertrauensrichtlinie für den OIDC-Provider Ihres Clusters, der auf das Service-Account des Gateways beschränkt ist. Kommentieren Sie das Service-Account mit `eks.amazonaws.com/role-arn: arn:aws:iam::<acct>:role/claude-gateway`. `auth: {}` nimmt es auf. |312| EKS (IRSA) | Erstellen Sie eine IAM-Rolle mit der obigen Richtlinie und einer Vertrauensrichtlinie für den OIDC-Provider Ihres Clusters, die auf den Service-Account des Gateways beschränkt ist. Annotieren Sie den Service-Account mit `eks.amazonaws.com/role-arn: arn:aws:iam::<acct>:role/claude-gateway`. `auth: {}` übernimmt sie. |

312| ECS / EC2 | Fügen Sie die IAM-Rolle an die Task-Definition oder das Instance-Profil an. `auth: {}` nimmt es auf. |313| ECS / EC2 | Hängen Sie die IAM-Rolle an die Task-Definition oder das Instance-Profil an. `auth: {}` übernimmt sie. |

313| Überall sonst | Übergeben Sie Berechtigungsnachweise über die Umgebungsvariablen `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY` und `AWS_SESSION_TOKEN`, oder setzen Sie sie explizit in `auth:` mit `${VAR}`-Erweiterung |314| Überall sonst | Übergeben Sie Anmeldedaten über die Umgebungsvariablen `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY` und `AWS_SESSION_TOKEN`, oder setzen Sie sie explizit in `auth:` mit `${VAR}`-Erweiterung |

314| Region | `region:` ist die API-Endpunkt-Region. Cross-Region-Inference-Profile leiten über die Geo (US, EU, APAC) weiter, unabhängig davon, welche Sie wählen. Für Nicht-US-Regionen oder bereitgestellte Durchsatz-ARNs fügen Sie einen [`models:`](#models)-Block mit den richtigen Pro-Upstream-IDs hinzu. |315| Region | `region:` ist die API-Endpunkt-Region. Cross-Region-Inference-Profile leiten innerhalb der Geo (US, EU, APAC) weiter, unabhängig davon, welche Sie wählen. Für Nicht-US-Regionen oder Provisioned-Throughput-ARNs fügen Sie einen [`models:`](#models)-Block mit den richtigen IDs pro Upstream hinzu. |

316 

317<h5 id="apply-an-amazon-bedrock-guardrail">

318 Eine Amazon Bedrock-Guardrail anwenden

319</h5>

320 

321Um eine Amazon Bedrock-Guardrail auf jede Inference-Anfrage anzuwenden, die das Gateway über einen Bedrock-Upstream sendet, fügen Sie diesem Upstream einen `guardrail`-Block hinzu. Erfordert Claude Code v2.1.281 oder später auf dem Gateway-Server.

322 

323```yaml theme={null}

324upstreams:

325 - provider: bedrock

326 region: us-east-1

327 auth: {}

328 guardrail:

329 id: gr-abc123 # guardrail ID or full ARN

330 version: "1" # a published version number, or DRAFT

331 # keep the quotes: a bare 1 fails at boot

332```

333 

334<Warning>

335 Das Gateway unterstützt keine Guardrail-Eingabe-Tags. Es fügt Prompts keine Guard-Content-Tags hinzu, daher wird ein Guardrail-Filter, den Amazon Bedrock nur auf getaggte Eingaben anwendet, bei Traffic über das Gateway nicht ausgeführt. Welche Filter von Eingabe-Tags abhängen, erfahren Sie unter [Eingabe-Tags](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-tagging.html) in der Amazon Bedrock-Dokumentation.

336</Warning>

337 

338Gewähren Sie außerdem `bedrock:ApplyGuardrail` auf die Guardrail dem Principal, der die Anfragen dieses Upstreams signiert: dem AWS-Principal des Gateways oder, mit [`assume_role`](#bedrock-in-another-aws-account), der in `role_arn` benannten Rolle.

339 

340Setzen Sie `guardrail` auf jedem `bedrock`-Upstream oder auf keinem. Bei einer Mischung weigert sich das Gateway zu starten, da [Failover](#multiple-upstreams) eine Anfrage sonst an einen Bedrock-Upstream ohne Guardrail senden könnte.

341 

342Die Guardrail gilt nur für Bedrock-Upstreams. Wenn Sie einen anderen Anbieter in `upstreams` auflisten, sendet das Gateway Anfragen an diesen Anbieter ohne die Guardrail.

343 

344Wenn eine `/v1/messages`-Anfrage, deren Body ein `amazon-bedrock-*`-Feld wie `amazon-bedrock-guardrailConfig` enthält, einen Bedrock-Upstream mit gesetztem `guardrail` erreicht, antwortet das Gateway mit 400, statt sie weiterzuleiten.

345 

346<a id="bedrock-in-another-aws-account" />

347 

348<h5 id="bedrock-in-another-aws-account">

349 Bedrock in einem anderen AWS-Konto

350</h5>

351 

352Setzen Sie `assume_role` auf einem Bedrock-Upstream, und das Gateway verwendet seine eigene AWS-Identität nur, um `sts:AssumeRole` für eine von Ihnen benannte Rolle aufzurufen, die sich in einem anderen AWS-Konto als das Gateway befinden kann. Jede Bedrock-Anfrage von diesem Upstream wird mit den einstündigen Anmeldedaten signiert, die STS zurückgibt, sodass kein langlebiger Zugriffsschlüssel Kontogrenzen überschreitet.

353 

354Erfordert ein Gateway, das Claude Code v2.1.281 oder später ausführt. Ein früheres Gateway weigert sich zu starten, wenn es den Schlüssel findet.

355 

356```yaml theme={null}

357upstreams:

358 - name: bedrock-isolated

359 provider: bedrock

360 region: us-east-1

361 auth: {} # the gateway's own role: it only calls STS

362 assume_role:

363 role_arn: arn:aws:iam::222222222222:role/claude-gateway-bedrock

364 # external_id: ${BEDROCK_ROLE_EXTERNAL_ID} # when the role's trust policy requires one

365```

366 

367Der `assume_role`-Block akzeptiert drei Schlüssel:

368 

369| Schlüssel | Bedeutung |

370| - | - |

371| `role_arn` | Die IAM-Rolle, die das Gateway annimmt, als `arn:aws:iam::`- oder `arn:aws-us-gov:iam::`-ARN. Geben Sie ihr die [Bedrock-Berechtigungen](#amazon-bedrock), die dieser Upstream benötigt, einschließlich `bedrock:CountTokens`, sowie `bedrock:ApplyGuardrail`, wenn der Upstream `guardrail` setzt. |

372| `external_id` | Optional. Wird bei jedem `sts:AssumeRole`-Aufruf als External ID gesendet. Setzen Sie sie, wenn die Vertrauensrichtlinie der Rolle eine verlangt, und setzen Sie sie in Anführungszeichen, wenn sie nur aus Ziffern besteht. |

373| `session_name` | Optional. `email` oder `sub` gibt jedem Entwickler eine eigene Sitzung: siehe [AWS-Kostenzuordnung pro Entwickler](#per-developer-aws-cost-attribution). Ohne Angabe verwendet jede Anfrage eine Sitzung namens `claude-apps-gateway`. |

374 

375Die Vertrauensrichtlinie der Rolle benennt den eigenen Principal des Gateways, etwa seine IRSA- oder ECS-Task-Rolle. Dieser Principal benötigt `sts:AssumeRole` für die Rolle und keine eigene Bedrock-Berechtigung. Entfernen Sie die `Condition`, wenn Sie keine `external_id` setzen.

376 

377```json theme={null}

378{

379 "Version": "2012-10-17",

380 "Statement": [{

381 "Effect": "Allow",

382 "Principal": { "AWS": "arn:aws:iam::111111111111:role/claude-gateway" },

383 "Action": "sts:AssumeRole",

384 "Condition": { "StringEquals": { "sts:ExternalId": "your-external-id" } }

385 }]

386}

387```

388 

389* Wenn STS ablehnt oder nicht erreichbar ist, sendet das Gateway die Anfrage nicht mit den eigenen Anmeldedaten des Upstreams. Es protokolliert den STS-Fehler zusammen mit dem, was zu prüfen ist, und versucht dann den nächsten aufgelisteten Upstream. [Upstream-Fehlermeldungen](#upstream-error-messages) beschreibt, was der Client erhält, wenn kein Upstream erfolgreich ist. Ein späterer Upstream ohne `assume_role` würde die Anfrage mit seinen eigenen Anmeldedaten bedienen, listen Sie einen solchen also nur auf, wenn Sie das wollen.

390* Das Gateway ruft den regionalen STS-Endpunkt `sts.<region>.amazonaws.com` auf, den sein Netzwerk erreichen muss. Für den FIPS-Endpunkt setzen Sie `AWS_USE_FIPS_ENDPOINT=true` in der Umgebung des Gateways statt `use_fips_endpoint` in einer AWS-Konfigurationsdatei.

391* `assume_role` gilt nur für `provider: bedrock` und benötigt SigV4-Quell-Anmeldedaten: Das Gateway weigert sich zu starten, wenn es neben `aws_bearer_token` gesetzt ist.

392* Jeder Entwickler, den das Gateway zulässt, kann diesen Upstream verwenden; [`managed`](#managed) regelt, welche Entwickler welche Modelle verwenden dürfen. Damit ein über die Rolle bereitgestelltes Modell nicht auch aus einem anderen Konto bereitgestellt wird, geben Sie ihm eine benutzerdefinierte ID, deren `upstream_model`-Zuordnung nur den Namen dieses Upstreams enthält. Für eine solche ID überspringt das Gateway jeden anderen Upstream, sodass weder die Anfrage noch die Token-Zählung für eine abgebrochene Anfrage per Failover an ein anderes Konto gehen kann. Integrierte Modellnamen werden weiterhin der Reihe nach auf jedem Upstream versucht, einschließlich diesem, und eine Anfrage, die ihn erreicht, wird mit derselben Rolle signiert; listen Sie diesen Upstream daher zuletzt auf, sofern sein Konto sie nicht ebenfalls bedienen soll.

393 

394Dieses Beispiel gibt einem Modell eine benutzerdefinierte ID, die nur der isolierte Upstream bereitstellt:

395 

396```yaml theme={null}

397models:

398 - id: claude-opus-restricted # a custom id, not a built-in model name

399 upstream_model:

400 bedrock-isolated: us.anthropic.claude-opus-4-8 # the only upstream that serves it

401```

402 

403<a id="per-developer-aws-cost-attribution" />

404 

405<h5 id="per-developer-aws-cost-attribution">

406 AWS-Kostenzuordnung pro Entwickler

407</h5>

408 

409Standardmäßig signiert das Gateway jede Bedrock-Anfrage mit denselben Anmeldedaten, sodass AWS die Anfragen aller Entwickler unter einem einzigen IAM-Principal sieht. Fügen Sie `session_name: email` zu [`assume_role`](#bedrock-in-another-aws-account) hinzu, und das Gateway ruft `sts:AssumeRole` einmal pro Entwickler und Stunde auf, wobei der Sitzungsname auf die E-Mail dieses Entwicklers gesetzt ist, und signiert dessen Anfragen mit den zurückgegebenen Anmeldedaten, sodass die Anfragen jedes Entwicklers AWS unter seiner eigenen Assumed-Role-Sitzung erreichen. Die Rolle kann sich im eigenen Konto des Gateways befinden.

410 

411Erfordert ein Gateway, das Claude Code v2.1.281 oder später ausführt. [Kostenzuordnung auf AWS](/docs/de/claude-apps-gateway-on-aws#cost-attribution) behandelt die IAM-Rolle und wo die AWS-Abrechnung die Sitzungen anzeigt.

412 

413```yaml theme={null}

414upstreams:

415 - provider: bedrock

416 region: us-east-1

417 auth: {} # the gateway's own role: it only calls STS

418 assume_role:

419 role_arn: arn:aws:iam::123456789012:role/claude-gateway-bedrock-user

420 session_name: email # or sub

421```

422 

423`session_name` wählt aus, welcher verifizierte Anspruch zum AWS-`RoleSessionName` wird: `email` oder `sub`. Das Gateway schreibt jedes Zeichen außer ASCII-Buchstaben, Ziffern und `_+,.@-` als `=XX`-Hex pro UTF-8-Byte und kürzt ein Ergebnis, das länger als 64 Zeichen ist, auf ein Präfix plus einen Hash, sodass der Sitzungsname jedes Entwicklers gültig und eindeutig bleibt. Eine Anfrage eines Entwicklers, dessen Token den Anspruch nicht enthält, wird nicht über diesen Upstream gesendet, und das Operator-Log weist darauf hin, zu `sub` zu wechseln oder [`oidc.email_claim`](#oidc) zu setzen.

424 

425Ein aktiver Entwickler verursacht einen STS-Aufruf pro Stunde pro Gateway-Replikat, und gleichzeitige erste Anfragen teilen sich einen Aufruf.

426 

427Das Gateway führt mit dieser Rolle auch einen eigenen Aufruf aus: die Token-Zählung für eine Anfrage, die der Client abgebrochen hat, damit [Ausgabenlimits](/docs/de/claude-apps-gateway-spend-limits) genau bleiben. Diese Zählung und ihre [Ein-Token-Fallback-Anfrage](#amazon-bedrock) werden von der gemeinsamen `claude-apps-gateway`-Sitzung signiert, daher ordnet AWS den Fallback `claude-apps-gateway` statt dem Entwickler zu.

428 

429Für eine strikte Zuordnung pro Entwickler setzen Sie `assume_role` mit `session_name` auf jedem aufgelisteten Bedrock-Upstream. Ein Upstream ohne diese Einstellung signiert die Anfragen, die er bedient, mit seinen eigenen Anmeldedaten.

315 430 

316<h4 id="claude-platform-on-aws">431<h4 id="claude-platform-on-aws">

317 Claude Platform on AWS432 Claude Platform on AWS

318</h4>433</h4>

319 434 

320Claude Platform on AWS bedient die First-Party-Anthropic-API auf AWS-Infrastruktur unter `aws-external-anthropic.<region>.api.aws`. Sie verwendet First-Party-Modell-IDs, beachtet `anthropic-beta`-Header wie gesendet und bedient `count_tokens`, daher gilt keine der Bedrock-spezifischen Übersetzung. Der `anthropicAws`-Provider erfordert Claude Code v2.1.198 oder später; frühere Gateway-Versionen lehnen ihn beim Start ab.435Claude Platform on AWS stellt die First-Party-Anthropic-API auf AWS-Infrastruktur unter `aws-external-anthropic.<region>.api.aws` bereit. Sie verwendet First-Party-Modell-IDs, beachtet `anthropic-beta`-Header wie gesendet und stellt `count_tokens` bereit, daher entfällt jegliche Bedrock-spezifische Übersetzung. Der `anthropicAws`-Provider erfordert Claude Code v2.1.198 oder später; frühere Gateway-Versionen lehnen ihn beim Start ab.

321 436 

322Für die Client-seitige Bereitstellung derselben Plattform siehe [Claude Code on Claude Platform on AWS](/docs/de/claude-platform-on-aws). Der Gateway-seitige Upstream:437Für die clientseitige Bereitstellung derselben Plattform siehe [Claude Code on Claude Platform on AWS](/docs/de/claude-platform-on-aws). Der gatewayseitige Upstream:

323 438 

324```yaml theme={null}439```yaml theme={null}

325upstreams:440upstreams:


338 # base_url: https://aws-external-anthropic.us-east-1.api.aws453 # base_url: https://aws-external-anthropic.us-east-1.api.aws

339```454```

340 455 

341Die Plattform läuft in einem separaten AWS-Konto von Amazon Bedrock und signiert SigV4-Anfragen für seinen eigenen Service-Namen, `aws-external-anthropic`, daher autorisiert eine Bedrock-scoped IAM-Rolle es nicht. Ein API-Schlüssel in `auth.api_key` hat Vorrang, wenn SigV4-Berechtigungsnachweise auch gesetzt sind. Ein leerer `auth`-Block verwendet die Standard-Berechtigungskette des AWS SDK, die gleiche Kette, die der [Amazon Bedrock](#amazon-bedrock)-Upstream verwendet.456Die Plattform läuft in einem von Amazon Bedrock getrennten AWS-Konto und signiert SigV4-Anfragen für ihren eigenen Service-Namen, `aws-external-anthropic`, daher autorisiert eine auf Bedrock beschränkte IAM-Rolle sie nicht. Ein API-Schlüssel in `auth.api_key` hat Vorrang, wenn auch SigV4-Anmeldedaten gesetzt sind. Ein leerer `auth`-Block verwendet die Standard-Anmeldedatenkette des AWS SDK, die gleiche Kette, die der [Amazon Bedrock](#amazon-bedrock)-Upstream verwendet.

342 457 

343| Feld | Erforderlich | Beschreibung |458| Feld | Erforderlich | Beschreibung |

344| - | - | - |459| - | - | - |

345| `region` | Ja | AWS-Region, Kleinbuchstaben, Ziffern und Bindestriche. Das Gateway leitet den Endpunkt davon ab als `https://aws-external-anthropic.<region>.api.aws`. |460| `region` | Ja | AWS-Region, Kleinbuchstaben, Ziffern und Bindestriche. Das Gateway leitet den Endpunkt davon ab als `https://aws-external-anthropic.<region>.api.aws`. |

346| `workspace_id` | Ja | Wird als Header bei jeder Anfrage gesendet; die Plattform erfordert es |461| `workspace_id` | Ja | Wird als Header bei jeder Anfrage gesendet; die Plattform erfordert es |

347| `auth.api_key` | Nein | API-Schlüssel für die Plattform, gesendet als `x-api-key`. Kein Bearer-Token: die zwei Auth-Modi sind ein API-Schlüssel oder SigV4. |462| `auth.api_key` | Nein | API-Schlüssel für die Plattform, gesendet als `x-api-key`. Kein Bearer-Token: die zwei Auth-Modi sind ein API-Schlüssel oder SigV4. |

348| `auth.aws_access_key_id` / `auth.aws_secret_access_key` | Nein | Explizite SigV4-Berechtigungsnachweise. Das Setzen eines ohne das andere schlägt beim Start fehl. `auth.aws_session_token` wird neben ihnen akzeptiert. |463| `auth.aws_access_key_id` / `auth.aws_secret_access_key` | Nein | Explizite SigV4-Anmeldedaten. Das Setzen eines ohne das andere schlägt beim Start fehl. `auth.aws_session_token` wird neben ihnen akzeptiert. |

349| `base_url` | Nein | Überschreiben Sie den abgeleiteten Endpunkt |464| `base_url` | Nein | Überschreiben Sie den abgeleiteten Endpunkt |

350 465 

351Da die Plattform First-Party-Modell-IDs auflöst, leitet der integrierte Katalog zu ihr ohne [`models:`](#models)-Block weiter. Wenn Sie eine `models:`-Liste kuratieren, schlüsseln Sie den Eintrag `anthropicAws:` mit der First-Party-ID.466Da die Plattform First-Party-Modell-IDs auflöst, leitet der integrierte Katalog ohne [`models:`](#models)-Block an sie weiter. Wenn Sie eine `models:`-Liste kuratieren, verwenden Sie für den Eintrag den Schlüssel `anthropicAws:` mit der First-Party-ID.

352 467 

353<h4 id="google-cloud-agent-platform">468<h4 id="google-cloud-agent-platform">

354 Google Cloud Agent Platform469 Google Cloud Agent Platform

355</h4>470</h4>

356 471 

357Für das äquivalente Client-seitige Setup siehe [Claude Code on Google Cloud](/docs/de/google-vertex-ai). Der Gateway-seitige Upstream:472Für das äquivalente clientseitige Setup siehe [Claude Code on Google Cloud](/docs/de/google-vertex-ai). Der gatewayseitige Upstream:

358 473 

359```yaml theme={null}474```yaml theme={null}

360upstreams:475upstreams:


368 # base_url: https://us-east5-aiplatform.p.googleapis.com483 # base_url: https://us-east5-aiplatform.p.googleapis.com

369```484```

370 485 

371Ein leerer `auth`-Block verwendet Application Default Credentials: `GOOGLE_APPLICATION_CREDENTIALS`, GCE-Metadaten oder GKE Workload Identity. Service-Account-JSON-Schlüsseldateien werden unterstützt, aber nicht empfohlen; verwenden Sie Workload Identity oder fügen Sie ein Service-Account an die GCE- oder Cloud Run-Instanz an.486Ein leerer `auth`-Block verwendet Application Default Credentials: `GOOGLE_APPLICATION_CREDENTIALS`, GCE-Metadaten oder GKE Workload Identity. Service-Account-JSON-Schlüsseldateien werden unterstützt, aber nicht empfohlen; verwenden Sie Workload Identity oder hängen Sie einen Service-Account an die GCE- oder Cloud Run-Instanz an.

372 487 

373Setzen Sie `region: global`, um den [globalen Endpunkt für Google Cloud's Agent Platform](https://cloud.google.com/vertex-ai/generative-ai/docs/learn/locations) anstelle eines regionalen zu verwenden. Google leitet dann jede Anfrage an eine verfügbare Region weiter, daher verfolgen Sie keine Pro-Region-Modellverfügbarkeit. Das Setzen einer bestimmten Region heftet jede Anfrage daran.488Setzen Sie `region: global`, um den [globalen Endpunkt für Google Cloud's Agent Platform](https://cloud.google.com/vertex-ai/generative-ai/docs/learn/locations) anstelle eines regionalen zu verwenden. Google leitet dann jede Anfrage an eine verfügbare Region weiter, sodass Sie die Modellverfügbarkeit pro Region nicht verfolgen müssen. Das Setzen einer bestimmten Region bindet jede Anfrage an diese.

374 489 

375| Setup | Wie |490| Setup | Wie |

376| - | - |491| - | - |

377| IAM-Berechtigungen | Gewähren Sie dem Service-Account des Gateways `roles/aiplatform.user` auf dem Projekt, oder eine benutzerdefinierte Rolle mit `aiplatform.endpoints.predict`. Aktivieren Sie Google Cloud's Agent Platform API (`aiplatform.googleapis.com`). |492| IAM-Berechtigungen | Gewähren Sie dem Service-Account des Gateways `roles/aiplatform.user` auf dem Projekt, oder eine benutzerdefinierte Rolle mit `aiplatform.endpoints.predict`. Aktivieren Sie die Google Cloud's Agent Platform API (`aiplatform.googleapis.com`). |

378| Modellzugriff | Aktivieren Sie in Model Garden die Claude-Modelle für Ihr Projekt. Sie veröffentlichen zu bestimmten Regionen; überprüfen Sie die Modellkarte auf unterstützte Regionen. |493| Modellzugriff | Aktivieren Sie in Model Garden die Claude-Modelle für Ihr Projekt. Sie werden in bestimmten Regionen veröffentlicht; prüfen Sie die Modellkarte auf unterstützte Regionen. |

379| GKE (Workload Identity) | Binden Sie ein GCP-Service-Account an das Kubernetes-Service-Account des Gateways und kommentieren Sie das KSA mit `iam.gke.io/gcp-service-account: claude-gateway@<proj>.iam.gserviceaccount.com`. `auth: {}` nimmt es auf. |494| GKE (Workload Identity) | Binden Sie einen GCP-Service-Account an den Kubernetes-Service-Account des Gateways und annotieren Sie den KSA mit `iam.gke.io/gcp-service-account: claude-gateway@<proj>.iam.gserviceaccount.com`. `auth: {}` übernimmt ihn. |

380| Cloud Run / GCE | Setzen Sie das Service-Account des Service auf eines mit `roles/aiplatform.user`. `auth: {}` nimmt es auf. |495| Cloud Run / GCE | Setzen Sie den Service-Account des Service auf einen mit `roles/aiplatform.user`. `auth: {}` übernimmt ihn. |

381| Überall sonst | `auth: { service_account_json: /secrets/sa.json }`, der Pfad zu einer JSON-Schlüsseldatei, die als Geheimnis bereitgestellt wird. Das Feld nimmt einen Dateipfad, nicht den Schlüsselinhalt, daher ist keine `${file:…}`-Erweiterung beteiligt. |496| Überall sonst | `auth: { service_account_json: /secrets/sa.json }`, der Pfad zu einer JSON-Schlüsseldatei, die als Geheimnis gemountet ist. Das Feld nimmt einen Dateipfad, nicht den Schlüsselinhalt, daher ist keine `${file:…}`-Erweiterung beteiligt. |

382 497 

383<h4 id="microsoft-foundry">498<h4 id="microsoft-foundry">

384 Microsoft Foundry499 Microsoft Foundry

385</h4>500</h4>

386 501 

387Für die Client-seitige Microsoft Foundry-Bereitstellung siehe [Claude Code on Microsoft Foundry](/docs/de/microsoft-foundry). Der Gateway-seitige Upstream:502Für die clientseitige Microsoft Foundry-Bereitstellung siehe [Claude Code on Microsoft Foundry](/docs/de/microsoft-foundry). Der gatewayseitige Upstream:

388 503 

389```yaml theme={null}504```yaml theme={null}

390upstreams:505upstreams:


396 # api_key: ${FOUNDRY_API_KEY}511 # api_key: ${FOUNDRY_API_KEY}

397```512```

398 513 

399`use_azure_ad: true` löst durch `DefaultAzureCredential` auf: Managed Identity auf AKS, ACI oder App Service; die Azure CLI; oder Umgebungsberechtigungsnachweise. API-Schlüssel funktionieren, sind aber projektumfassend und rotieren nicht automatisch. Der Endpunkt von Microsoft Foundry wird von `resource:` abgeleitet; setzen Sie das optionale `base_url`, um es für souveräne Clouds wie Azure Government zu überschreiben.514`use_azure_ad: true` löst über `DefaultAzureCredential` auf: Managed Identity auf AKS, ACI oder App Service; die Azure CLI; oder Anmeldedaten aus der Umgebung. API-Schlüssel funktionieren, gelten aber projektweit und rotieren nicht automatisch. Der Endpunkt von Microsoft Foundry wird von `resource:` abgeleitet; setzen Sie das optionale `base_url`, um ihn für souveräne Clouds wie Azure Government zu überschreiben.

400 515 

401| Setup | Wie |516| Setup | Wie |

402| - | - |517| - | - |

403| RBAC | Gewähren Sie der Identität des Gateways `Azure AI User` oder `Cognitive Services User` auf der Microsoft Foundry-Ressource |518| RBAC | Gewähren Sie der Identität des Gateways `Azure AI User` oder `Cognitive Services User` auf der Microsoft Foundry-Ressource |

404| Bereitstellungen | Microsoft Foundry verwendet von Administratoren gewählte Bereitstellungsnamen, nicht kanonische Modell-IDs. Fügen Sie einen [`models:`](#models)-Block hinzu, der jede kanonische ID Ihrem Bereitstellungsnamen zuordnet. |519| Deployments | Microsoft Foundry verwendet von Administratoren gewählte Deployment-Namen, nicht kanonische Modell-IDs. Fügen Sie einen [`models:`](#models)-Block hinzu, der jede kanonische ID Ihrem Deployment-Namen zuordnet. |

405| AKS (Workload Identity) | Verbinden Sie eine User-Assigned Managed Identity mit dem OIDC-Aussteller des Clusters und binden Sie sie an das Service-Account des Gateways. `use_azure_ad: true` nimmt es über `WorkloadIdentityCredential` auf. |520| AKS (Workload Identity) | Verknüpfen Sie eine User-Assigned Managed Identity per Federation mit dem OIDC-Aussteller des Clusters und binden Sie sie an den Service-Account des Gateways. `use_azure_ad: true` übernimmt sie über `WorkloadIdentityCredential`. |

406| ACI / App Service | Aktivieren Sie system-zugewiesene oder user-zugewiesene Managed Identity auf der Ressource. `use_azure_ad: true` nimmt es auf. |521| ACI / App Service | Aktivieren Sie eine system- oder benutzerzugewiesene Managed Identity auf der Ressource. `use_azure_ad: true` übernimmt sie. |

407| Überall sonst | `auth: { api_key: "${FOUNDRY_API_KEY}" }`. Zitieren Sie `${…}` innerhalb von `{ }`. |522| Überall sonst | `auth: { api_key: "${FOUNDRY_API_KEY}" }`. Setzen Sie `${…}` innerhalb von `{ }` in Anführungszeichen. |

408 523 

409<h4 id="static-headers-on-upstream-requests">524<h4 id="static-headers-on-upstream-requests">

410 Statische Header auf Upstream-Anfragen525 Statische Header auf Upstream-Anfragen

411</h4>526</h4>

412 527 

413Um feste Header zu den Anfragen hinzuzufügen, die das Gateway an einen Upstream sendet, setzen Sie `headers:` auf diesem Upstream. Verwenden Sie es, wenn ein Proxy, den Sie vor dem Anbieter betreiben, Traffic nach einem Header leitet oder zuordnet.528Um feste Header zu den Anfragen hinzuzufügen, die das Gateway an einen Upstream sendet, setzen Sie `headers:` auf diesem Upstream. Verwenden Sie es, wenn ein Proxy, den Sie vor dem Anbieter betreiben, Traffic anhand eines Headers weiterleitet oder zuordnet.

414 529 

415`headers:` erfordert Claude Code v2.1.277 oder später auf dem Gateway-Server. Ein früheres Gateway weigert sich zu starten, wenn es den Schlüssel findet. Aktualisieren Sie jedes Replikat, bevor Sie den Schlüssel hinzufügen, und entfernen Sie den Schlüssel, bevor Sie zu einer früheren Version zurückrollen.530`headers:` erfordert Claude Code v2.1.277 oder später auf dem Gateway-Server. Ein früheres Gateway weigert sich zu starten, wenn es den Schlüssel findet. Aktualisieren Sie jedes Replikat, bevor Sie den Schlüssel hinzufügen, und entfernen Sie den Schlüssel, bevor Sie auf eine frühere Version zurückrollen.

416 531 

417Die Header gehen an den Server, den `base_url` benennt, oder an den eigenen Endpunkt des Anbieters, wenn `base_url` nicht gesetzt ist. Der Anbieter erhält sie auch, sofern Ihr Proxy sie nicht entfernt.532Die Header gehen an den Server, den `base_url` benennt, oder an den eigenen Endpunkt des Anbieters, wenn `base_url` nicht gesetzt ist. Der Anbieter erhält sie ebenfalls, sofern Ihr Proxy sie nicht entfernt.

418 533 

419Dieses Beispiel erreicht einen `provider: vertex`-Upstream durch einen Proxy unter `upstream-proxy.internal.example.com`. Es setzt den `x-source`-Header, den der Proxy liest, und sendet ein Token aus der `PROXY_TOKEN`-Umgebungsvariable als `x-proxy-token`:534Dieses Beispiel erreicht einen `provider: vertex`-Upstream über einen Proxy unter `upstream-proxy.internal.example.com`. Es setzt den `x-source`-Header, den der Proxy liest, und sendet ein Token aus der Umgebungsvariable `PROXY_TOKEN` als `x-proxy-token`:

420 535 

421```yaml theme={null}536```yaml theme={null}

422upstreams:537upstreams:


430 x-proxy-token: ${PROXY_TOKEN}545 x-proxy-token: ${PROXY_TOKEN}

431```546```

432 547 

433Werte sind druckbarer ASCII-Text ohne Leerzeichen an beiden Enden. Zitieren Sie eine Zahl, `true` oder `false`, damit YAML sie als Text liest.548Werte sind druckbarer ASCII-Text ohne Leerzeichen an einem der beiden Enden. Setzen Sie eine Zahl, `true` oder `false` in Anführungszeichen, damit YAML sie als Text liest.

434 549 

435Um ein Geheimnis aus der Konfigurationsdatei zu halten, verwenden Sie [Geheimnis-Erweiterung](#secret-expansion), um den Wert aus einer Umgebungsvariable mit `${VAR}` oder aus einer Datei mit `${file:/path}` zu laden. Ein `${VAR}`, das zu einem leeren Wert aufgelöst wird, stoppt das Gateway vom Start.550Um ein Geheimnis aus der Konfigurationsdatei herauszuhalten, verwenden Sie [Geheimnis-Erweiterung](#secret-expansion), um den Wert aus einer Umgebungsvariable mit `${VAR}` oder aus einer Datei mit `${file:/path}` zu laden. Ein `${VAR}`, das zu einem leeren Wert aufgelöst wird, verhindert den Start des Gateways.

436 551 

437`headers:` funktioniert auf jedem Anbieter, und jeder Upstream sendet nur seine eigenen.552`headers:` funktioniert bei jedem Anbieter, und jeder Upstream sendet nur seine eigenen.

438 553 

439Nicht jede Anfrage, die das Gateway an einen Upstream sendet, trägt sie:554Nicht jede Anfrage, die das Gateway an einen Upstream sendet, enthält sie:

440 555 

441| Anfrage, die das Gateway an diesen Upstream sendet | Trägt `headers:` |556| Anfrage, die das Gateway an diesen Upstream sendet | Enthält `headers:` |

442| - | - |557| - | - |

443| `/v1/messages`, Streaming oder nicht, und `/v1/messages/count_tokens` | Ja |558| `/v1/messages`, mit oder ohne Streaming, und `/v1/messages/count_tokens` | Ja |

444| Eine Anfrage, die von einem anderen Upstream fehlgeschlagen ist | Ja, nur `headers:` dieses Upstreams |559| Eine Anfrage, die per Failover von einem anderen Upstream kam | Ja, nur die `headers:` dieses Upstreams |

445| Amazon Bedrocks `CountTokens`-Aufruf für eine Anfrage, die der Client abgebrochen hat | Nein |560| Amazon Bedrocks `CountTokens`-Aufruf für eine Anfrage, die der Client abgebrochen hat | Nein |

446| Der Workload Identity Federation-Token-Austausch | Nein |561| Der Workload Identity Federation-Token-Austausch | Nein |

447 562 

448Auf einem Amazon Bedrock oder Claude Platform on AWS-Upstream, der Anfragen mit AWS SigV4 signiert, sind diese Header Teil der Signatur, daher muss Ihr Proxy sie unverändert durchlassen.563Bei einem Amazon Bedrock- oder Claude Platform on AWS-Upstream, der Anfragen mit AWS SigV4 signiert, sind diese Header Teil der Signatur, daher muss Ihr Proxy sie unverändert durchlassen.

449 564 

450Wenn Sie einen Namen verwenden, den das Gateway reserviert, weigert es sich zu starten, und der Startup-Fehler benennt den Header. Reservierte Namen umfassen:565Wenn Sie einen Namen verwenden, den das Gateway reserviert, weigert es sich zu starten, und der Startfehler benennt den Header. Reservierte Namen umfassen:

451 566 

452* `authorization` und `x-api-key`567* `authorization` und `x-api-key`

453* `host`, `content-type` und `user-agent`568* `host`, `content-type` und `user-agent`

454* Jeder Name, der mit `anthropic-`, `x-goog-`, `x-amz-` oder `x-amzn-` beginnt569* Jeden Namen, der mit `anthropic-`, `x-goog-`, `x-amz-` oder `x-amzn-` beginnt

455 570 

456<h4 id="multiple-upstreams">571<h4 id="multiple-upstreams">

457 Mehrere Upstreams572 Mehrere Upstreams

458</h4>573</h4>

459 574 

460Der gleiche Provider kann mehr als einmal mit einem unterschiedlichen `name:` erscheinen. Dies deckt verschiedene Regionen, verschiedene Konten über verschiedene Berechtigungsketten, bereitgestellter Durchsatz versus On-Demand und Cross-Provider-Fallback ab.575Derselbe Anbieter kann mehr als einmal mit einem unterschiedlichen `name:` erscheinen. Dies deckt verschiedene Regionen, verschiedene Konten über verschiedene Anmeldedatenketten, Provisioned Throughput versus On-Demand und anbieterübergreifenden Fallback ab.

461 

462Das Gateway versucht Upstreams in Reihenfolge. `5xx`, `429`, `401`, `403`, `404`, Timeouts und fehlender Endpunkt (`501`) schlagen fehl über; andere `4xx` nicht.

463 576 

464`429` ist Pro-Upstream-Kapazität, daher schlägt bereitgestellter Durchsatz (PT)-Erschöpfung zu On-Demand fehl über. Wenn Sie [`forward_user_identity: true`](#per-user-identity-headers-for-a-proxy-you-run) auf einem Upstream setzen, ist ein `429` auf eine Anfrage, die die E-Mail des Entwicklers trug, eine Pro-Benutzer-Ablehnung statt und schlägt nicht fehl über.577Das Gateway versucht Upstreams der Reihe nach. Bei `5xx`, `429`, `401`, `403`, `404`, Timeouts und fehlendem Endpunkt (`501`) erfolgt ein Failover; bei anderen `4xx` nicht.

465 578 

466`404` ist Pro-Upstream-Modellverfügbarkeit, daher blockiert ein Upstream, der ein Modell nicht aktiviert hat, keinen späteren Upstream, der es bedient. Ein Upstream, der das angeforderte Modell nicht auflösen kann, wird ohne Netzwerk-Roundtrip übersprungen.579`429` ist Kapazität pro Upstream, daher führt die Erschöpfung von Provisioned Throughput (PT) zu einem Failover auf On-Demand. Wenn Sie [`forward_user_identity: true`](#per-user-identity-headers-for-a-proxy-you-run) auf einem Upstream setzen, ist ein `429` auf eine Anfrage, die die E-Mail des Entwicklers trug, stattdessen eine Ablehnung pro Benutzer und führt nicht zu einem Failover.

467 580 

468Jede Anfrage startet beim ersten Upstream. Eine Anfrage erreicht einen späteren Upstream nur, wenn jeder Upstream vor ihm fehlgeschlagen ist oder das angeforderte Modell nicht bedient.581Jede Anfrage beginnt beim ersten Upstream. Eine Anfrage erreicht einen späteren Upstream nur, wenn jeder Upstream davor fehlgeschlagen ist oder das angeforderte Modell nicht bereitstellt.

469 582 

470Das Gateway führt keine Aufzeichnung fehlgeschlagener Upstreams, daher versucht jede Anfrage, die ihn erreicht, ihn immer noch und wartet, bis er fehlschlägt, bevor es weitergeht, während ein Upstream ausfällt.583Das Gateway führt keine Aufzeichnung über fehlgeschlagene Upstreams, daher versucht, während ein Upstream ausgefallen ist, jede Anfrage, die ihn erreicht, ihn weiterhin und wartet auf sein Fehlschlagen, bevor sie weitergeht.

471 584 

472Für einen Anthropic-API-Upstream begrenzt [`timeouts.upstream_ttfb_ms`](#http-tuning) das Warten auf einen ausgefallenen Upstream. Diese Einstellung gilt nicht für die anderen Anbieter, wo das Gateway bis zu eine Stunde wartet, bis ein Upstream anfängt zu antworten.585Für einen Anthropic-API-Upstream begrenzt [`timeouts.upstream_ttfb_ms`](#http-tuning) das Warten auf einen ausgefallenen Upstream. Diese Einstellung gilt nicht für die anderen Anbieter, bei denen das Gateway bis zu eine Stunde wartet, bis ein Upstream zu antworten beginnt.

473 586 

474`404` ist Pro-Upstream-Modellverfügbarkeit, daher blockiert ein Upstream, der ein Modell nicht aktiviert hat, keinen späteren Upstream, der es bedient. Ein Upstream, der das angeforderte Modell nicht auflösen kann, wird ohne Netzwerk-Roundtrip übersprungen.587`404` ist Modellverfügbarkeit pro Upstream, daher blockiert ein Upstream, der ein Modell nicht aktiviert hat, keinen späteren Upstream, der es bereitstellt. Ein Upstream, der das angeforderte Modell nicht auflösen kann, wird ohne Netzwerk-Roundtrip übersprungen.

475 588 

476Dieses Beispiel leitet eine bereitgestellte Durchsatz-Amazon Bedrock-Zuteilung zuerst weiter, überläuft zu On-Demand und einem zweiten Konto und fällt zuletzt auf die Anthropic API zurück:589Dieses Beispiel leitet zuerst an ein Amazon Bedrock-Provisioned-Throughput-Kontingent weiter, weicht bei Überlauf auf On-Demand und ein zweites Konto aus und fällt zuletzt auf die Anthropic API zurück:

477 590 

478```yaml theme={null}591```yaml theme={null}

479upstreams:592upstreams:


487 provider: bedrock600 provider: bedrock

488 region: us-west-2601 region: us-west-2

489 auth: {}602 auth: {}

490 # Different account: a separate Bedrock allotment via assumed-role creds.603 # Different account: a separate Bedrock allotment via static keys.

491 - name: bedrock-acct2604 - name: bedrock-acct2

492 provider: bedrock605 provider: bedrock

493 region: us-east-1606 region: us-east-1


513 626 

514| Hebel | Wie |627| Hebel | Wie |

515| - | - |628| - | - |

516| Verschiedene Regionen | Ein Amazon Bedrock-Upstream pro Region, jeder mit seiner eigenen `region:`. Mit [`auto_include_builtin_models: true`](#models) leiten die Cross-Region-Inference-Profile automatisch weiter; für Region-geheftete Bereitstellungen verwenden Sie einen `models:`-Block. |629| Verschiedene Regionen | Ein Amazon Bedrock-Upstream pro Region, jeder mit seiner eigenen `region:`. Mit [`auto_include_builtin_models: true`](#models) leiten die Cross-Region-Inference-Profile automatisch weiter; für an eine Region gebundene Bereitstellungen verwenden Sie einen `models:`-Block. |

517| Verschiedene Konten | Ein Amazon Bedrock-Upstream pro Konto, jeder mit seinen eigenen Berechtigungsnachweisen in `auth:`. Die Standard-Kette (`auth: {}`) verwendet die Identität des Pods; für ein zweites Konto setzen Sie explizite Berechtigungsnachweise oder ein Bearer-Token. |630| Verschiedene Konten | Ein Amazon Bedrock-Upstream pro Konto. Die Standard-Kette (`auth: {}`) verwendet die Identität des Pods; für ein zweites Konto fügen Sie [`assume_role`](#bedrock-in-another-aws-account) hinzu, um es mit kurzlebigen Anmeldedaten zu erreichen, oder setzen explizite Anmeldedaten oder ein Bearer-Token in `auth:`. |

518| Bereitgestellter Durchsatz | Ordnen Sie das Modell der bereitgestellten Durchsatz-ARN in `models:` für den Namen dieses Upstreams zu. Andere Upstreams behalten die On-Demand-ID, daher wird PT-Kapazität vor dem Failover erschöpft. |631| Provisioned Throughput | Ordnen Sie das Modell in `models:` für den Namen dieses Upstreams der Provisioned-Throughput-ARN zu. Andere Upstreams behalten die On-Demand-ID, daher wird die PT-Kapazität vor dem Failover ausgeschöpft. |

519| VPC / FIPS-Endpunkte | Setzen Sie `base_url:` auf dem Upstream auf Ihre VPC-Endpunkt- oder FIPS-Endpunkt-URL |632| VPC / FIPS-Endpunkte | Setzen Sie `base_url:` auf dem Upstream auf Ihre VPC-Endpunkt- oder FIPS-Endpunkt-URL |

520| Modell-scoped Routing | Nur eine benutzerdefinierte Modell-`id`, eine, die kein integriertes Claude-Modell ist, überspringt die Upstreams, die in ihrer `upstream_model:`-Karte fehlen. Das Gateway versucht integrierte Modelle auf jedem Upstream in Reihenfolge und verwendet die Standard-ID des Anbieters, wo die Karte keinen Eintrag hat, daher ändert die Karte für integrierte Modelle, welche ID ein Upstream erhält, statt ob er versucht wird; ein Upstream, der die ID ablehnt, folgt den gleichen [Failover-Regeln](#upstreams) wie jeder andere Upstream-Fehler. |633| Modellbezogenes Routing | Nur eine benutzerdefinierte Modell-`id`, also eine, die kein integriertes Claude-Modell ist, überspringt die Upstreams, die in ihrer `upstream_model:`-Zuordnung fehlen. Das Gateway versucht integrierte Modelle der Reihe nach auf jedem Upstream und verwendet die Standard-ID des Anbieters, wo die Zuordnung keinen Eintrag hat, daher ändert die Zuordnung für integrierte Modelle, welche ID ein Upstream erhält, statt ob er versucht wird; ein Upstream, der die ID ablehnt, folgt den gleichen [Failover-Regeln](#upstreams) wie jeder andere Upstream-Fehler. |

521 634 

522Das Failover zwischen Cloud-Anbietern oder zur direkten Anthropic API ändert, welche Vereinbarung, Geographie und andere Bedingungen die Anfrage regeln.635Ein Failover zwischen Cloud-Anbietern oder zur direkten Anthropic API ändert, welche Vereinbarung, Geografie und anderen Bedingungen für die Anfrage gelten.

523 636 

524Die CLI wendet die gleiche Feature-Gating auf Gateways an, unabhängig davon, welcher Upstream eine gegebene Anfrage bedient, daher sendet Failover kein Body-Feld, das ein Upstream ablehnen würde.637Die CLI wendet dasselbe Feature-Gating auf Gateways an, unabhängig davon, welcher Upstream eine bestimmte Anfrage bedient, daher sendet ein Failover kein Body-Feld, das ein Upstream ablehnen würde.

525 638 

526<h2 id="optional-sections">639<h2 id="optional-sections">

527 Optionale Abschnitte640 Optionale Abschnitte


554| `write_keys` | Nein | Array von `{id, key}`. Ein `x-api-key`, das einem dieser Schlüssel entspricht, kann Ausgabenlimits auflisten, festlegen und löschen. Schlüsselwerte müssen mindestens 32 Zeichen lang sein; `id`s müssen über `read_keys` und `write_keys` hinweg eindeutig sein. |667| `write_keys` | Nein | Array von `{id, key}`. Ein `x-api-key`, das einem dieser Schlüssel entspricht, kann Ausgabenlimits auflisten, festlegen und löschen. Schlüsselwerte müssen mindestens 32 Zeichen lang sein; `id`s müssen über `read_keys` und `write_keys` hinweg eindeutig sein. |

555| `read_keys` | Nein | Array von `{id, key}`. Schreibgeschützt: alle `GET`-Endpunkte, einschließlich Auflisten von Limits, Abrufen nach ID und Lesen von [`/effective`](/docs/de/claude-apps-gateway-spend-limits#%2Feffective) und [`/audit`](/docs/de/claude-apps-gateway-spend-limits#%2Faudit). |668| `read_keys` | Nein | Array von `{id, key}`. Schreibgeschützt: alle `GET`-Endpunkte, einschließlich Auflisten von Limits, Abrufen nach ID und Lesen von [`/effective`](/docs/de/claude-apps-gateway-spend-limits#%2Feffective) und [`/audit`](/docs/de/claude-apps-gateway-spend-limits#%2Faudit). |

556| `admin_groups` | Nein | IdP-Gruppennamen. Ein Gateway-JWT, dessen `groups`-Anspruch einen dieser Namen enthält, hat vollständigen Admin-Zugriff, Lesen und Schreiben, und wird als `oidc:<sub>` geprüft. Verwenden Sie dies für menschliche Administratoren; verwenden Sie API-Schlüssel für Maschinen. Ein leerer Eintrag in dieser Liste stoppt das Gateway beim Start. Siehe [Matcher-Werte, die das Gateway beim Start stoppen](#matcher-values-that-stop-the-gateway-at-boot). |669| `admin_groups` | Nein | IdP-Gruppennamen. Ein Gateway-JWT, dessen `groups`-Anspruch einen dieser Namen enthält, hat vollständigen Admin-Zugriff, Lesen und Schreiben, und wird als `oidc:<sub>` geprüft. Verwenden Sie dies für menschliche Administratoren; verwenden Sie API-Schlüssel für Maschinen. Ein leerer Eintrag in dieser Liste stoppt das Gateway beim Start. Siehe [Matcher-Werte, die das Gateway beim Start stoppen](#matcher-values-that-stop-the-gateway-at-boot). |

557| `blocked_message` | Nein | Wird wörtlich an den `429 billing_error` angehängt, den ein blockierter Entwickler sieht. Schreiben Sie die vollständige Anweisung, z. B. eine URL oder einen Slack-Kanal. Wenn nicht gesetzt, sendet das Gateway nur die Standardmeldung. Siehe [Wie die Durchsetzung funktioniert](/docs/de/claude-apps-gateway-spend-limits#how-enforcement-works). |670| `blocked_message` | Nein | Wird wörtlich an den `429 billing_error` angehängt, den ein blockierter Entwickler sieht. Schreiben Sie die vollständige Anweisung, z. B. eine URL oder einen Slack-Channel. Wenn nicht gesetzt, sendet das Gateway nur die Standardmeldung. Siehe [Wie die Durchsetzung funktioniert](/docs/de/claude-apps-gateway-spend-limits#how-enforcement-works). |

558| `audit_retention_days` | Nein | Standard `365`. Ältere `admin_audit`-Zeilen werden gelöscht. |671| `audit_retention_days` | Nein | Standard `365`. Ältere `admin_audit`-Zeilen werden gelöscht. |

559| `spend_retention_months` | Nein | Standard `13`. `spend`-Zählerzeilen, die älter als dieser Wert sind, werden gelöscht. Der Standard behält ein volles Jahr plus den aktuellen Teilmonat für Jahresvergleichsberichte. |672| `spend_retention_months` | Nein | Standard `13`. `spend`-Zählerzeilen, die älter als dieser Wert sind, werden gelöscht. Der Standard behält ein volles Jahr plus den aktuellen Teilmonat für Jahresvergleichsberichte. |

560| `identity_retention_days` | Nein | Standard `90`. Last-Seen-TTL für `principal_emails`-Zeilen, die die E-Mail, den Anzeigenamen und die Gruppen jedes Entwicklers enthalten (PII). Absichtlich kürzer als die Ausgabenaufbewahrung, sodass eine bereitgestellte Identität ausfällt, während ihre anonymen Ausgabenzähler erhalten bleiben. |673| `identity_retention_days` | Nein | Standard `90`. Last-Seen-TTL für `principal_emails`-Zeilen, die die E-Mail, den Anzeigenamen und die Gruppen jedes Entwicklers enthalten (PII). Absichtlich kürzer als die Ausgabenaufbewahrung, sodass eine deprovisionierte Identität ausläuft, während ihre anonymen Ausgabenzähler erhalten bleiben. |

561| `group_limit_mode` | Nein | `min` (Standard) oder `max`. Wenn sich ein Entwickler in mehreren Gruppen mit Limits befindet, erzwingt `min` das restriktivste und `max` das am wenigsten restriktive. Wird sowohl von der Durchsetzung als auch von `/effective` verwendet. |674| `group_limit_mode` | Nein | `min` (Standard) oder `max`. Wenn sich ein Entwickler in mehreren Gruppen mit Limits befindet, erzwingt `min` das restriktivste und `max` das am wenigsten restriktive. Wird sowohl von der Durchsetzung als auch von `/effective` verwendet. |

562 675 

563<h3 id="enforcement">676<h3 id="enforcement">


598 711 

599Wie der Zähler eine Überschreibungszeile abgleicht:712Wie der Zähler eine Überschreibungszeile abgleicht:

600 713 

601* Eine Zeile ersetzt den Listenpreis für Anfragen, die `upstream`, ein [`upstreams[].name`](#upstreams), für `model` bedient. Das schließt den höheren [Schnellmodus](/docs/de/fast-mode#understand-the-cost-tradeoff)-Satz ein, sodass Schnell- und Standardanfragen mit denselben vier Sätzen gezählt werden.714* Eine Zeile ersetzt den Listenpreis für Anfragen, die `upstream`, ein [`upstreams[].name`](#upstreams), für `model` bedient. Das schließt den höheren [Fast-Modus](/docs/de/fast-mode#understand-the-cost-tradeoff)-Satz ein, sodass Fast- und Standardanfragen mit denselben vier Sätzen gezählt werden.

602* Eine integrierte ID wie `claude-sonnet-4-6`, abgeglichen wie [`models[].id`](#models), deckt jede datierte Form, regionale Amazon-Bedrock-Form oder Google-Cloud-Agent-Plattformform ab, die der Zähler als dieses Modell bewertet. Jede andere Zeichenkette, z. B. ein Alias oder ein Inferenzprofil-ARN, gleicht die ID ab, die der Client gesendet hat, oder die Zeichenkette, die upstream gesendet wurde, Groß-/Kleinschreibung ignoriert.715* Eine integrierte ID wie `claude-sonnet-4-6`, abgeglichen wie [`models[].id`](#models), deckt jede datierte Form, regionale Amazon-Bedrock-Form oder Google-Cloud-Agent-Plattformform ab, die der Zähler als dieses Modell bewertet. Jede andere Zeichenkette, z. B. ein Alias oder ein Inferenzprofil-ARN, gleicht die ID ab, die der Client gesendet hat, oder die Zeichenkette, die upstream gesendet wurde, Groß-/Kleinschreibung ignoriert.

603* Wenn sich Zeilen überlappen, wählt der Zähler die spezifischste Zeile statt der ersten Zeile: eine Zeile, deren `model` die genaue Modellzeichenkette ist, die upstream gesendet wurde, dann eine Zeile, die die genaue ID abgleicht, die der Client gesendet hat, dann eine Zeile, die das integrierte Modell benennt.716* Wenn sich Zeilen überlappen, wählt der Zähler die spezifischste Zeile statt der ersten Zeile: eine Zeile, deren `model` die genaue Modellzeichenkette ist, die upstream gesendet wurde, dann eine Zeile, die die genaue ID abgleicht, die der Client gesendet hat, dann eine Zeile, die das integrierte Modell benennt.

604* Ein unbekannter Upstream-Name schlägt beim Start fehl, ebenso wie zwei Zeilen für einen Upstream, die dasselbe Modell benennen, einschließlich zwei Schreibweisen eines integrierten Modells. Das Gateway warnt beim Start vor einer Zeile, die kein anforderbares Modell verwenden kann.717* Ein unbekannter Upstream-Name schlägt beim Start fehl, ebenso wie zwei Zeilen für einen Upstream, die dasselbe Modell benennen, einschließlich zwei Schreibweisen eines integrierten Modells. Das Gateway warnt beim Start vor einer Zeile, die kein anforderbares Modell verwenden kann.

605* Web-Such-Anfragen bleiben beim \$0,01-Listenpreis; der Multiplikator wird immer noch auf sie angewendet.718* Web-Such-Anfragen bleiben beim \$0,01-Listenpreis; der Multiplikator wird immer noch auf sie angewendet.

606 719 

607Für regionale Sätze geben Sie jeder Region seinen eigenen benannten Upstream und eine Zeile pro Upstream.720Für regionale Sätze geben Sie jeder Region ihren eigenen benannten Upstream und eine Zeile pro Upstream.

608 721 

609<h4 id="mark-prices-up">722<h4 id="mark-prices-up">

610 Preise erhöhen723 Preise erhöhen


659 `managed`772 `managed`

660</h3>773</h3>

661 774 

662Der `managed`-Block definiert rollenbasierte Zugriffrichtlinien, die nach IdP-Gruppen oder E-Mail-Domäne verschlüsselt sind. Richtlinien werden in Reihenfolge ausgewertet; die erste Übereinstimmung wird ausgewählt und dann mit der unten beschriebenen `match: {}`-Catch-All-Basis zusammengeführt. Sie werden pro Benutzer unter `GET /managed/settings` mit ETag/304-Caching bedient.775Der `managed`-Block definiert rollenbasierte Zugriffsrichtlinien, die nach IdP-Gruppen oder E-Mail-Domäne geschlüsselt sind. Richtlinien werden in Reihenfolge ausgewertet; die erste Übereinstimmung wird ausgewählt und dann mit der `match: {}`-Catch-All-Basis zusammengeführt. Sie werden pro Benutzer unter `GET /managed/settings` mit ETag/304-Caching bedient.

663 776 

664```yaml theme={null}777```yaml theme={null}

665managed:778managed:


683 796 

684`availableModels` wird auch serverseitig unter `/v1/messages` erzwungen, sodass ein abgelehntes Modell `400` zurückgibt, unabhängig davon, was der Client sendet.797`availableModels` wird auch serverseitig unter `/v1/messages` erzwungen, sodass ein abgelehntes Modell `400` zurückgibt, unabhängig davon, was der Client sendet.

685 798 

686Das Gateway validiert den `model`-Wert selbst, bevor es eine Anfrage weitergeleitet, sodass ein fehlerhafter Wert niemals einen Upstream erreicht. Es lehnt die Anfrage in zwei Fällen mit `400` ab:799Das Gateway validiert den `model`-Wert selbst, bevor es eine Anfrage weiterleitet, sodass ein fehlerhafter Wert niemals einen Upstream erreicht. Es lehnt die Anfrage in zwei Fällen mit `400` ab:

687 800 

688* Wenn der Wert fehlt oder leer ist, lehnt das Gateway die Anfrage mit der Meldung `model is required` ab. Diese Prüfung erfordert ein Gateway, das Claude Code v2.1.228 oder später ausführt.801* Wenn der Wert fehlt oder leer ist, lehnt das Gateway die Anfrage mit der Meldung `model is required` ab. Diese Prüfung erfordert ein Gateway, das Claude Code v2.1.228 oder später ausführt.

689* Wenn der Wert vorhanden ist, aber keine Zeichenkette ist, lehnt das Gateway die Anfrage mit der Meldung `model must be a string` ab. Erfordert ein Gateway, das Claude Code v2.1.221 oder später ausführt.802* Wenn der Wert vorhanden ist, aber keine Zeichenkette ist, lehnt das Gateway die Anfrage mit der Meldung `model must be a string` ab. Erfordert ein Gateway, das Claude Code v2.1.221 oder später ausführt.


698Ein authentifizierter Benutzer, der keine Richtlinie abgleicht, erhält die Standardwerte des Gateways, was bedeutet, jedes Modell im Katalog und keine verwalteten Einstellungen. Fügen Sie eine `match: {}`-Catch-All zuletzt hinzu, wenn Sie eine garantierte Standardrichtlinie möchten.811Ein authentifizierter Benutzer, der keine Richtlinie abgleicht, erhält die Standardwerte des Gateways, was bedeutet, jedes Modell im Katalog und keine verwalteten Einstellungen. Fügen Sie eine `match: {}`-Catch-All zuletzt hinzu, wenn Sie eine garantierte Standardrichtlinie möchten.

699 812 

700<Note>813<Note>

701 Das Gateway führt kein eigenes Benutzerverzeichnis. Es autorisiert jede Anfrage vom IdP-Token des Benutzers, liest die Gruppenmitgliedschaft aus dem `groups`-Anspruch des Tokens und wertet Richtlinien dagegen aus. Es gibt kein Verzeichnis zum Aufzählen und keine Konten zum Vorab-Erstellen, und daher keinen SCIM-Endpunkt, da es nichts gibt, das SCIM synchronisieren könnte.814 Das Gateway führt kein eigenes Benutzerverzeichnis. Es autorisiert jede Anfrage anhand des IdP-Tokens des Benutzers, liest die Gruppenmitgliedschaft aus dem `groups`-Anspruch des Tokens und wertet Richtlinien dagegen aus. Es gibt kein Verzeichnis zum Aufzählen und keine Konten zum Vorab-Erstellen, und daher keinen SCIM-Endpunkt, da es nichts gibt, in das SCIM synchronisieren könnte.

702 815 

703 Führen Sie Benutzer- und Gruppenzyklus-Management an der Quelle der Wahrheit durch, die das native SCIM-Provisioning Ihres IdP oder eine dedizierte Identitäts-Governance-Plattform ist. Mitgliedschaft und Deprovisioning, die dort gesteuert werden, fließen automatisch durch den Token in das Gateway. Wenn Sie SCIM-Provisioning von Claude-Konten selbst möchten, ist das eine [Claude for Enterprise](/docs/de/admin-setup)-Fähigkeit.816 Führen Sie das Lebenszyklus-Management von Benutzern und Gruppen an der Quelle der Wahrheit durch, die das native SCIM-Provisioning Ihres IdP oder eine dedizierte Identitäts-Governance-Plattform ist. Mitgliedschaft und Deprovisioning, die dort gesteuert werden, fließen automatisch über das Token in das Gateway. Wenn Sie SCIM-Provisioning von Claude-Konten selbst möchten, ist das eine [Claude for Enterprise](/docs/de/admin-setup)-Fähigkeit.

704 817 

705 Zwei Ausbreitungsuhren gelten:818 Zwei Ausbreitungsuhren gelten:

706 819 

707 * **Richtlinieninhalt**: Das Bearbeiten einer Richtlinie und das erneute Bereitstellen erreichen verbundene Clients bei ihrer nächsten verwalteten Einstellungsabfrage, innerhalb einer Stunde, abgesehen von den [Änderungen, die nur beim nächsten Start gelten](/docs/de/server-managed-settings#fetch-and-caching-behavior)820 * **Richtlinieninhalt**: Das Bearbeiten einer Richtlinie und das erneute Bereitstellen erreichen verbundene Clients bei ihrer nächsten Abfrage der verwalteten Einstellungen, innerhalb einer Stunde, abgesehen von den [Änderungen, die nur beim nächsten Start gelten](/docs/de/server-managed-settings#fetch-and-caching-behavior)

708 * **Gruppenmitgliedschaft**: Das Ändern der Gruppenmitgliedschaft eines Benutzers ändert, welche Richtlinie ihn abgleicht. Dies tritt beim nächsten Sitzungs-Neuausgabe in Kraft, was die nächste stille Aktualisierung bedeutet, begrenzt durch `session.ttl_hours`.821 * **Gruppenmitgliedschaft**: Das Ändern der Gruppenmitgliedschaft eines Benutzers ändert, welche Richtlinie ihn abgleicht. Dies tritt bei der nächsten Sitzungs-Neuausgabe in Kraft, also bei der nächsten stillen Aktualisierung, begrenzt durch `session.ttl_hours`.

709</Note>822</Note>

710 823 

711<h4 id="matcher-values-that-stop-the-gateway-at-boot">824<h4 id="matcher-values-that-stop-the-gateway-at-boot">


721 834 

722Vor v2.1.232 startete das Gateway mit diesen Werten. Jeder Wert hatte diese Auswirkung:835Vor v2.1.232 startete das Gateway mit diesen Werten. Jeder Wert hatte diese Auswirkung:

723 836 

724* Eine leere `email_domain`: Das Gateway übersprung die Domänenprüfung, sodass eine Richtlinie mit einer leeren `email_domain` und keiner `groups`-Liste jeden authentifizierten Benutzer abglich837* Eine leere `email_domain`: Das Gateway übersprang die Domänenprüfung, sodass eine Richtlinie mit einer leeren `email_domain` und keiner `groups`-Liste jeden authentifizierten Benutzer abglich

725* Eine leere `groups`-Liste: Die Richtlinie gleichte niemanden ab838* Eine leere `groups`-Liste: Die Richtlinie glich niemanden ab

726* Eine `email_domain`, die `@`, Leerzeichen oder ein Komma enthält: Die Richtlinie gleichte niemanden ab839* Eine `email_domain`, die `@`, Leerzeichen oder ein Komma enthält: Die Richtlinie glich niemanden ab

727* Ein leerer Eintrag in `groups` oder in `admin_groups`: Der Eintrag gleichte einen Benutzer nur ab, wenn der `groups`-Anspruch des IdP dieses Benutzers auch einen leeren Eintrag enthielt. In `admin_groups` gewährte diese Übereinstimmung Admin-Zugriff. Wenn Ihre `admin_groups`-Liste niemals einen leeren Eintrag enthielt, erhielt niemand auf diese Weise Admin-Zugriff.840* Ein leerer Eintrag in `groups` oder in `admin_groups`: Der Eintrag glich einen Benutzer nur ab, wenn der `groups`-Anspruch des IdP dieses Benutzers auch einen leeren Eintrag enthielt. In `admin_groups` gewährte diese Übereinstimmung Admin-Zugriff. Wenn Ihre `admin_groups`-Liste niemals einen leeren Eintrag enthielt, erhielt niemand auf diese Weise Admin-Zugriff.

728 841 

729<h4 id="what-goes-in-cli">842<h4 id="what-goes-in-cli">

730 Was in `cli` geht843 Was in `cli` geht


732 845 

733Jeder `cli`-Wert ist ein vollständiges Claude-Code-`managed-settings.json`-Dokument, das gleiche Schema, das Sie über MDM oder `/etc/claude-code/managed-settings.json` bereitstellen würden, hier als YAML ausgedrückt. Die CLI wendet das bereitgestellte Dokument auf der verwalteten Ebene an, über Benutzer- und Projekteinstellungen, anstelle von serverseitig verwalteten Einstellungen. Sie ignoriert daher die Einstellungen, die [auf OS-Ebenen-Richtlinienquellen beschränkt sind](/docs/de/server-managed-settings#current-limitations), wie `policyHelper` und `wslInheritsWindowsSettings`.846Jeder `cli`-Wert ist ein vollständiges Claude-Code-`managed-settings.json`-Dokument, das gleiche Schema, das Sie über MDM oder `/etc/claude-code/managed-settings.json` bereitstellen würden, hier als YAML ausgedrückt. Die CLI wendet das bereitgestellte Dokument auf der verwalteten Ebene an, über Benutzer- und Projekteinstellungen, anstelle von serverseitig verwalteten Einstellungen. Sie ignoriert daher die Einstellungen, die [auf OS-Ebenen-Richtlinienquellen beschränkt sind](/docs/de/server-managed-settings#current-limitations), wie `policyHelper` und `wslInheritsWindowsSettings`.

734 847 

735Das Gateway validiert jedes Dokument beim Start gegen das Einstellungsschema der CLI, sodass ein nicht erkannter Top-Level-Schlüssel beim Start mit einem Fehler fehlschlägt, der jeden fehlerhaften Schlüssel benennt. Absichtlich offene Teile des Schemas akzeptieren immer noch beliebige Werte, da neuere Clients Einträge erkennen können, die das Schema des Gateways nicht erkennt. Diese offenen Schlüssel umfassen `env`, `pluginConfigs` und Schlüssel, die unter `permissions` verschachtelt sind.848Das Gateway validiert jedes Dokument beim Start gegen das Einstellungsschema der CLI, sodass ein nicht erkannter Top-Level-Schlüssel beim Start mit einem Fehler fehlschlägt, der jeden betroffenen Schlüssel benennt. Absichtlich offene Teile des Schemas akzeptieren immer noch beliebige Werte, da neuere Clients Einträge erkennen können, die das Schema des Gateways nicht erkennt. Diese offenen Schlüssel umfassen `env`, `pluginConfigs` und Schlüssel, die unter `permissions` verschachtelt sind.

736 849 

737Da die Validierung das Schema verwendet, das mit der installierten Version des Gateways gebündelt ist, erfordert das Einfügen eines Top-Level-Einstellungsschlüssels, der von einer neueren Claude-Code-Version eingeführt wurde, in die verwaltete Konfiguration, das Gateway zuerst zu aktualisieren. Testen Sie eine neue Richtlinie auf einem Client, bevor Sie sie ausrollen.850Da die Validierung das Schema verwendet, das mit der installierten Version des Gateways gebündelt ist, erfordert das Einfügen eines Top-Level-Einstellungsschlüssels, der von einer neueren Claude-Code-Version eingeführt wurde, in die verwaltete Konfiguration, das Gateway zuerst zu aktualisieren. Testen Sie eine neue Richtlinie auf einem Client, bevor Sie sie ausrollen.

738 851 

739Die vollständige Schlüsselreferenz befindet sich in [Claude-Code-Einstellungen](/docs/de/settings-reference#all-settings). Die Schlüssel, die Operatoren zuerst erreichen:852Die vollständige Schlüsselreferenz befindet sich in [Claude-Code-Einstellungen](/docs/de/settings-reference#all-settings). Die Schlüssel, zu denen Operatoren zuerst greifen:

740 853 

741```yaml theme={null}854```yaml theme={null}

742managed:855managed:


774| - | - | - |887| - | - | - |

775| `availableModels` | Gateway + CLI | Modell-Zulassungsliste. Auch unter `/v1/messages` geprüft, sodass ein gepatchter Client sie nicht umgehen kann. |888| `availableModels` | Gateway + CLI | Modell-Zulassungsliste. Auch unter `/v1/messages` geprüft, sodass ein gepatchter Client sie nicht umgehen kann. |

776| `permissions.allow` / `.deny` | CLI | Tool- und Befehlsregeln. Siehe [Berechtigungen](/docs/de/permissions). |889| `permissions.allow` / `.deny` | CLI | Tool- und Befehlsregeln. Siehe [Berechtigungen](/docs/de/permissions). |

777| `permissions.disableBypassPermissionsMode` | CLI | Setzen Sie auf `disable`, um [`bypassPermissions`](/docs/de/permission-modes#skip-all-checks-with-bypasspermissions-mode), den Modus, der Berechtigungsaufforderungen überspringt, und das Flag `--dangerously-skip-permissions` zu blockieren |890| `permissions.disableBypassPermissionsMode` | CLI | Setzen Sie auf `disable`, um [`bypassPermissions`](/docs/de/permission-modes#skip-all-checks-with-bypasspermissions-mode), den Modus, der Berechtigungsabfragen überspringt, und das Flag `--dangerously-skip-permissions` zu blockieren |

778| `allowManagedPermissionRulesOnly` | CLI | Wenn `true`, werden verwaltete Einstellungen zur einzigen Einstellungsquelle von Berechtigungsregeln. Der Eintrag [`allowManagedPermissionRulesOnly`](/docs/de/settings-reference#allowmanagedpermissionrulesonly) listet jede Quelle auf, die Claude Code dann ignoriert. |891| `allowManagedPermissionRulesOnly` | CLI | Wenn `true`, werden verwaltete Einstellungen zur einzigen Einstellungsquelle von Berechtigungsregeln. Der Eintrag [`allowManagedPermissionRulesOnly`](/docs/de/settings-reference#allowmanagedpermissionrulesonly) listet jede Quelle auf, die Claude Code dann ignoriert. |

779| `env` | CLI | Umgebungsvariablen, die in den CLI-Prozess zusammengeführt werden. Verwenden Sie für Telemetrie, Auto-Update und Modellnamen-Überschreibungen. |892| `env` | CLI | Umgebungsvariablen, die in den CLI-Prozess zusammengeführt werden. Verwenden Sie für Telemetrie, Auto-Update und Modellnamen-Überschreibungen. |

780| `hooks` | CLI | Organisationsweite [Hooks](/docs/de/hooks) |893| `hooks` | CLI | Organisationsweite [Hooks](/docs/de/hooks) |


794 907 

795[Umgebungsvariablen und der Genehmigungsdialog](/docs/de/server-managed-settings#environment-variables-and-the-approval-dialog) hat die Details, einschließlich vier Datenschutz-Umschalter, deren bereitgestellter Wert entscheidet, ob sie Genehmigung benötigen. Vor v2.1.218 wendete Claude Code weniger Variablen an, ohne den Entwickler zu fragen, sodass mehr bereitgestellte Variablen den Dialog auslösten.908[Umgebungsvariablen und der Genehmigungsdialog](/docs/de/server-managed-settings#environment-variables-and-the-approval-dialog) hat die Details, einschließlich vier Datenschutz-Umschalter, deren bereitgestellter Wert entscheidet, ob sie Genehmigung benötigen. Vor v2.1.218 wendete Claude Code weniger Variablen an, ohne den Entwickler zu fragen, sodass mehr bereitgestellte Variablen den Dialog auslösten.

796 909 

797Die [Telemetrie](#telemetry)-Konfiguration des Gateways drückt `OTEL_EXPORTER_OTLP_ENDPOINT`, sodass das Setzen von `telemetry.forward_to` den Dialog auf jedem interaktiven Client auslöst. Der Dialog schützt die Maschine des Entwicklers vor einem kompromittierten oder feindseligem Gateway, nicht die Organisation vor dem Entwickler.910Die [Telemetrie](#telemetry)-Konfiguration des Gateways pusht `OTEL_EXPORTER_OTLP_ENDPOINT`, sodass das Setzen von `telemetry.forward_to` den Dialog auf jedem interaktiven Client auslöst. Der Dialog schützt die Maschine des Entwicklers vor einem kompromittierten oder feindseligen Gateway, nicht die Organisation vor dem Entwickler.

798 911 

799Ein nicht-interaktiver Lauf mit dem Flag `-p` kann den Dialog nicht anzeigen. Er wendet die gepushten Einstellungen nur für diesen Lauf an und speichert sie nicht als genehmigt, sodass die nächste interaktive Sitzung des Entwicklers immer noch den Dialog für sie anzeigt. Vor v2.1.207 speicherte ein nicht-interaktiver Lauf die Einstellungen als genehmigt und keine spätere interaktive Sitzung zeigte den Dialog dafür.912Ein [nicht-interaktiver Lauf](/docs/de/server-managed-settings#security-approval-dialogs), etwa `claude -p` oder eine Agent-SDK-Sitzung, kann den Dialog nicht anzeigen. Er wendet die gepushten Einstellungen nur für diesen Lauf an und speichert sie nicht als genehmigt, sodass die nächste interaktive Sitzung des Entwicklers den Dialog weiterhin anzeigt. Vor v2.1.207 speicherte ein nicht-interaktiver Lauf die Einstellungen als genehmigt und keine spätere interaktive Sitzung zeigte den Dialog dafür.

800 913 

801Wenn ein Entwickler ablehnt, beendet Claude Code diese Sitzung, anstatt die Richtlinie anzuwenden. Wenn Sie einen neuen Hook oder eine beliebige Env-Variable, die den Dialog auslöst, an eine breite Richtlinie pushen, zeigt Claude Code daher den Dialog jedem abgleichenden Entwickler. Es zeigt den Dialog in einer laufenden Sitzung bei der nächsten stündlichen Abfrage und ansonsten beim nächsten Start des Entwicklers.914Wenn ein Entwickler ablehnt, beendet Claude Code diese Sitzung, anstatt die Richtlinie anzuwenden. Wenn Sie einen neuen Hook oder eine beliebige Env-Variable, die den Dialog auslöst, an eine breite Richtlinie pushen, sieht daher jeder abgleichende Entwickler den Dialog in seinen interaktiven Sitzungen. Eine laufende interaktive Sitzung zeigt ihn bei der nächsten stündlichen Abfrage an, andernfalls erscheint er beim nächsten interaktiven Start des Entwicklers.

802 915 

803Der `cli`-Schlüssel hieß in früheren Versionen `settings`. Diese Schreibweise wird immer noch als Alias akzeptiert, aber neue Bereitstellungen sollten `cli` verwenden.916Der `cli`-Schlüssel hieß in früheren Versionen `settings`. Diese Schreibweise wird immer noch als Alias akzeptiert, aber neue Bereitstellungen sollten `cli` verwenden.

804 917 


824 Erfordert Claude Code v2.1.203 oder später auf dem Gateway-Server und ein explizites Opt-In: `/user/bootstrap` gibt 404 zurück, es sei denn, die Richtlinie, die den Benutzer abgleicht, trägt einen `desktop`-Schlüssel. Ein leerer `desktop: {}` meldet eine Richtlinie an, und ein `desktop`-Schlüssel auf der `match: {}`-Basisschicht meldet jede Richtlinie an, die ihn erbt. Das Audit-Log zeichnet jede Anfrage als `desktop_bootstrap.serve` oder `desktop_bootstrap.denied` auf.937 Erfordert Claude Code v2.1.203 oder später auf dem Gateway-Server und ein explizites Opt-In: `/user/bootstrap` gibt 404 zurück, es sei denn, die Richtlinie, die den Benutzer abgleicht, trägt einen `desktop`-Schlüssel. Ein leerer `desktop: {}` meldet eine Richtlinie an, und ein `desktop`-Schlüssel auf der `match: {}`-Basisschicht meldet jede Richtlinie an, die ihn erbt. Das Audit-Log zeichnet jede Anfrage als `desktop_bootstrap.serve` oder `desktop_bootstrap.denied` auf.

825</Note>938</Note>

826 939 

827Das Gateway leitet einen Großteil der Antwort von der abgleichenden Richtlinie des `cli`-Blocks und von der Top-Level-Gateway-Konfiguration ab:940Das Gateway leitet einen Großteil der Antwort vom `cli`-Block der abgeglichenen Richtlinie und von der Top-Level-Gateway-Konfiguration ab:

828 941 

829* Die Modellliste aus `availableModels`942* Die Modellliste aus `availableModels`

830* Deaktivierte Tools aus Bare-Tool-Namen-`permissions.deny`-Einträgen. Wenn Sie `disabledBuiltinTools` im `desktop`-Block der Richtlinie setzen, bedient das Gateway die Vereinigung Ihres Wertes und der abgeleiteten Liste, sodass Sie auf diese Weise mehr Tools deaktivieren können, aber eines, das Sie durch `permissions.deny` deaktiviert haben, nicht erneut aktivieren können943* Deaktivierte Tools aus `permissions.deny`-Einträgen mit bloßen Tool-Namen. Wenn Sie `disabledBuiltinTools` im `desktop`-Block der Richtlinie setzen, bedient das Gateway die Vereinigung Ihres Wertes und der abgeleiteten Liste, sodass Sie auf diese Weise mehr Tools deaktivieren können, aber eines, das Sie durch `permissions.deny` deaktiviert haben, nicht erneut aktivieren können

831* Die Egress-Zulassungsliste aus `sandbox.network.allowedDomains`. Wenn Sie `coworkEgressAllowedHosts` im `desktop`-Block der Richtlinie setzen, verwendet das Gateway diesen Wert statt der abgeleiteten Liste944* Die Egress-Zulassungsliste aus `sandbox.network.allowedDomains`. Wenn Sie `coworkEgressAllowedHosts` im `desktop`-Block der Richtlinie setzen, verwendet das Gateway diesen Wert statt der abgeleiteten Liste

832* Ein OTLP-Endpunkt, der auf das Gateway selbst zeigt, und die Identitätsattribute des angemeldeten Benutzers. Das Gateway leitet die Exporte, die es an diesem Endpunkt erhält, an Ihre `forward_to`-Ziele weiter. Es enthält den Endpunkt und die Attribute, wenn Sie sowohl [`telemetry.forward_to`](#telemetry) als auch `listen.public_url` setzen.945* Ein OTLP-Endpunkt, der auf das Gateway selbst zeigt, und die Identitätsattribute des angemeldeten Benutzers. Das Gateway leitet die Exporte, die es an diesem Endpunkt erhält, an Ihre `forward_to`-Ziele weiter. Es enthält den Endpunkt und die Attribute, wenn Sie sowohl [`telemetry.forward_to`](#telemetry) als auch `listen.public_url` setzen.

833 946 

834 Claude Desktop exportiert jedes Signal mit einer Kodierung: `http/protobuf` oder `http/json`, wenn Sie `OTEL_EXPORTER_OTLP_PROTOCOL` oder eine seiner Pro-Signal-Varianten auf `http/json` im `env` der Richtlinie setzen. Vor Claude Code v2.1.261 auf dem Gateway-Server setzte die Antwort `http/json` unabhängig, sodass ein Collector, der nur Protobuf akzeptiert, Claude Desktops Exporte ablehnte947 Claude Desktop exportiert jedes Signal mit einer Kodierung: `http/protobuf` oder `http/json`, wenn Sie `OTEL_EXPORTER_OTLP_PROTOCOL` oder eine seiner Pro-Signal-Varianten auf `http/json` im `env` der Richtlinie setzen. Vor Claude Code v2.1.261 auf dem Gateway-Server setzte die Antwort `http/json` unabhängig davon, sodass ein Collector, der nur Protobuf akzeptiert, Claude Desktops Exporte ablehnte

835 948 

836Um `disabledBuiltinTools`, `coworkEgressAllowedHosts` oder Claude Desktops eigene `managedMcpServers`-Einstellung im `desktop`-Block einer Richtlinie zu setzen, benötigen Sie Claude Code v2.1.232 oder später auf dem Gateway-Server. Claude Desktops `managedMcpServers` nimmt einen Array-Wert statt eines Objekts.949Um `disabledBuiltinTools`, `coworkEgressAllowedHosts` oder Claude Desktops eigene `managedMcpServers`-Einstellung im `desktop`-Block einer Richtlinie zu setzen, benötigen Sie Claude Code v2.1.232 oder später auf dem Gateway-Server. Claude Desktops `managedMcpServers` nimmt einen Array-Wert statt eines Objekts.

837 950 

838Das Gateway lässt Schlüssel ohne Claude-Desktop-Äquivalent weg, wie `hooks` und scoped-Berechtigungsregeln wie `Bash(npm *)`, aus der Bootstrap-Antwort.951Das Gateway lässt Schlüssel ohne Claude-Desktop-Äquivalent, wie `hooks` und bereichsbezogene Berechtigungsregeln wie `Bash(npm *)`, aus der Bootstrap-Antwort weg.

839 952 

840Fügen Sie den optionalen `desktop`-Block neben `cli` hinzu, um Claude-Desktop-Einstellungen direkt zu setzen. Schreiben Sie Einstellungen aus Claude Desktops [verwalteter Konfigurationsreferenz](https://claude.com/docs/third-party/claude-desktop/configuration) als flache Schlüsselnamen. Lassen Sie Schlüssel weg, die Claude Desktop nur aus MDM oder lokalen Dateien liest, wie `bootstrapUrl`; das Gateway lehnt sie beim Start ab. Vor v2.1.232 akzeptierte das Gateway eine feste Liste von 11 Feature-Gate-Schlüsseln, wie `chatTabEnabled` und `disableAutoUpdates`, und lehnte jeden anderen Schlüssel beim Start ab. Vor v2.1.227 lehnte das Gateway auch `chatTabEnabled` und `chatAdvancedFileAnalysisEnabled` beim Start ab.953Fügen Sie den optionalen `desktop`-Block neben `cli` hinzu, um Claude-Desktop-Einstellungen direkt zu setzen. Schreiben Sie Einstellungen aus Claude Desktops [verwalteter Konfigurationsreferenz](https://claude.com/docs/third-party/claude-desktop/configuration) als flache Schlüsselnamen. Lassen Sie Schlüssel weg, die Claude Desktop nur aus MDM oder lokalen Dateien liest, wie `bootstrapUrl`; das Gateway lehnt sie beim Start ab. Vor v2.1.232 akzeptierte das Gateway eine feste Liste von 11 Feature-Gate-Schlüsseln, wie `chatTabEnabled` und `disableAutoUpdates`, und lehnte jeden anderen Schlüssel beim Start ab. Vor v2.1.227 lehnte das Gateway auch `chatTabEnabled` und `chatAdvancedFileAnalysisEnabled` beim Start ab.

841 954 


853 966 

854Jeder Schlüssel ist optional; Claude Desktop wendet seinen eigenen Standard für jeden Schlüssel an, den Sie weglassen. Das Gateway validiert jeden `desktop`-Block beim Start gegen das Konfigurationsschema, das Claude Desktop selbst verwendet, sodass ein Fehler beim Gateway-Start als Fehler auftaucht, der den Schlüssel benennt, statt jeden verbundenen Desktop zu erreichen. Das Gateway schlägt beim Start fehl, wenn ein Block Folgendes enthält:967Jeder Schlüssel ist optional; Claude Desktop wendet seinen eigenen Standard für jeden Schlüssel an, den Sie weglassen. Das Gateway validiert jeden `desktop`-Block beim Start gegen das Konfigurationsschema, das Claude Desktop selbst verwendet, sodass ein Fehler beim Gateway-Start als Fehler auftaucht, der den Schlüssel benennt, statt jeden verbundenen Desktop zu erreichen. Das Gateway schlägt beim Start fehl, wenn ein Block Folgendes enthält:

855 968 

856* Ein unbekannter Schlüssel969* Einen unbekannten Schlüssel

857* Ein erkannter Schlüssel, dessen Wert Claude Desktop ablehnen oder stillschweigend löschen würde, wie ein leerer Wert oder ein falsch geschriebener Unterschlüssel in einem verschachtelten Eintrag. Vor v2.1.260 ließ das Gateway ein falsch geschriebenes Feld in einem verschachtelten Objekt eines `managedMcpServers`- oder `orgPluginSettings`-Eintrags stillschweigend fallen, anstatt beim Start fehlzuschlagen.970* Einen erkannten Schlüssel, dessen Wert Claude Desktop ablehnen oder stillschweigend verwerfen würde, wie einen leeren Wert oder einen falsch geschriebenen Unterschlüssel in einem verschachtelten Eintrag. Vor v2.1.260 ließ das Gateway ein falsch geschriebenes Feld in einem verschachtelten Objekt eines `managedMcpServers`- oder `orgPluginSettings`-Eintrags stillschweigend fallen, anstatt beim Start fehlzuschlagen.

858* Ein Schlüssel, den das Gateway selbst berechnet: die Inferenzverbindung, die Modellliste und das OTLP-Relay. Konfigurieren Sie diese durch [`upstreams`](#upstreams), [`models`](#models) und den [`telemetry`](#telemetry)-Abschnitt `forward_to`.971* Einen Schlüssel, den das Gateway selbst berechnet: die Inferenzverbindung, die Modellliste und das OTLP-Relay. Konfigurieren Sie diese durch [`upstreams`](#upstreams), [`models`](#models) und `forward_to` im Abschnitt [`telemetry`](#telemetry).

859* Ein Legacy-Alias eines aktuellen Schlüssels. Im Boot-Fehler benennt das Gateway den kanonischen Schlüssel zum Schreiben.972* Einen Legacy-Alias eines aktuellen Schlüssels. Im Boot-Fehler benennt das Gateway den kanonischen Schlüssel, den Sie schreiben sollten.

860 973 

861Wenn Sie einen veralteten Wert oder eine Eintragform verwenden, wie einen `managedMcpServers`-Eintrag ohne `transport`, startet das Gateway und protokolliert eine Warnung, die den Ersatz benennt.974Wenn Sie einen veralteten Wert oder eine veraltete Eintragsform verwenden, wie einen `managedMcpServers`-Eintrag ohne `transport`, startet das Gateway und protokolliert eine Warnung, die den Ersatz benennt.

862 975 

863Das Gateway validiert einen `desktop`-Block gegen das Schema, das mit seiner installierten Version gebündelt ist, wie es den `cli`-Block tut. Um eine Einstellung bereitzustellen, die von einer neueren Claude-Desktop-Version eingeführt wurde, aktualisieren Sie das Gateway zuerst. Zum Beispiel benötigen `userPluginMarketplacesEnabled` und `userPluginUploadsEnabled` Claude Code v2.1.260 oder später auf dem Gateway-Server und Claude Desktop 1.37937.0 oder später auf den Maschinen der Mitglieder.976Das Gateway validiert einen `desktop`-Block gegen das Schema, das mit seiner installierten Version gebündelt ist, wie es den `cli`-Block tut. Um eine Einstellung bereitzustellen, die von einer neueren Claude-Desktop-Version eingeführt wurde, aktualisieren Sie das Gateway zuerst. Zum Beispiel benötigen `userPluginMarketplacesEnabled` und `userPluginUploadsEnabled` Claude Code v2.1.260 oder später auf dem Gateway-Server und Claude Desktop 1.37937.0 oder später auf den Maschinen der Mitglieder.

864 977 

978`blockReadsOutsideWorkingDirectories`, `disableBypassPermissionsMode`, `configRecheckIntervalMinutes` und `sshClientPath` benötigen Claude Code v2.1.281 oder später auf dem Gateway-Server. Dasselbe gilt für den Wert `required` von `microsoftAuthBroker` und das Feld `continuousAccessEvaluation` eines Microsoft-365-`managedMcpServers`-Eintrags. Claude-Desktop-Versionen, die älter als der Wert `required` sind, lesen ihn als `disabled`, setzen Sie `required` daher erst, wenn das Claude Desktop jedes Mitglieds ihn unterstützt. Claude Desktops [verwaltete Konfigurationsreferenz](https://claude.com/docs/third-party/claude-desktop/configuration) listet die Version auf, die jeden Schlüssel zuerst liest.

979 

865Wenn Sie `orgPluginSettings` im `desktop`-Block einer Richtlinie setzen, bedient das Gateway es in der Array-Form, die Claude Desktop 1.15200.0 und später liest. Ältere Desktops ignorieren das Array und erzwingen keine Plugin-Tool-Richtlinie, daher aktualisieren Sie Mitglieder auf 1.15200.0 oder später, bevor Sie sich darauf verlassen.980Wenn Sie `orgPluginSettings` im `desktop`-Block einer Richtlinie setzen, bedient das Gateway es in der Array-Form, die Claude Desktop 1.15200.0 und später liest. Ältere Desktops ignorieren das Array und erzwingen keine Plugin-Tool-Richtlinie, daher aktualisieren Sie Mitglieder auf 1.15200.0 oder später, bevor Sie sich darauf verlassen.

866 981 

867Das Gateway füllt Schlüssel, die der `desktop`-Block einer Richtlinie nicht setzt, aus dem `match: {}`-Catch-All-`desktop`-Block, auf die gleiche Weise, wie es den `cli`-Block einer Richtlinie ausfüllt. Wenn Sie `disabledBuiltinTools` oder `builtinToolPolicy` sowohl in der Basis als auch in einer Rollen-Richtlinie setzen, behält das Gateway die Einschränkung der Basis:982Das Gateway füllt Schlüssel, die der `desktop`-Block einer Richtlinie nicht setzt, aus dem `desktop`-Block der `match: {}`-Catch-All, auf die gleiche Weise, wie es den `cli`-Block einer Richtlinie aus der Basis ausfüllt. Wenn Sie `disabledBuiltinTools` oder `builtinToolPolicy` sowohl in der Basis als auch in einer Rollen-Richtlinie setzen, behält das Gateway die Einschränkung der Basis:

868 983 

869* `disabledBuiltinTools`: Das Gateway verwendet die Vereinigung der Liste der Basis und der Richtlinie984* `disabledBuiltinTools`: Das Gateway verwendet die Vereinigung der Liste der Basis und der Liste der Richtlinie

870* `builtinToolPolicy`: Wenn Sie ein Tool in der Basis auf einen anderen Wert als `allow` setzen, behält das Gateway diesen Wert, auch wenn Sie `allow` für das gleiche Tool in einer Rollen-Richtlinie setzen985* `builtinToolPolicy`: Wenn Sie ein Tool in der Basis auf einen anderen Wert als `allow` setzen, behält das Gateway diesen Wert, auch wenn Sie `allow` für das gleiche Tool in einer Rollen-Richtlinie setzen

871 986 

872Für jeden anderen Schlüssel, wenn Sie ihn in der Rollen-Richtlinie setzen, verwendet das Gateway den Wert der Rollen-Richtlinie. Das Gateway ersetzt ein Array oder ein verschachteltes Objekt wie `banner` ganz, sodass wenn Sie `banner.text` in einer Rollen-Richtlinie setzen, das Gateway die `banner.backgroundColor` der Basis löscht.987Für jeden anderen Schlüssel, wenn Sie ihn in der Rollen-Richtlinie setzen, verwendet das Gateway den Wert der Rollen-Richtlinie. Das Gateway ersetzt ein Array oder ein verschachteltes Objekt wie `banner` ganz, sodass wenn Sie `banner.text` in einer Rollen-Richtlinie setzen, das Gateway die `banner.backgroundColor` der Basis verwirft.

873 988 

874Wenn Sie Claude Desktop nicht bereitstellen, lassen Sie `desktop` vollständig aus Ihren Richtlinien weg; das Gateway gibt dann 404 von `/user/bootstrap` für jeden Benutzer zurück.989Wenn Sie Claude Desktop nicht bereitstellen, lassen Sie `desktop` vollständig aus Ihren Richtlinien weg; das Gateway gibt dann 404 von `/user/bootstrap` für jeden Benutzer zurück.

875 990 


877 Vorrang mit anderen verwalteten Quellen992 Vorrang mit anderen verwalteten Quellen

878</h4>993</h4>

879 994 

880Wenn ein Gerät auch eine MDM-bereitgestellte Richtlinie oder eine lokale `managed-settings.json` hat, rangieren Gateway-bereitgestellte Einstellungen zuerst. [Vorrang innerhalb der verwalteten Ebene](/docs/de/managed-settings#precedence-within-the-managed-tier) auf der Seite der verwalteten Einstellungen sagt, wann die lokalen Quellen gelten, und hat die [Schlüssel, die Claude Code aus jeder Admin-Quelle liest](/docs/de/managed-settings#keys-read-from-every-admin-source) unabhängig davon, welche Quelle es ausgewählt hat, wie die Sandbox-Lock-Schlüssel, `forceRemoteSettingsRefresh` und die Pro-Variable `env`-Zusammenführung. Ein [`policyHelper`](/docs/de/settings-reference#policyhelper), der in einem MDM-Profil oder der Datei der verwalteten Einstellungen konfiguriert ist, wird nur ausgeführt, wenn das Gateway keine Einstellungen bereitstellt; der Eintrag sagt, was seine Ausgabe ersetzt.995Wenn ein Gerät auch eine MDM-bereitgestellte Richtlinie oder eine lokale `managed-settings.json` hat, haben Gateway-bereitgestellte Einstellungen Vorrang. [Vorrang innerhalb der verwalteten Ebene](/docs/de/managed-settings#precedence-within-the-managed-tier) auf der Seite der verwalteten Einstellungen sagt, wann die lokalen Quellen gelten, und hat die [Schlüssel, die Claude Code aus jeder Admin-Quelle liest](/docs/de/managed-settings#keys-read-from-every-admin-source) unabhängig davon, welche Quelle es ausgewählt hat, wie die Sandbox-Lock-Schlüssel, `forceRemoteSettingsRefresh` und die `env`-Zusammenführung pro Variable. Ein [`policyHelper`](/docs/de/settings-reference#policyhelper), der in einem MDM-Profil oder der Datei der verwalteten Einstellungen konfiguriert ist, wird nur ausgeführt, wenn das Gateway keine Einstellungen bereitstellt; der Eintrag sagt, was seine Ausgabe ersetzt.

881 996 

882Einbettungs-Hosts wie [Claude Desktop](/docs/de/desktop) können Richtlinien durch die SDK-Option `managedSettings` bereitstellen. [Übergeordnete Einstellungen von Einbettungs-Hosts](/docs/de/managed-settings#parent-settings-from-embedding-hosts) sagt, wann Claude Code sie anwendet, und [Übergeordnete Einstellungen einschränken](/docs/de/claude-apps-gateway#restrict-parent-settings) listet auf, welche Zulassungs-Richtungs-Einstellungen immer noch ohne die `allowManaged*Only`-Sperren gelten.997Einbettungs-Hosts wie [Claude Desktop](/docs/de/desktop) können Richtlinien durch die SDK-Option `managedSettings` bereitstellen. [Übergeordnete Einstellungen von Einbettungs-Hosts](/docs/de/managed-settings#parent-settings-from-embedding-hosts) sagt, wann Claude Code sie anwendet, und [Übergeordnete Einstellungen einschränken](/docs/de/claude-apps-gateway#restrict-parent-settings) listet auf, welche Zulassungs-Richtungs-Einstellungen immer noch ohne die `allowManaged*Only`-Sperren gelten.

883 998 


887 `telemetry`1002 `telemetry`

888</h3>1003</h3>

889 1004 

890Die CLI sendet Metriken, Protokolle und, wenn aktiviert, Traces an das Gateway, das sie wörtlich an jedes konfigurierte Ziel weitergeleitet. 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.1005Die 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.

891 1006 

892Die CLI stempelt 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 Kostenattribution pro Entwickler und Nutzungsattribution funktioniert daher ohne Konfiguration auf der Entwicklerseite.1007In 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.

893 1008 

894[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.1009[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.

895 1010 

896Desktop und Cowork-Telemetrie tragen auch `enduser.sub`, den `sub`-Anspruch, den Ihr Identitätsanbieter für den Benutzer ausstellt, der gleich bleibt, wenn sich die E-Mail eines Benutzers ändert. Terminal-Sitzungen stempeln den gleichen Wert unter `user.id`, sodass eine Abfrage, die `enduser.sub` gegen Terminal-`user.id` abgleicht, die Terminal-, Desktop- und Cowork-Nutzung eines Benutzers zusammen abdeckt. Bei Desktop- und Cowork-Exporten ist `user.id` ein anonymer Bezeichner, nicht der Betreff.1011Desktop- und Cowork-Telemetrie tragen auch `enduser.sub`, den `sub`-Anspruch, den Ihr Identitätsanbieter für den Benutzer ausstellt, der gleich bleibt, wenn sich die E-Mail eines Benutzers ändert. Terminal-Sitzungen stempeln den gleichen Wert unter `user.id`, sodass eine Abfrage, die `enduser.sub` gegen Terminal-`user.id` abgleicht, die Terminal-, Desktop- und Cowork-Nutzung eines Benutzers zusammen abdeckt. Bei Desktop- und Cowork-Exporten ist `user.id` ein anonymer Bezeichner, nicht das Subjekt.

897 1012 

898Wie alle OpenTelemetry-Daten von Claude Code gehen diese Attribute nur an Ziele, die Ihre Organisation konfiguriert, niemals an Anthropic.1013Wie alle OpenTelemetry-Daten von Claude Code gehen diese Attribute nur an Ziele, die Ihre Organisation konfiguriert, niemals an Anthropic.

899 1014 

900Wenn die Gruppenliste eines Benutzers länger als 255 Zeichen ist, sobald sie prozentual kodiert ist, oder ein Gruppenname ein Komma oder Gleichheitszeichen enthält, lässt das Gateway `user.groups` aus der Desktop- und Cowork-Telemetrie dieses Benutzers weg, anstatt es zu kürzen. Die Terminal-Sitzungen dieses Benutzers tragen immer noch die vollständige Liste.1015Wenn die Gruppenliste eines Benutzers länger als 255 Zeichen ist, sobald sie prozentual kodiert ist, oder ein Gruppenname ein Komma oder Gleichheitszeichen enthält, lässt das Gateway `user.groups` aus der Desktop- und Cowork-Telemetrie dieses Benutzers weg, anstatt es zu kürzen. Die Terminal-Sitzungen dieses Benutzers tragen immer noch die vollständige Liste.

901 1016 

902Das Gateway lässt `enduser.sub` weg, wenn der Betreff länger als 255 Zeichen ist, sobald er prozentual kodiert ist, oder ein Leerzeichen, ein Zeichen außerhalb des druckbaren ASCII oder eines von `,` `;` `=` `\` `"` `%` enthält. Die Desktop- und Cowork-Telemetrie dieses Benutzers behält seine anderen Attribute.1017Das Gateway lässt `enduser.sub` weg, wenn das Subjekt länger als 255 Zeichen ist, sobald es prozentual kodiert ist, oder ein Leerzeichen, ein Zeichen außerhalb des druckbaren ASCII oder eines von `,` `;` `=` `\` `"` `%` enthält. Die Desktop- und Cowork-Telemetrie dieses Benutzers behält ihre anderen Attribute.

903 1018 

904Sie benötigen Claude Code v2.1.265 oder später auf dem Gateway-Server für `user.email` und `user.groups` auf Desktop- und Cowork-Telemetrie, und Claude Desktop 1.24012 oder später auf der Maschine jedes Entwicklers für `user.groups`.1019Sie benötigen Claude Code v2.1.265 oder später auf dem Gateway-Server für `user.email` und `user.groups` auf Desktop- und Cowork-Telemetrie, und Claude Desktop 1.24012 oder später auf der Maschine jedes Entwicklers für `user.groups`.

905 1020 


924 Jedes Ziel meldet sich unabhängig für `metrics`, `logs` und `traces` an, und der Standard ist nur Metriken. Die Signale unterscheiden sich in der Empfindlichkeit:1039 Jedes Ziel meldet sich unabhängig für `metrics`, `logs` und `traces` an, und der Standard ist nur Metriken. Die Signale unterscheiden sich in der Empfindlichkeit:

925 1040 

926 * **Metriken**: Aggregatzähler wie Token-Zählungen, Anfragezählungen und Latenz1041 * **Metriken**: Aggregatzähler wie Token-Zählungen, Anfragezählungen und Latenz

927 * **Protokolle und Traces**: können vollständige Bash-Befehle, Tool-Eingaben und Dateipfade tragen, die alles abdecken, was Claude Code auf der Maschine eines Entwicklers tut1042 * **Logs und Traces**: können vollständige Bash-Befehle, Tool-Eingaben und Dateipfade tragen, die alles abdecken, was Claude Code auf der Maschine eines Entwicklers tut

928 1043 

929 Aktivieren Sie Protokolle und Traces nur auf Zielen mit den Zugriffskontrolle und Aufbewahrungsrichtlinie, die diese Daten rechtfertigen.1044 Aktivieren Sie Logs und Traces nur auf Zielen mit den Zugriffskontrollen und der Aufbewahrungsrichtlinie, die diese Daten erfordern.

930</Warning>1045</Warning>

931 1046 

932Jede `forward_to`-URL muss `https://` verwenden, mit einer Ausnahme für einen Collector auf der Loopback-Schnittstelle des Gateways selbst:1047Jede `forward_to`-URL muss `https://` verwenden, mit einer Ausnahme für einen Collector auf der Loopback-Schnittstelle des Gateways selbst:


940 1055 

941Um einen internen Collector direkt zu erreichen, fügen Sie ihn zu `NO_PROXY` nach Hostname oder nach einer Domäne mit einem führenden Punkt wie `.internal.example.com` hinzu, was Claude Code v2.1.277 oder später auf dem Gateway-Server erfordert. Stellen Sie sicher, dass das Gateway den Collector ohne den Proxy erreichen kann. Ein Eintrag ohne einen führenden Punkt gleicht nur diesen genauen Namen ab, nicht Namen darunter. CIDR-Bereiche gleichen nicht ab.1056Um einen internen Collector direkt zu erreichen, fügen Sie ihn zu `NO_PROXY` nach Hostname oder nach einer Domäne mit einem führenden Punkt wie `.internal.example.com` hinzu, was Claude Code v2.1.277 oder später auf dem Gateway-Server erfordert. Stellen Sie sicher, dass das Gateway den Collector ohne den Proxy erreichen kann. Ein Eintrag ohne einen führenden Punkt gleicht nur diesen genauen Namen ab, nicht Namen darunter. CIDR-Bereiche gleichen nicht ab.

942 1057 

943Mit [Proxy-Only-Egress](#proxy-only-egress) aktiviert, erlauben Sie den Collector stattdessen im Proxy, da jeder `NO_PROXY`-Eintrag Proxy-Only-Egress ausschaltet.1058Mit aktiviertem [Proxy-Only-Egress](#proxy-only-egress) erlauben Sie den Collector stattdessen im Proxy, da jeder `NO_PROXY`-Eintrag Proxy-Only-Egress ausschaltet.

944 1059 

945Telemetrie ist in der CLI standardmäßig deaktiviert. Wenn Sie sowohl `telemetry.forward_to` als auch `listen.public_url` setzen, schaltet das Gateway sie für verbundene Clients ein, indem es sechs Umgebungsvariablen durch `/managed/settings` drückt:1060Telemetrie ist in der CLI standardmäßig deaktiviert. Wenn Sie sowohl `telemetry.forward_to` als auch `listen.public_url` setzen, schaltet das Gateway sie für verbundene Clients ein, indem es sechs Umgebungsvariablen durch `/managed/settings` pusht:

946 1061 

947* `CLAUDE_CODE_ENABLE_TELEMETRY=1`1062* `CLAUDE_CODE_ENABLE_TELEMETRY=1`

948* `OTEL_METRICS_EXPORTER`, `OTEL_LOGS_EXPORTER` und `OTEL_TRACES_EXPORTER`, jeweils auf `otlp` gesetzt, wenn mindestens ein `forward_to`-Ziel dieses Signal aktiviert, und auf `none` andernfalls1063* `OTEL_METRICS_EXPORTER`, `OTEL_LOGS_EXPORTER` und `OTEL_TRACES_EXPORTER`, jeweils auf `otlp` gesetzt, wenn mindestens ein `forward_to`-Ziel dieses Signal aktiviert, und andernfalls auf `none`

949* `OTEL_EXPORTER_OTLP_ENDPOINT=<public_url>`1064* `OTEL_EXPORTER_OTLP_ENDPOINT=<public_url>`

950* `OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf`1065* `OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf`

951 1066 

952Wenn Sie [Ihre eigenen Labels hinzufügen](#add-your-own-labels), drückt das Gateway auch `OTEL_RESOURCE_ATTRIBUTES`.1067Wenn Sie [Ihre eigenen Labels hinzufügen](#add-your-own-labels), pusht das Gateway auch `OTEL_RESOURCE_ATTRIBUTES`.

953 1068 

954Vor Claude Code v2.1.265 auf dem Gateway-Server drückte das Gateway alle drei Exporter-Selektoren als `otlp`, einschließlich für Signale, die kein Ziel aktiviert hat.1069Vor Claude Code v2.1.265 auf dem Gateway-Server pushte das Gateway alle drei Exporter-Selektoren als `otlp`, auch für Signale, die kein Ziel aktiviert hatte.

955 1070 

956Der gepushte Endpunkt wird aus der öffentlichen URL erstellt, sodass Metriken und Protokolle keine OTEL-Konfiguration von Entwicklern oder Richtlinien benötigen.1071Der gepushte Endpunkt wird aus der öffentlichen URL erstellt, sodass Metriken und Logs keine OTEL-Konfiguration von Entwicklern oder Richtlinien benötigen.

957 1072 

958Entwickler, die sich durch `/login` anmelden, können Exporte nicht mit ihrer eigenen OTEL-Konfiguration umleiten:1073Entwickler, die sich durch `/login` anmelden, können Exporte nicht mit ihrer eigenen OTEL-Konfiguration umleiten:

959 1074 

960* **Lokal gesetzte Variablen**: Claude Code wendet die gepushten Variablen auf der verwalteten Ebene an, sodass jede den Wert überschreibt, den ein Entwickler lokal dafür setzt.1075* **Lokal gesetzte Variablen**: Claude Code wendet die gepushten Variablen auf der verwalteten Ebene an, sodass jede den Wert überschreibt, den ein Entwickler lokal dafür setzt.

961* **Lokal konfigurierte Endpunkte**: Mit OTLP/HTTP-Export aktiviert ignoriert die CLI jeden lokal konfigurierten Endpunkt, unabhängig davon, ob das Gateway die Telemetrie-Variablen gepusht hat. Seine Exporte gehen an das Gateway, es sei denn, eine Richtlinie [benennt Ihren Collector als Endpunkt](#export-directly-to-your-collector).1076* **Lokal konfigurierte Endpunkte**: Mit aktiviertem OTLP/HTTP-Export ignoriert die CLI jeden lokal konfigurierten Endpunkt, unabhängig davon, ob das Gateway die Telemetrie-Variablen gepusht hat. Ihre Exporte gehen an das Gateway, es sei denn, eine Richtlinie [benennt Ihren Collector als Endpunkt](#export-directly-to-your-collector).

962 1077 

963Ohne ein `forward_to`-Ziel für ein Signal akzeptiert das Gateway es und verwirft es. Wenn Entwickler bereits Claude-Code-Telemetrie an einen Ihrer Collector exportieren, fügen Sie ihn als `forward_to`-Ziel hinzu, mit Protokollen oder Traces aktiviert, wenn sie diese exportieren, sodass er ihre Daten weiterhin erhält, nachdem sie sich anmelden. Um das Relay stattdessen zu überspringen, [benennen Sie den Collector in einer Richtlinie](#export-directly-to-your-collector).1078Ohne ein `forward_to`-Ziel für ein Signal akzeptiert das Gateway es und verwirft es. Wenn Entwickler bereits Claude-Code-Telemetrie an einen Ihrer Collector exportieren, fügen Sie ihn als `forward_to`-Ziel hinzu, mit aktivierten Logs oder Traces, wenn sie diese exportieren, sodass er ihre Daten weiterhin erhält, nachdem sie sich anmelden. Um das Relay stattdessen zu überspringen, [benennen Sie den Collector in einer Richtlinie](#export-directly-to-your-collector).

964 1079 

965[Traces](/docs/de/monitoring-usage#traces-beta) erfordern auch `CLAUDE_CODE_ENHANCED_TELEMETRY_BETA=1` auf jedem Client. Setzen Sie es im `env`-Block einer verwalteten Richtlinie, da das Gateway es nicht drückt. Entwickler genehmigen es im gleichen [Sicherheitsgenehmigungsdialog](#managed), den der gepushte Endpunkt bereits auslöst.1080[Traces](/docs/de/monitoring-usage#traces-beta) erfordern auch `CLAUDE_CODE_ENHANCED_TELEMETRY_BETA=1` auf jedem Client. Setzen Sie es im `env`-Block einer verwalteten Richtlinie, da das Gateway es nicht pusht. Entwickler genehmigen es im gleichen [Sicherheitsgenehmigungsdialog](#managed), den der gepushte Endpunkt bereits auslöst.

966 1081 

967Setzen Sie es auf `1` nur in den Richtlinien, deren Gruppen Sie verfolgen möchten. Eine Richtlinie, die es nicht setzt, erbt den Wert von Ihrer `match: {}`-Catch-All-Richtlinie, wenn diese Richtlinie einen setzt, pro den [Zusammenführungsregeln](#managed). Um zu verhindern, dass die Clients einer Gruppe Traces senden, auch wenn ein Entwickler die Variable lokal setzt, setzen Sie sie auf `0` in der Richtlinie dieser Gruppe.1082Setzen Sie es nur in den Richtlinien auf `1`, deren Gruppen Sie tracen möchten. Eine Richtlinie, die es nicht setzt, erbt den Wert von Ihrer `match: {}`-Catch-All-Richtlinie, wenn diese Richtlinie einen setzt, gemäß den [Zusammenführungsregeln](#managed). Um zu verhindern, dass die Clients einer Gruppe Traces senden, auch wenn ein Entwickler die Variable lokal setzt, setzen Sie sie in der Richtlinie dieser Gruppe auf `0`.

968 1083 

969Sowohl Protobuf- als auch JSON-OTLP-Kodierungen werden weitergeleitet, und jedes OpenTelemetry-kompatible Backend funktioniert als Ziel.1084Sowohl Protobuf- als auch JSON-OTLP-Kodierungen werden weitergeleitet, und jedes OpenTelemetry-kompatible Backend funktioniert als Ziel.

970 1085 


985 deployment.environment.name: prod1100 deployment.environment.name: prod

986```1101```

987 1102 

988Das Gateway weigert sich zu starten, wenn ein Label eine dieser Regeln bricht, und der Startup-Fehler benennt das Label:1103Das Gateway weigert sich zu starten, wenn ein Label eine dieser Regeln bricht, und der Startfehler benennt das Label:

989 1104 

990* Namen verwenden nur Buchstaben, Ziffern, `.`, `_` und `-`1105* Namen verwenden nur Buchstaben, Ziffern, `.`, `_` und `-`

991* Namen sind nicht reserviert. Verglichen in jeder Schreibweise sind die reservierten Namen alles, das mit `user.`, `enduser.` oder `identity.` beginnt, plus `service.name`, `service.version`, `claude.deployment_mode`, `host.arch`, `os.type`, `os.version` und `wsl.version`1106* Namen sind nicht reserviert. Verglichen in jeder Schreibweise sind die reservierten Namen alles, das mit `user.`, `enduser.` oder `identity.` beginnt, plus `service.name`, `service.version`, `claude.deployment_mode`, `host.arch`, `os.type`, `os.version` und `wsl.version`

992* Werte sind nicht leere druckbare ASCII ohne Leerzeichen und keine von `, ; = \ " %`1107* Werte sind nicht leeres druckbares ASCII ohne Leerzeichen und ohne eines von `, ; = \ " %`

993* Werte sind höchstens 255 Zeichen, wie das Gateway sie nach prozentualem Kodieren zählt, sodass `/`, `:` und `@` jeweils als drei zählen1108* Werte sind höchstens 255 Zeichen lang, wie das Gateway sie nach prozentualem Kodieren zählt, sodass `/`, `:` und `@` jeweils als drei zählen

994* Werte sind Text, daher zitieren Sie eine Zahl, `true` oder `false`1109* Werte sind Text, setzen Sie daher eine Zahl, `true` oder `false` in Anführungszeichen

995 1110 

996Sie benötigen Claude Code v2.1.281 oder später auf dem Gateway-Server, um `telemetry.resource_attributes` zu setzen. Ein früheres Gateway weigert sich zu starten, wenn es den Schlüssel findet. Aktualisieren Sie jedes Replikat, bevor Sie den Schlüssel hinzufügen, und entfernen Sie den Schlüssel, bevor Sie zu einer früheren Version zurückrollen.1111Sie benötigen Claude Code v2.1.281 oder später auf dem Gateway-Server, um `telemetry.resource_attributes` zu setzen. Ein früheres Gateway weigert sich zu starten, wenn es den Schlüssel findet. Aktualisieren Sie jedes Replikat, bevor Sie den Schlüssel hinzufügen, und entfernen Sie den Schlüssel, bevor Sie zu einer früheren Version zurückrollen.

997 1112 

998Terminal-Sitzungen, die sich durch `/login` anmelden, erhalten die Labels als `OTEL_RESOURCE_ATTRIBUTES`, gepusht mit den anderen [Telemetrie-Variablen](#telemetry). Wenn Sie `OTEL_RESOURCE_ATTRIBUTES` im `env`-Block einer Richtlinie setzen, erhalten Terminal-Sitzungen, die diese Richtlinie abgleichen, diesen Wert statt der Labels. Claude Desktop erhält die Labels vom Gateway neben `user.email` und den anderen Identitätsattributen.1113Terminal-Sitzungen, die sich durch `/login` anmelden, erhalten die Labels als `OTEL_RESOURCE_ATTRIBUTES`, gepusht mit den anderen [Telemetrie-Variablen](#telemetry). Wenn Sie `OTEL_RESOURCE_ATTRIBUTES` im `env`-Block einer Richtlinie setzen, erhalten Terminal-Sitzungen, die diese Richtlinie abgleicht, diesen Wert statt der Labels. Claude Desktop erhält die Labels vom Gateway neben `user.email` und den anderen Identitätsattributen.

999 1114 

1000Claude Code kopiert auch jedes Label auf jeden Metrik-Datenpunkt, sodass Sie Metriken in einem Backend, das Ressourcenattribute nicht indiziert, danach filtern können. Um diese Kopie auszuschalten, siehe [Metriken-Kardinalitätskontrolle](/docs/de/monitoring-usage#metrics-cardinality-control).1115Claude Code kopiert auch jedes Label auf jeden Metrik-Datenpunkt, sodass Sie Metriken in einem Backend, das Ressourcenattribute nicht indiziert, danach filtern können. Um diese Kopie auszuschalten, siehe [Metriken-Kardinalitätskontrolle](/docs/de/monitoring-usage#metrics-cardinality-control).

1001 1116 


1007 1122 

1008Um sich beim Collector zu authentifizieren, setzen Sie `OTEL_EXPORTER_OTLP_HEADERS` im gleichen `env`-Block. Sitzungen senden niemals das Gateway-Sitzungstoken des Entwicklers an einen Collector, der auf diese Weise benannt wird.1123Um sich beim Collector zu authentifizieren, setzen Sie `OTEL_EXPORTER_OTLP_HEADERS` im gleichen `env`-Block. Sitzungen senden niemals das Gateway-Sitzungstoken des Entwicklers an einen Collector, der auf diese Weise benannt wird.

1009 1124 

1010Wenn Sie diesen Endpunkt in einer Richtlinie hinzufügen oder ändern, fragt Claude Code jeden Entwickler, ihn im [Sicherheitsgenehmigungsdialog](#managed) zu genehmigen, bevor er ihn in einer interaktiven Sitzung anwendet.1125Wenn Sie diesen Endpunkt in einer Richtlinie hinzufügen oder ändern, bittet Claude Code jeden Entwickler, ihn im [Sicherheitsgenehmigungsdialog](#managed) zu genehmigen, bevor es ihn in einer interaktiven Sitzung anwendet.

1011 1126 

1012Claude Code prüft den Endpunkt, bevor es ein Signal direkt exportiert, und behält dieses Signal auf dem Relay, wenn eine Prüfung fehlschlägt. Die Prüfungen umfassen:1127Claude Code prüft den Endpunkt, bevor es ein Signal direkt exportiert, und behält dieses Signal auf dem Relay, wenn eine Prüfung fehlschlägt. Die Prüfungen umfassen:

1013 1128 

1014* Der Endpunkt kommt vom Gateway selbst. Wenn Sie die gleiche Variable in einem MDM-Profil oder einer lokalen `managed-settings.json` setzen, bleiben Exporte auf dem Relay.1129* Der Endpunkt kommt vom Gateway selbst. Wenn Sie die gleiche Variable in einem MDM-Profil oder einer lokalen `managed-settings.json` setzen, bleiben Exporte auf dem Relay.

1015* Die URL verwendet `https://` oder `http://` zu einer Loopback-Adresse1130* Die URL verwendet `https://` oder `http://` zu einer Loopback-Adresse

1016* Die URL wird zu einem Pfad aufgelöst, der mit `/v1/<signal>` endet, ohne Abfrage oder Fragment. Claude Code erstellt diesen Pfad selbst aus der generischen Variable. Es verwendet eine Pro-Signal-Variable wie `OTEL_EXPORTER_OTLP_METRICS_ENDPOINT` wie geschrieben, daher den vollständigen Pfad dort einschließen.1131* Die URL wird zu einem Pfad aufgelöst, der mit `/v1/<signal>` endet, ohne Abfrage oder Fragment. Claude Code erstellt diesen Pfad selbst aus der generischen Variable. Eine Pro-Signal-Variable wie `OTEL_EXPORTER_OTLP_METRICS_ENDPOINT` verwendet es wie geschrieben, geben Sie dort daher den vollständigen Pfad an.

1017* Die URL ist nicht der eigene Host des Gateways. Ein Endpunkt, der auf das Gateway adressiert ist, behält den Relay-Pfad und sein Sitzungstoken.1132* Die URL ist nicht der eigene Host des Gateways. Ein Endpunkt, der an das Gateway adressiert ist, behält den Relay-Pfad und sein Sitzungstoken.

1018* Weder Sie noch der Entwickler haben [`otelHeadersHelper`](/docs/de/settings-reference#otelheadershelper) in einer Einstellungsquelle konfiguriert. Mit einem konfigurierten Helper bleibt jedes Signal auf dem Relay.1133* Weder Sie noch der Entwickler haben [`otelHeadersHelper`](/docs/de/settings-reference#otelheadershelper) in einer Einstellungsquelle konfiguriert. Mit einem konfigurierten Helper bleibt jedes Signal auf dem Relay.

1019 1134 

1020Der Endpunkt, den Sie benennen, ändert nur, wohin Exporte gehen. Sie wählen immer noch, welche Signale überhaupt exportieren, mit den `OTEL_*_EXPORTER`-Selektoren.1135Der Endpunkt, den Sie benennen, ändert nur, wohin Exporte gehen. Welche Signale überhaupt exportiert werden, wählen Sie weiterhin mit den `OTEL_*_EXPORTER`-Selektoren.

1021 1136 

1022Der Endpunkt allein schaltet Export nicht ein, daher setzen Sie auch die Variablen, die dies tun, es sei denn, das Gateway drückt sie bereits:1137Der Endpunkt allein schaltet den Export nicht ein, setzen Sie daher auch die Variablen, die dies tun, es sei denn, das Gateway pusht sie bereits:

1023 1138 

1024* Wenn das Gateway bereits [die Telemetrie-Variablen drückt](#telemetry), decken sie Aktivierung, Selektoren und Protokoll ab, und Ihr expliziter Endpunkt überschreibt den gepushten `<public_url>`-Wert. Setzen Sie einen `OTEL_*_EXPORTER`-Selektor auf `otlp` selbst nur für ein Signal, das kein `forward_to`-Ziel aktiviert.1139* Wenn das Gateway bereits [die Telemetrie-Variablen pusht](#telemetry), decken sie Aktivierung, Selektoren und Protokoll ab, und Ihr expliziter Endpunkt überschreibt den gepushten `<public_url>`-Wert. Setzen Sie einen `OTEL_*_EXPORTER`-Selektor nur für ein Signal selbst auf `otlp`, das kein `forward_to`-Ziel aktiviert.

1025* Wenn nicht, setzen Sie auch `CLAUDE_CODE_ENABLE_TELEMETRY=1`, die `OTEL_*_EXPORTER`-Selektoren und `OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf`.1140* Wenn nicht, setzen Sie auch `CLAUDE_CODE_ENABLE_TELEMETRY=1`, die `OTEL_*_EXPORTER`-Selektoren und `OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf`.

1026 1141 

1027Wenn sich der Entwickler abmeldet oder bei einem anderen Gateway anmeldet, stoppen Exporte an den Collector und Claude Code verwirft jeden verbleibenden Batch, anstatt ihn zu senden.1142Wenn sich der Entwickler abmeldet oder bei einem anderen Gateway anmeldet, stoppen Exporte an den Collector und Claude Code verwirft jeden verbleibenden Batch, anstatt ihn zu senden.


1030 Wenn ein Ziel fehlschlägt1145 Wenn ein Ziel fehlschlägt

1031</h4>1146</h4>

1032 1147 

1033Das Gateway puffert, wiederholt oder speichert Telemetrie nicht, daher verwirft es einen Export, der ein Ziel nicht erreicht, anstatt ihn verspätet zu liefern. Jedes Ziel erfolgreich oder schlägt fehl auf eigene Faust, und der exportierende Client erhält eine Erfolgsmeldung auf jeden Fall, sodass eine fehlgeschlagene Lieferung nur im Protokoll des Gateways angezeigt wird.1148Das Gateway puffert, wiederholt oder speichert Telemetrie nicht, daher verwirft es einen Export, der ein Ziel nicht erreicht, anstatt ihn verspätet zu liefern. Jedes Ziel ist für sich erfolgreich oder schlägt fehl, und der exportierende Client erhält in jedem Fall eine Erfolgsantwort, sodass eine fehlgeschlagene Lieferung nur im Log des Gateways erscheint.

1034 1149 

1035Nach fünf aufeinanderfolgenden fehlgeschlagenen Lieferungen an ein Ziel pausiert das Gateway die Weiterleitung dorthin in 30-Sekunden-Abständen, protokolliert jede Pause, bis eine Lieferung erfolgreich ist. Jede Fehlerantwort, Timeout oder Verbindungsfehler zählt als fehlgeschlagene Lieferung, außer `400`, `413`, `415`, `422` und `431`, die bedeuten, dass der Collector diese Export-Nutzlast als fehlerhaft oder zu groß ablehnt.1150Nach fünf aufeinanderfolgenden fehlgeschlagenen Lieferungen an ein Ziel pausiert das Gateway die Weiterleitung dorthin in 30-Sekunden-Abschnitten und protokolliert jede Pause, bis eine Lieferung erfolgreich ist. Jede Fehlerantwort, jeder Timeout und jeder Verbindungsfehler zählt als fehlgeschlagene Lieferung, außer `400`, `413`, `415`, `422` und `431`, die bedeuten, dass der Collector die Payload dieses Exports als fehlerhaft oder zu groß abgelehnt hat.

1036 1151 

1037Eine abgelehnte Nutzlast weder voranschreitet noch setzt den Fehlerzähler zurück: Das Gateway leitet weiterhin an das Ziel weiter und protokolliert eine Warnung, die es und den Status benennt, bei der ersten Ablehnung des Ziels und alle hundert danach.1152Eine abgelehnte Payload erhöht den Fehlerzähler weder, noch setzt sie ihn zurück: Das Gateway leitet weiterhin an das Ziel weiter und protokolliert eine Warnung, die das Ziel und den Status benennt, bei der ersten Ablehnung des Ziels und bei jeder hundertsten danach.

1038 1153 

1039<h3 id="http-tuning">1154<h3 id="http-tuning">

1040 HTTP-Optimierung1155 HTTP-Optimierung


1044 1159 

1045| Block | Schlüssel | Standard | Beschreibung |1160| Block | Schlüssel | Standard | Beschreibung |

1046| - | - | - | - |1161| - | - | - | - |

1047| `access_control` | `allow_cidrs` / `deny_cidrs` | leer | Eingehende IP-Zulassung/Ablehnung nach Client-Adresse, nach `trusted_proxies`-Auflösung. `deny_cidrs` wird zuerst geprüft; ein Client, den es abgleicht, wird abgelehnt, auch wenn `allow_cidrs` auch abgleicht. Wenn `allow_cidrs` nicht leer ist, ist das Gateway standardmäßig Ablehnung. `/healthz` und `/readyz` sind von `allow_cidrs` ausgenommen. Wenn ein vertrauenswürdiger Proxy einen `X-Forwarded-For`-Eintrag sendet, der keine IP-Adresse ist, ist der echte Client unbekannt und das Gateway protokolliert eine Warnung einmal, die benennt, was zu prüfen ist. Wo eine der Listen auf die Anfrage zutrifft, lehnt sie sie mit `403` und Audit-Grund `xff_unparseable` ab. Wo keine zutrifft, bedient es die Anfrage und verwendet die Adresse des Proxys selbst als Client-IP für Pro-IP-Ratenlimits und Audit. |1162| `access_control` | `allow_cidrs` / `deny_cidrs` | leer | Eingehende IP-Zulassung/Ablehnung nach Client-Adresse, nach `trusted_proxies`-Auflösung. `deny_cidrs` wird zuerst geprüft; ein Client, den es abgleicht, wird abgelehnt, auch wenn `allow_cidrs` ebenfalls abgleicht. Wenn `allow_cidrs` nicht leer ist, lehnt das Gateway standardmäßig ab. `/healthz` und `/readyz` sind von `allow_cidrs` ausgenommen. Wenn ein vertrauenswürdiger Proxy einen `X-Forwarded-For`-Eintrag sendet, der keine IP-Adresse ist, ist der echte Client unbekannt und das Gateway protokolliert einmalig eine Warnung, die benennt, was zu prüfen ist. Wo eine der Listen auf die Anfrage zutrifft, lehnt es sie mit `403` und dem Audit-Grund `xff_unparseable` ab. Wo keine zutrifft, bedient es die Anfrage und verwendet die Adresse des Proxys selbst als Client-IP für Pro-IP-Rate-Limits und Audit. |

1048| `limits` | `max_request_bytes` | 32 MiB | Max eingehender Anfragekörper; übergroße Anfragen erhalten `413`, bevor der Körper gepuffert wird. Erhöhen Sie für große Datei- oder Bildanfragen. |1163| `limits` | `max_request_bytes` | 32 MiB | Maximaler eingehender Request-Body; übergroße Anfragen erhalten `413`, bevor der Body gepuffert wird. Erhöhen Sie den Wert für große Datei- oder Bildanfragen. |

1049| `limits` | `max_request_header_bytes` | nicht gesetzt | Wenn gesetzt, geben übergroße Header `431` zurück |1164| `limits` | `max_request_header_bytes` | nicht gesetzt | Wenn gesetzt, geben übergroße Header `431` zurück |

1050| `limits` | `max_url_length` | nicht gesetzt | Wenn gesetzt, gibt eine zu lange URL `414` zurück |1165| `limits` | `max_url_length` | nicht gesetzt | Wenn gesetzt, gibt eine zu lange URL `414` zurück |

1051| `timeouts` | `upstream_ttfb_ms` | 120000 | Max Wartezeit auf die Antwortheader des Upstream (Zeit zum ersten Byte). Der Antwortkörper streamt dann ohne Wall-Clock-Obergrenze. Gilt für den direkten Anthropic-Upstream-Pfad; auf jedem anderen Anbieter wartet das Gateway bis zu eine Stunde auf den Antwortkopf. |1166| `timeouts` | `upstream_ttfb_ms` | 120000 | Maximale Wartezeit auf die Response-Header des Upstream (Zeit bis zum ersten Byte). Der Response-Body streamt dann ohne Wall-Clock-Obergrenze. Gilt für den direkten Anthropic-Upstream-Pfad; bei jedem anderen Anbieter wartet das Gateway bis zu eine Stunde, bis die Antwort beginnt. |

1052| `rate_limits` | `device_authorization.max` / `.window_seconds` | 30 / 600 | Pro-IP-Ratenlimit auf dem nicht authentifizierten Geräteautorisierungs-Endpunkt. Erhöhen Sie für eine große Organisation hinter einer gemeinsamen Egress-IP oder NAT. [Große Rollouts](/docs/de/claude-apps-gateway-deploy#large-rollouts) zeigt, wie weit Sie es erhöhen sollten. Diese Limits gelten nur für den Geräte-Grant-Anmeldungsfluss, nicht für `/v1/messages`-Inferenz. Siehe [Benutzer-Code-Brute-Force-Widerstand](/docs/de/claude-apps-gateway-deploy#user-code-brute-force-resistance). |1167| `rate_limits` | `device_authorization.max` / `.window_seconds` | 30 / 600 | Pro-IP-Rate-Limit auf dem nicht authentifizierten Geräteautorisierungs-Endpunkt. Erhöhen Sie es für eine große Organisation hinter einer gemeinsamen Egress-IP oder NAT. [Große Rollouts](/docs/de/claude-apps-gateway-deploy#large-rollouts) zeigt, wie Sie es dimensionieren. Diese Limits gelten nur für den Geräte-Grant-Anmeldungsfluss, nicht für `/v1/messages`-Inferenz. Siehe [Benutzer-Code-Brute-Force-Widerstand](/docs/de/claude-apps-gateway-deploy#user-code-brute-force-resistance). |

1053| `rate_limits` | `device_verify.max` / `.window_seconds` | 10 / 600 | Pro-IP-Ratenlimit bei `user_code`-Einreichungen unter `/device`. Es ist das, was jemanden daran hindert, den Code eines anderen Entwicklers zu erraten. [Große Rollouts](/docs/de/claude-apps-gateway-deploy#large-rollouts) zeigt, wie weit Sie es erhöhen sollten. |1168| `rate_limits` | `device_verify.max` / `.window_seconds` | 10 / 600 | Pro-IP-Rate-Limit für `user_code`-Einreichungen unter `/device`. Es ist das, was jemanden daran hindert, den Code eines anderen Entwicklers zu erraten. [Große Rollouts](/docs/de/claude-apps-gateway-deploy#large-rollouts) zeigt, wie weit Sie es erhöhen sollten. |

1054 1169 

1055Wenn Sie beide `access_control`-Listen leer lassen, was der Standard ist, bedient das Gateway jede Client-Adresse, sodass nur Ihr Netzwerk einschränkt, wer es erreichen kann. Das ist wichtig, da ein Gateway [verwaltete Einstellungen](#managed) pushen kann, die Befehle auf Entwicklermaschinen ausführen.1170Wenn Sie beide `access_control`-Listen leer lassen, was der Standard ist, bedient das Gateway jede Client-Adresse, sodass nur Ihr Netzwerk einschränkt, wer es erreichen kann. Das ist wichtig, da ein Gateway [verwaltete Einstellungen](#managed) pushen kann, die Befehle auf Entwicklermaschinen ausführen.

1056 1171 

1057Während `allow_cidrs` leer ist, warnt das Gateway an zwei Stellen, ohne zu ändern, wie es auf eine Anfrage antwortet:1172Während `allow_cidrs` leer ist, warnt das Gateway an zwei Stellen, ohne zu ändern, wie es auf eine Anfrage antwortet:

1058 1173 

1059* **Beim Start**: eine Warnung im Betriebsprotokoll empfiehlt, nur die privaten Bereiche `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`, `100.64.0.0/10`, `127.0.0.0/8`, `::1/128` und `fc00::/7` zuzulassen, plus alle anderen internen Bereiche, von denen sich Ihre Entwickler verbinden. Wenn Sie das Gateway an eine Loopback-Adresse binden und weder `trusted_proxies` noch `public_url` setzen, wie in der lokalen Entwicklung, erscheint die Warnung nicht.1174* **Beim Start**: eine Warnung im Betriebs-Log empfiehlt, nur die privaten Bereiche `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`, `100.64.0.0/10`, `127.0.0.0/8`, `::1/128` und `fc00::/7` zuzulassen, plus alle anderen internen Bereiche, von denen sich Ihre Entwickler verbinden. Wenn Sie das Gateway an eine Loopback-Adresse binden und weder `trusted_proxies` noch `public_url` setzen, wie in der lokalen Entwicklung, erscheint die Warnung nicht.

1060* **Zur Laufzeit**: Das erste Mal, wenn eine Anfrage von einer Adresse außerhalb dieser privaten Bereiche ankommt, protokolliert das Gateway eine Warnung und gibt ein [`access.public_client`-Audit-Ereignis](/docs/de/claude-apps-gateway-deploy#logs) aus, das die Client-IP trägt. Beide werden einmal pro Prozess ausgelöst. Link-lokale Adressen, `169.254.0.0/16` und `fe80::/10`, zählen nicht als öffentlich. Das Gateway antwortet auf `/healthz` und `/readyz`, bevor diese Prüfung ausgeführt wird, sodass Health-Probes aus öffentlichen Bereichen sie nicht auslösen.1175* **Zur Laufzeit**: Wenn zum ersten Mal eine Anfrage von einer Adresse außerhalb dieser privaten Bereiche ankommt, protokolliert das Gateway eine Warnung und gibt ein [`access.public_client`-Audit-Ereignis](/docs/de/claude-apps-gateway-deploy#logs) aus, das die Client-IP trägt. Beide werden einmal pro Prozess ausgelöst. Link-lokale Adressen, `169.254.0.0/16` und `fe80::/10`, zählen nicht als öffentlich. Das Gateway antwortet auf `/healthz` und `/readyz`, bevor diese Prüfung ausgeführt wird, sodass Health-Probes aus öffentlichen Bereichen sie nicht auslösen.

1061 1176 

1062Beide Signale verwenden die Client-Adresse, wie das Gateway sie auflöst. Wenn ein Load Balancer, Port-Forward oder Tunnel Datenverkehr weitergeleitet und nicht in `listen.trusted_proxies` aufgelistet ist, sieht das Gateway die Adresse des Relays, die normalerweise privat ist, sodass weder die Laufzeit-Warnung noch eine private Zulassungsliste Datenverkehr, der durch sie weitergeleitet wird, erfasst.1177Beide Signale verwenden die Client-Adresse, wie das Gateway sie auflöst. Wenn ein Load Balancer, Port-Forward oder Tunnel Datenverkehr weiterleitet und nicht in `listen.trusted_proxies` aufgelistet ist, sieht das Gateway die Adresse des Relays, die normalerweise privat ist, sodass weder die Laufzeit-Warnung noch eine private Zulassungsliste Datenverkehr erfasst, der durch es weitergeleitet wird.

1063 1178 

1064Hinter einem solchen Front-End setzen Sie zuerst [`listen.trusted_proxies`](#listen), damit das Gateway echte Client-Adressen sieht, und halten Sie das Gateway und alles davor unabhängig vom öffentlichen Internet unerreichbar.1179Hinter einem solchen Front-End setzen Sie zuerst [`listen.trusted_proxies`](#listen), damit das Gateway echte Client-Adressen sieht, und halten Sie das Gateway und alles davor in jedem Fall vom öffentlichen Internet aus unerreichbar.

1065 1180 

1066<h3 id="load_test_mode">1181<h3 id="load_test_mode">

1067 `load_test_mode`1182 `load_test_mode`

1068</h3>1183</h3>

1069 1184 

1070Der `load_test_mode`-Block ermöglicht es Ihnen, ein Gateway zu laden, ohne einen Modell-Anbieter aufzurufen. Während es aktiviert ist, erstellt das Gateway jede Anbieter-Anfrage wie gewohnt, verwirft sie statt sie zu senden, und streamt eine vorgefertigte Antwort durch seinen normalen Antwortpfad zurück. Die Antwort ist Fülltext, der mit einem Satz beginnt, der besagt, dass er vorgefertigt ist.1185Mit dem `load_test_mode`-Block können Sie ein Gateway einem Lasttest unterziehen, ohne einen Modellanbieter aufzurufen. Während er aktiviert ist, erstellt und signiert das Gateway jede Anbieter-Anfrage wie gewohnt, verwirft sie, statt sie zu senden, und streamt eine vorgefertigte Antwort durch seinen normalen Antwortpfad zurück. Die Antwort ist Fülltext, der mit einem Satz beginnt, der besagt, dass sie vorgefertigt ist.

1071 1186 

1072Erfordert Claude Code v2.1.282 oder später auf dem Gateway-Server. Ein früheres Gateway weigert sich zu starten, wenn es den Schlüssel findet. Aktualisieren Sie jedes Replikat, bevor Sie den Block hinzufügen, und entfernen Sie den Block, bevor Sie zurückrollen.1187Erfordert Claude Code v2.1.282 oder später auf dem Gateway-Server. Ein früheres Gateway weigert sich zu starten, wenn es den Schlüssel findet. Aktualisieren Sie jedes Replikat, bevor Sie den Block hinzufügen, und entfernen Sie den Block, bevor Sie zurückrollen.

1073 1188 

1074Das Beispiel unten schaltet den Modus mit den Standardwerten ein, eine Antwort von ungefähr 750 Token Text, die über etwa 10 Sekunden gestreamt werden:1189Das Beispiel unten schaltet den Modus mit den Standardwerten ein, einer Antwort von ungefähr 750 Token Text, die über etwa 10 Sekunden gestreamt wird:

1075 1190 

1076```yaml theme={null}1191```yaml theme={null}

1077load_test_mode:1192load_test_mode:


1082 1197 

1083| Feld | Erforderlich | Beschreibung |1198| Feld | Erforderlich | Beschreibung |

1084| - | - | - |1199| - | - | - |

1085| `enabled` | Ja | `true` schaltet den Modus ein. `false` behält Ihre Zahlen in der Datei mit dem Modus aus. Das Gateway weigert sich zu starten, wenn der Block vorhanden ist, ohne ihn. |1200| `enabled` | Ja | `true` schaltet den Modus ein. `false` behält Ihre Zahlen in der Datei bei ausgeschaltetem Modus. Das Gateway weigert sich zu starten, wenn der Block ohne dieses Feld vorhanden ist. |

1086| `reply_tokens` | Nein | Standard `750`. Ungefähr wie viele Token Text jede vorgefertigte Antwort trägt, eine ganze Zahl von 1 bis 100.000. |1201| `reply_tokens` | Nein | Standard `750`. Ungefähr wie viele Token Text jede vorgefertigte Antwort trägt, eine ganze Zahl von 1 bis 100.000. |

1087| `reply_seconds` | Nein | Standard `9.5`. Wie lange eine gestreamte Antwort dauert, von 0 bis 600. `0` sendet die ganze Antwort auf einmal. Eine Antwort auf eine nicht-gestreamte Anfrage kommt immer auf einmal zurück. |1202| `reply_seconds` | Nein | Standard `9.5`. Wie lange eine gestreamte Antwort dauert, von 0 bis 600. `0` sendet die ganze Antwort auf einmal. Eine Antwort auf eine nicht-streamende Anfrage kommt immer auf einmal zurück. |

1088 1203 

1089Ein Lasttest in diesem Modus deckt das Gateway, Ihre Postgres und alles vor dem Gateway ab. Es deckt die Grenzen, Geschwindigkeit oder den Netzwerkpfad des Anbieters nicht ab.1204Ein Lasttest in diesem Modus deckt das Gateway, Ihre Postgres-Datenbank und alles vor dem Gateway ab. Er deckt die Limits, die Geschwindigkeit oder den Netzwerkpfad des Anbieters nicht ab.

1090 1205 

1091Keine Modell-Anfrage wird an den Anbieter gesendet, daher ist die CPU pro Anfrage eines Replikats eine Schätzung und liest niedriger als Produktion, die auch ihren Datenverkehr zum Anbieter verschlüsselt. Bestätigen Sie eine Replikat-Anzahl mit einem kleinen Piloten gegen den echten Anbieter. Vor v2.1.283 liest die Schätzung viel niedriger.1206Es wird keine Modell-Anfrage an den Anbieter gesendet, daher ist die CPU pro Anfrage eines Replikats eine Schätzung und fällt niedriger aus als in der Produktion, die ihren Datenverkehr zum Anbieter zusätzlich verschlüsselt. Bestätigen Sie eine Replikat-Anzahl mit einem kleinen Pilotversuch gegen den echten Anbieter. Vor v2.1.283 fällt die Schätzung deutlich niedriger aus.

1092 1207 

1093Während der Modus aktiviert ist, kann eine Anfrage einen `x-load-test-user`-Header tragen, der eine ganze Zahl von bis zu sieben Ziffern hält. Das Gateway zählt jede Zahl als einen separaten Entwickler mit der E-Mail und den Gruppen des Entwicklers, dessen Token mit der Anfrage kam.1208Während der Modus aktiviert ist, kann eine Anfrage einen `x-load-test-user`-Header tragen, der eine ganze Zahl mit bis zu sieben Ziffern enthält. Das Gateway zählt jede Zahl als separaten Entwickler, mit der E-Mail und den Gruppen des Entwicklers, dessen Token mit der Anfrage kam.

1094 1209 

1095Geben Sie der Load-Test-Bereitstellung ihre eigene leere Datenbank, da das Gateway sich weigert zu starten, wenn der Modus gegen eine Datenbank aktiviert ist, in der ein Entwickler bereits etwas ausgegeben hat.1210Geben Sie der Lasttest-Bereitstellung ihre eigene leere Datenbank, da das Gateway sich weigert, mit aktiviertem Modus gegen eine Datenbank zu starten, in der ein Entwickler bereits etwas ausgegeben hat.

1096 1211 

1097<Warning>1212<Warning>

1098 Schalten Sie dies niemals für ein Gateway ein, das Entwickler verwenden. Jede Anfrage erhält die vorgefertigte Antwort und kein Modell wird aufgerufen. Das Gateway protokolliert eine `load_test_mode is on`-Warnung beim Start und markiert jedes `inference`-[Audit-Ereignis](/docs/de/claude-apps-gateway-deploy#logs) mit `load_test: true`, während der Modus aktiviert ist.1213 Schalten Sie dies niemals für ein Gateway ein, das Entwickler verwenden. Jede Anfrage erhält die vorgefertigte Antwort und kein Modell wird aufgerufen. Das Gateway protokolliert beim Start eine `load_test_mode is on`-Warnung und markiert jedes `inference`-[Audit-Ereignis](/docs/de/claude-apps-gateway-deploy#logs) mit `load_test: true`, während der Modus aktiviert ist.

1099</Warning>1214</Warning>

1100 1215 

1101<h2 id="complete-example">1216<h2 id="complete-example">


1150 postgres_url: ${GATEWAY_POSTGRES_URL}1265 postgres_url: ${GATEWAY_POSTGRES_URL}

1151 # max_connections: 51266 # max_connections: 5

1152 # connect_timeout_seconds: 51267 # connect_timeout_seconds: 5

1268 # readiness_grace_seconds: 300 # die Readiness-Prüfung während eines Datenbank-Failovers weiterhin bestehen

1153 1269 

1154# Aktiviert /v1/organizations/spend_limits (spiegelt die Anthropic Admin API)1270# Aktiviert /v1/organizations/spend_limits (spiegelt die Anthropic Admin API)

1155# und Pro-Entwickler-Ausgabendurchsetzung auf /v1/messages. Lassen Sie weg, um zu deaktivieren.1271# und Pro-Entwickler-Ausgabendurchsetzung auf /v1/messages. Lassen Sie weg, um zu deaktivieren.


1271 1387 

1272`parentSettingsBehavior: "merge"` behält Claude Desktop's Bereitstellung der Egress-Allowlist für seine eingebetteten Claude Code-Sitzungen bei; [Richtlinie für Claude Desktop-Sitzungen bereitstellen](/docs/de/claude-apps-gateway#deliver-policy-to-claude-desktop-sessions) erklärt den Mechanismus und wo sich die Opt-in befinden muss.1388`parentSettingsBehavior: "merge"` behält Claude Desktop's Bereitstellung der Egress-Allowlist für seine eingebetteten Claude Code-Sitzungen bei; [Richtlinie für Claude Desktop-Sitzungen bereitstellen](/docs/de/claude-apps-gateway#deliver-policy-to-claude-desktop-sessions) erklärt den Mechanismus und wo sich die Opt-in befinden muss.

1273 1389 

1390Um zu verhindern, dass Entwickler das Gateway mit einer Cloud-Anbieter-Variable oder einer eigenen `ANTHROPIC_BASE_URL` umgehen, fügen Sie `"allowedProviders": ["gateway"]` zur selben Datei hinzu. Claude Code lehnt dann jede Sitzung auf dem Computer ab, die nicht für ein Cloud-Gateway eingerichtet ist, und lässt ein Gateway nur zu, wenn es dasjenige ist, das `forceLoginGatewayUrl` angibt, oder eines, dessen URL der `env`-Block der Datei als `ANTHROPIC_BASE_URL` setzt. `claude gateway` verweigert die Ausführung auf einem Computer, der die Liste setzt, halten Sie den Schlüssel daher vom Gateway-Host fern. Siehe den Eintrag [`allowedProviders`](/docs/de/settings-reference#allowedproviders) in der Einstellungsreferenz. Erfordert Claude Code v2.1.285 oder höher.

1391 

1274Stellen Sie die `managed-settings.json`-Datei auf jedem Gerät bereit, typischerweise über Ihre MDM-Plattform. Der Dateipfad unterscheidet sich je nach Plattform. Siehe [wo jeder Mechanismus die Richtlinie speichert](/docs/de/managed-settings#where-each-mechanism-stores-the-policy).1392Stellen Sie die `managed-settings.json`-Datei auf jedem Gerät bereit, typischerweise über Ihre MDM-Plattform. Der Dateipfad unterscheidet sich je nach Plattform. Siehe [wo jeder Mechanismus die Richtlinie speichert](/docs/de/managed-settings#where-each-mechanism-stores-the-policy).

1275 1393 

1276Standardmäßig ersetzt eine Registrierungsrichtlinie unter Windows oder ein verwaltetes Preferences-Plist unter macOS die `managed-settings.json`-Datei, anstatt sie damit zu zusammenzuführen, mit Ausnahme der [Ausnahmeschlüssel und quellenübergreifenden Überprüfungen oben](#precedence-with-other-managed-sources). Alle drei Schlüssel in diesem Snippet folgen der Regel mit der höchsten Prioritätsquelle, daher müssen Flotten, die Richtlinien über Gruppenrichtlinien oder Konfigurationsprofile bereitstellen, alle drei stattdessen in diesem Mechanismus platzieren.1394Standardmäßig ersetzt eine Registrierungsrichtlinie unter Windows oder ein verwaltetes Preferences-Plist unter macOS die `managed-settings.json`-Datei, anstatt sie damit zu zusammenzuführen, mit Ausnahme der [Ausnahmeschlüssel und quellenübergreifenden Überprüfungen oben](#precedence-with-other-managed-sources). Alle drei Schlüssel in diesem Snippet folgen der Regel mit der höchsten Prioritätsquelle, daher müssen Flotten, die Richtlinien über Gruppenrichtlinien oder Konfigurationsprofile bereitstellen, alle drei stattdessen in diesem Mechanismus platzieren.

1277 1395 

1278Für Claude Desktop setzen Sie den `bootstrapUrl`-Schlüssel in Claude Desktop's eigene [verwaltete Konfiguration](https://claude.com/docs/third-party/claude-desktop/configuration) auf `<listen.public_url>/user/bootstrap`. Der Anmeldungsfluss und die Pro-Gruppen-Richtlinie entsprechen dann der CLI's, sobald eine Richtlinie sich serverseitig mit einem `desktop`-Schlüssel anmeldet; ohne die Anmeldung gibt `/user/bootstrap` 404 zurück. Siehe [Claude Desktop-Overlay](#claude-desktop-overlay) für die serverseitige Hälfte.1396Für Claude Desktop setzen Sie den `bootstrapUrl`-Schlüssel in Claude Desktop's eigene [verwaltete Konfiguration](https://claude.com/docs/third-party/claude-desktop/configuration) auf `<listen.public_url>/user/bootstrap`. Der Anmeldungsfluss und die Pro-Gruppen-Richtlinie entsprechen dann der CLI's, sobald eine Richtlinie sich serverseitig mit einem `desktop`-Schlüssel anmeldet; ohne die Anmeldung gibt `/user/bootstrap` 404 zurück. Siehe [Claude Desktop-Overlay](#claude-desktop-overlay) für die serverseitige Hälfte.

1279 1397 

1280Claude Code ehrt [`forceLoginGatewayUrl`](/docs/de/settings-reference#forcelogingatewayurl), [`gatewayInternalNetworks`](/docs/de/settings-reference#gatewayinternalnetworks) und den `"gateway"`-Wert von [`forceLoginMethod`](/docs/de/settings-reference#forceloginmethod) nur von einer verwalteten Quelle auf dem Computer: `managed-settings.json`, das macOS-Plist oder die Windows HKLM-Registrierung, oder ein Richtlinien-Helper. Ein Entwickler, der sie in seiner eigenen `~/.claude/settings.json` setzt, hat keine Auswirkung, und das Setzen im Gateway-Payload auch nicht.1398Claude Code berücksichtigt [`forceLoginGatewayUrl`](/docs/de/settings-reference#forcelogingatewayurl), [`gatewayInternalNetworks`](/docs/de/settings-reference#gatewayinternalnetworks) und den `"gateway"`-Wert von [`forceLoginMethod`](/docs/de/settings-reference#forceloginmethod) nur von einer verwalteten Quelle auf dem Computer: `managed-settings.json`, das macOS-Plist oder die Windows HKLM-Registrierung, oder ein Richtlinien-Helper. Das Setzen dieser Schlüssel in der eigenen `~/.claude/settings.json` eines Entwicklers oder in der Gateway-Payload konfiguriert die Gateway-Anmeldung nicht.

1399 

1400Lassen Sie `forceLoginMethod` und `forceLoginOrgUUID` aus der Payload heraus. Claude Code liest beide Schlüssel für seine Überprüfung der Anmeldedaten beim Start weiterhin aus der Payload, sodass ein Entwickler, der von Anthropic ausgestellte Anmeldedaten auf dem Computer behält, auch nach der Anmeldung den unter [Administratorrichtlinie erfordert eine Cloud-Gateway-Anmeldung](/docs/de/errors#administrator-policy-requires-a-cloud-gateway-sign-in) beschriebenen Abbruch beim Start erhält.

1281 1401 

1282<h2 id="related">1402<h2 id="related">

1283 Verwandt1403 Verwandt

cli-reference.md +16 −8

Details

10 CLI-Befehle10 CLI-Befehle

11</h2>11</h2>

12 12 

13Sie können Sitzungen starten, Inhalte weiterleiten, Gespräche fortsetzen und Updates verwalten mit diesen Befehlen:13Sie können Sitzungen starten, Inhalte weiterleiten, Konversationen fortsetzen und Updates verwalten mit diesen Befehlen:

14 14 

15| Befehl | Beschreibung | Beispiel |15| Befehl | Beschreibung | Beispiel |

16| :- | :- | :- |16| :- | :- | :- |


26| `claude install [version]` | Installieren oder neu installieren Sie die native Binärdatei. Akzeptiert eine Version wie `2.1.118`, oder `stable` oder `latest`. Siehe [Installieren Sie eine bestimmte Version](/docs/de/setup#install-a-specific-version) | `claude install stable` |26| `claude install [version]` | Installieren oder neu installieren Sie die native Binärdatei. Akzeptiert eine Version wie `2.1.118`, oder `stable` oder `latest`. Siehe [Installieren Sie eine bestimmte Version](/docs/de/setup#install-a-specific-version) | `claude install stable` |

27| `claude auth login` | Melden Sie sich bei Ihrem Anthropic-Konto an. Verwenden Sie `--email`, um Ihre E-Mail-Adresse vorauszufüllen, `--sso`, um SSO-Authentifizierung zu erzwingen, und `--console`, um sich mit der Anthropic Console für API-Nutzungsabrechnung anstelle eines Claude-Abonnements anzumelden | `claude auth login --console` |27| `claude auth login` | Melden Sie sich bei Ihrem Anthropic-Konto an. Verwenden Sie `--email`, um Ihre E-Mail-Adresse vorauszufüllen, `--sso`, um SSO-Authentifizierung zu erzwingen, und `--console`, um sich mit der Anthropic Console für API-Nutzungsabrechnung anstelle eines Claude-Abonnements anzumelden | `claude auth login --console` |

28| `claude auth logout` | Abmelden von Ihrem Anthropic-Konto | `claude auth logout` |28| `claude auth logout` | Abmelden von Ihrem Anthropic-Konto | `claude auth logout` |

29| `claude auth status` | Authentifizierungsstatus als JSON anzeigen. Verwenden Sie `--text` für benutzerfreundliche Ausgabe. Beendet mit Code 0, wenn angemeldet, 1, wenn nicht. Die JSON enthält ein `configDirectory` Feld, das das [Konfigurationsverzeichnis](/docs/de/claude-directory) benennt, das die CLI verwendet. Das Feld erfordert Claude Code v2.1.268 oder später | `claude auth status` |29| `claude auth status` | Authentifizierungsstatus als JSON anzeigen. Verwenden Sie `--text` für benutzerfreundliche Ausgabe. Beendet mit Code 0, wenn angemeldet, 1, wenn nicht. Die JSON enthält ein `configDirectory` Feld, das das [Konfigurationsverzeichnis](/docs/de/claude-directory) benennt, das die CLI verwendet. Das Feld erfordert Claude Code v2.1.268 oder später. Das Feld `authMethod` im JSON hat einen der Werte `none`, `claude.ai`, `oauth_token`, `api_key`, `api_key_helper` oder `third_party` | `claude auth status` |

30| `claude agents` | Öffnen Sie die [Agent-Ansicht](/docs/de/agent-view), um parallele Hintergrundsitzungen zu überwachen und zu versenden. Verwenden Sie `--cwd <path>`, um nur Sitzungen anzuzeigen, die in diesem Verzeichnis gestartet wurden, oder `--json`, um Live-Sitzungen als JSON-Array zum Scripting auszugeben (`--json --all` schließt auch abgeschlossene Hintergrundsitzungen ein). Übergeben Sie `--permission-mode`, `--model`, `--effort` oder `--agent`, um [Standardwerte für versendete Sitzungen](/docs/de/agent-view#permission-mode-model-and-effort) festzulegen. Akzeptiert `--settings`, `--add-dir`, `--plugin-dir` und `--mcp-config` wie der oberste `claude`-Befehl. Das Öffnen der Agent-Ansicht erfordert ein interaktives Terminal | `claude agents --json` |30| `claude agents` | Öffnen Sie die [Agent-Ansicht](/docs/de/agent-view), um parallele Hintergrundsitzungen zu überwachen und zu versenden. Verwenden Sie `--cwd <path>`, um nur Sitzungen anzuzeigen, die in diesem Verzeichnis gestartet wurden, oder `--json`, um aktive Sitzungen als JSON-Array zum Scripting auszugeben (`--json --all` schließt auch abgeschlossene Hintergrundsitzungen ein). Übergeben Sie `--permission-mode`, `--model`, `--effort` oder `--agent`, um [Standardwerte für versendete Sitzungen](/docs/de/agent-view#permission-mode-model-and-effort) festzulegen. Akzeptiert `--settings`, `--add-dir`, `--plugin-dir` und `--mcp-config` wie der oberste `claude`-Befehl. Das Öffnen der Agent-Ansicht erfordert ein interaktives Terminal | `claude agents --json` |

31| `claude attach <id>` | Verbinden Sie sich mit einer [Hintergrundsitzung](/docs/de/agent-view#manage-sessions-from-the-shell) in diesem Terminal | `claude attach 7c5dcf5d` |31| `claude attach <id>` | Verbinden Sie sich mit einer [Hintergrundsitzung](/docs/de/agent-view#manage-sessions-from-the-shell) in diesem Terminal | `claude attach 7c5dcf5d` |

32| `claude auto-mode defaults` | Drucken Sie die integrierten [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) Klassifiziererregeln als JSON. Verwenden Sie `claude auto-mode config`, um Ihre effektive Konfiguration mit angewendeten Einstellungen anzuzeigen. `--label <prefix>` druckt nur die Regeln, deren Bezeichnung mit diesem Präfix beginnt, Groß- und Kleinschreibung wird nicht beachtet. Erfordert Claude Code v2.1.208 oder später | `claude auto-mode defaults --label 'Git Destructive'` |32| `claude auto-mode defaults` | Drucken Sie die integrierten [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) Klassifikatorregeln als JSON. Verwenden Sie `claude auto-mode config`, um Ihre effektive Konfiguration mit angewendeten Einstellungen anzuzeigen. `--label <prefix>` druckt nur die Regeln, deren Bezeichnung mit diesem Präfix beginnt, Groß- und Kleinschreibung wird nicht beachtet. Erfordert Claude Code v2.1.208 oder später | `claude auto-mode defaults --label 'Git Destructive'` |

33| `claude auto-mode reset` | Stellen Sie die Standard-[Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) Konfiguration wieder her, indem Sie den `autoMode` Abschnitt aus Ihrer Benutzereinstellungsdatei entfernen. Fordert zur Bestätigung auf, bevor geschrieben wird; übergeben Sie `-y`/`--yes`, um die Eingabeaufforderung zu überspringen. Regeln aus [verwalteten Einstellungen](/docs/de/server-managed-settings) oder dem `--settings` Flag gelten weiterhin. Erfordert Claude Code v2.1.212 oder später. Siehe [Überprüfen Sie die Standardwerte und Ihre effektive Konfiguration](/docs/de/auto-mode-config#inspect-the-defaults-and-your-effective-config) | `claude auto-mode reset --yes` |33| `claude auto-mode reset` | Stellen Sie die Standard-[Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) Konfiguration wieder her, indem Sie den `autoMode` Abschnitt aus Ihrer Benutzereinstellungsdatei entfernen. Fordert zur Bestätigung auf, bevor geschrieben wird; übergeben Sie `-y`/`--yes`, um die Eingabeaufforderung zu überspringen. Regeln aus [verwalteten Einstellungen](/docs/de/server-managed-settings) oder dem `--settings` Flag gelten weiterhin. Erfordert Claude Code v2.1.212 oder später. Siehe [Überprüfen Sie die Standardwerte und Ihre effektive Konfiguration](/docs/de/auto-mode-config#inspect-the-defaults-and-your-effective-config) | `claude auto-mode reset --yes` |

34| `claude daemon status` | Drucken Sie den Hintergrund-Sitzungs-[Supervisor](/docs/de/agent-view#the-supervisor-process) Status, Version, Socket-Verzeichnis und Worker-Anzahl für Diagnosen. Beendet mit 1, wenn der Supervisor nicht läuft | `claude daemon status` |34| `claude daemon status` | Drucken Sie den Hintergrund-Sitzungs-[Supervisor](/docs/de/agent-view#the-supervisor-process) Status, Version, Socket-Verzeichnis und Worker-Anzahl für Diagnosen. Beendet mit 1, wenn der Supervisor nicht läuft | `claude daemon status` |

35| `claude daemon stop --any` | Stoppen Sie den Hintergrund-Sitzungs-[Supervisor](/docs/de/agent-view#the-supervisor-process) und die Sitzungen, die er hostet. Übergeben Sie `--keep-workers`, um Hintergrundsitzungen laufen zu lassen, damit sich der nächste Supervisor mit ihnen verbindet. `--any` bestätigt das Stoppen eines On-Demand-Supervisors, was die Standardeinstellung ist. Verwenden Sie dies, um sich von einem [nicht reagierenden Supervisor](/docs/de/agent-view#agent-view-says-the-background-service-did-not-respond) zu erholen | `claude daemon stop --any --keep-workers` |35| `claude daemon stop --any` | Stoppen Sie den Hintergrund-Sitzungs-[Supervisor](/docs/de/agent-view#the-supervisor-process) und die Sitzungen, die er hostet. Übergeben Sie `--keep-workers`, um Hintergrundsitzungen laufen zu lassen, damit sich der nächste Supervisor mit ihnen verbindet. `--any` bestätigt das Stoppen eines On-Demand-Supervisors, was die Standardeinstellung ist. Verwenden Sie dies, um sich von einem [nicht reagierenden Supervisor](/docs/de/agent-view#agent-view-says-the-background-service-did-not-respond) zu erholen | `claude daemon stop --any --keep-workers` |


37| `claude import [source]` | Starten Sie eine interaktive Sitzung, die [`/import`](/docs/de/commands#all-commands) ausführt, um Konfiguration von anderen Coding-Agenten in Claude Code zu bringen. Akzeptiert die gleichen `--dry-run` und `--yes` Optionen wie der Befehl. Nicht verfügbar auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder Claude Platform auf AWS. Auch nicht verfügbar, wenn Sie [Feature-Flag-Abruf](/docs/de/env-vars#features-that-need-feature-flag-fetching) deaktivieren. Erfordert Claude Code v2.1.213 oder später | `claude import codex --dry-run` |37| `claude import [source]` | Starten Sie eine interaktive Sitzung, die [`/import`](/docs/de/commands#all-commands) ausführt, um Konfiguration von anderen Coding-Agenten in Claude Code zu bringen. Akzeptiert die gleichen `--dry-run` und `--yes` Optionen wie der Befehl. Nicht verfügbar auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder Claude Platform auf AWS. Auch nicht verfügbar, wenn Sie [Feature-Flag-Abruf](/docs/de/env-vars#features-that-need-feature-flag-fetching) deaktivieren. Erfordert Claude Code v2.1.213 oder später | `claude import codex --dry-run` |

38| `claude logs <id>` | Drucken Sie die aktuelle Ausgabe aus einer [Hintergrundsitzung](/docs/de/agent-view#manage-sessions-from-the-shell) | `claude logs 7c5dcf5d` |38| `claude logs <id>` | Drucken Sie die aktuelle Ausgabe aus einer [Hintergrundsitzung](/docs/de/agent-view#manage-sessions-from-the-shell) | `claude logs 7c5dcf5d` |

39| `claude mcp` | Model Context Protocol (MCP) Server konfigurieren | Siehe die [Claude Code MCP-Dokumentation](/docs/de/mcp). |39| `claude mcp` | Model Context Protocol (MCP) Server konfigurieren | Siehe die [Claude Code MCP-Dokumentation](/docs/de/mcp). |

40| `claude mcp login <name>` | Führen Sie den OAuth-Fluss eines konfigurierten MCP-Servers aus, ohne das interaktive `/mcp`-Panel zu öffnen. Funktioniert für HTTP-, SSE- und claude.ai-Connector-Server. Fügen Sie `--no-browser` über SSH hinzu, um die Autorisierungs-URL auszudrucken, anstatt einen Browser zu öffnen, und fügen Sie dann die Umleitungs-URL an der Eingabeaufforderung ein. Siehe [Authentifizierung über die Befehlszeile](/docs/de/mcp#authenticate-from-the-command-line) | `claude mcp login sentry` |40| `claude mcp login <name>` | Führen Sie den OAuth-Fluss eines konfigurierten MCP-Servers aus, ohne das interaktive `/mcp`-Panel zu öffnen. Funktioniert für HTTP-, SSE- und claude.ai-Konnektor-Server. Fügen Sie `--no-browser` über SSH hinzu, um die Autorisierungs-URL auszudrucken, anstatt einen Browser zu öffnen, und fügen Sie dann die Umleitungs-URL an der Eingabeaufforderung ein. Siehe [Authentifizierung über die Befehlszeile](/docs/de/mcp#authenticate-from-the-command-line) | `claude mcp login sentry` |

41| `claude mcp logout <name>` | Löschen Sie gespeicherte OAuth-Anmeldedaten für einen MCP-Server | `claude mcp logout sentry` |41| `claude mcp logout <name>` | Löschen Sie gespeicherte OAuth-Anmeldedaten für einen MCP-Server | `claude mcp logout sentry` |

42| `claude plugin` | Verwalten Sie Claude Code [Plugins](/docs/de/plugins/overview). Alias: `claude plugins`. Siehe [Plugin-Referenz](/docs/de/plugins/cli-reference#claude-plugin-commands) für Unterbefehle | `claude plugin install code-review@claude-plugins-official` |42| `claude plugin` | Verwalten Sie Claude Code [Plugins](/docs/de/plugins/overview). Alias: `claude plugins`. Siehe [Plugin-Referenz](/docs/de/plugins/cli-reference#claude-plugin-commands) für Unterbefehle | `claude plugin install code-review@claude-plugins-official` |

43| `claude project purge [path]` | Löschen Sie alle lokalen Claude Code-Status für ein Projekt: Transkripte, Aufgabenlisten, Debug-Protokolle, Datei-Bearbeitungsverlauf, Prompt-Verlaufszeilen und den Projekteintrag in `~/.claude.json`. Lassen Sie `[path]` weg, um aus einer interaktiven Liste auszuwählen. Flags: `--dry-run` zum Vorschau, `-y`/`--yes` zum Überspringen der Bestätigung, `-i`/`--interactive` zum Bestätigen jedes Elements, `--all` für jedes Projekt. Siehe [Lokale Daten löschen](/docs/de/claude-directory#clear-local-data) | `claude project purge ~/work/repo --dry-run` |43| `claude project purge [path]` | Löschen Sie alle lokalen Claude Code-Status für ein Projekt: Transkripte, Aufgabenlisten, Debug-Logs, Datei-Bearbeitungsverlauf, Prompt-Verlaufszeilen und den Projekteintrag in `~/.claude.json`. Lassen Sie `[path]` weg, um aus einer interaktiven Liste auszuwählen. Flags: `--dry-run` zum Vorschau, `-y`/`--yes` zum Überspringen der Bestätigung, `-i`/`--interactive` zum Bestätigen jedes Elements, `--all` für jedes Projekt. Siehe [Lokale Daten löschen](/docs/de/claude-directory#clear-local-data) | `claude project purge ~/work/repo --dry-run` |

44| `claude remote-control` | Starten Sie einen [Remote Control](/docs/de/remote-control) Server, um Claude Code von Claude.ai oder der Claude App zu steuern. Läuft im Server-Modus (keine lokale interaktive Sitzung). Siehe [Server-Modus-Flags](/docs/de/remote-control#start-a-remote-control-session). Nach dem Stoppen des Servers können Sie die Sitzungen, die er bedient hat, zurückbringen. Siehe [Sitzungen nach dem Stoppen des Servers fortsetzen](/docs/de/remote-control#resume-sessions-after-stopping-the-server) | `claude remote-control --name "My Project"` |44| `claude remote-control` | Starten Sie einen [Remote Control](/docs/de/remote-control) Server, um Claude Code von Claude.ai oder der Claude App zu steuern. Läuft im Server-Modus (keine lokale interaktive Sitzung). Siehe [Server-Modus-Flags](/docs/de/remote-control#start-a-remote-control-session). Nach dem Stoppen des Servers können Sie die Sitzungen, die er bedient hat, zurückbringen. Siehe [Sitzungen nach dem Stoppen des Servers fortsetzen](/docs/de/remote-control#resume-sessions-after-stopping-the-server) | `claude remote-control --name "My Project"` |

45| `claude respawn <id>` | Starten Sie eine [Hintergrundsitzung](/docs/de/agent-view#manage-sessions-from-the-shell) neu, ob laufend oder gestoppt, mit ihrer Konversation intakt. Verwenden Sie `--all`, um jede laufende Sitzung neu zu starten, z. B. um eine aktualisierte Claude Code Binärdatei zu verwenden | `claude respawn 7c5dcf5d` |45| `claude respawn <id>` | Starten Sie eine [Hintergrundsitzung](/docs/de/agent-view#manage-sessions-from-the-shell) neu, ob laufend oder gestoppt, mit ihrer Konversation intakt. Verwenden Sie `--all`, um jede laufende Sitzung neu zu starten, z. B. um eine aktualisierte Claude Code Binärdatei zu verwenden | `claude respawn 7c5dcf5d` |

46| `claude rm <id>` | Entfernen Sie eine [Hintergrundsitzung](/docs/de/agent-view#manage-sessions-from-the-shell) aus der Liste. Wenn die Entfernung [über das Worktree der Sitzung abgelehnt wird](/docs/de/agent-view#what-deleting-a-session-removes) und ein zweites `claude rm` kann es beheben, gibt die Ablehnung das genaue Flag und den Wert aus, die übergeben werden sollen: `--discard-unpushed <commit>@<worktree-id>` verwirft ein Worktree, das nicht gepushte Commits zusammen mit diesen Commits hat, und `--force-remove-worktree <worktree-id>` löscht ein Worktree-Verzeichnis, das git oder der `WorktreeRemove` Hook nicht entfernen konnte. `--discard-unpushed` erfordert Claude Code v2.1.260 oder später, und `--force-remove-worktree` erfordert v2.1.268 oder später. Das Konversationstranskript bleibt auf Ihrem lokalen Computer erhalten und ist über `claude --resume` verfügbar | `claude rm 7c5dcf5d` |46| `claude rm <id>` | Entfernen Sie eine [Hintergrundsitzung](/docs/de/agent-view#manage-sessions-from-the-shell) aus der Liste. Wenn die Entfernung [über das Worktree der Sitzung abgelehnt wird](/docs/de/agent-view#what-deleting-a-session-removes) und ein zweites `claude rm` kann es beheben, gibt die Ablehnung das genaue Flag und den Wert aus, die übergeben werden sollen: `--discard-unpushed <commit>@<worktree-id>` verwirft ein Worktree, das nicht gepushte Commits zusammen mit diesen Commits hat, und `--force-remove-worktree <worktree-id>` löscht ein Worktree-Verzeichnis, das git oder der `WorktreeRemove` Hook nicht entfernen konnte. `--discard-unpushed` erfordert Claude Code v2.1.260 oder später, und `--force-remove-worktree` erfordert v2.1.268 oder später. Das Konversationstranskript bleibt auf Ihrem lokalen Computer erhalten und ist über `claude --resume` verfügbar | `claude rm 7c5dcf5d` |

47| `claude self-hosted-runner` | Starten Sie einen Runner-Prozess, der diese Maschine oder diesen Container bei einer [selbstgehosteten Umgebung](/docs/de/self-hosted-environments) registriert und Claude Code Cloud-Sitzungen auf Ihrer Infrastruktur hostet. Führen Sie `claude self-hosted-runner setup` für eine geführte Operator-Anleitung aus, `claude self-hosted-runner doctor`, um [einen bereitgestellten Runner zu diagnostizieren](/docs/de/self-hosted-environments-deploy#troubleshooting), und `claude self-hosted-runner orchestrator`, um [On-Demand-Runner](/docs/de/self-hosted-environments-configuration#on-demand-runners) zu spawnen. Erfordert Claude Code v2.1.224 oder später | `claude self-hosted-runner setup` |47| `claude self-hosted-runner` | Starten Sie einen Runner-Prozess, der diese Maschine oder diesen Container bei einer [selbstgehosteten Umgebung](/docs/de/self-hosted-environments) registriert und Claude Code Cloud-Sitzungen auf Ihrer Infrastruktur hostet. Führen Sie `claude self-hosted-runner setup` für eine geführte Operator-Anleitung aus, `claude self-hosted-runner doctor`, um [einen bereitgestellten Runner zu diagnostizieren](/docs/de/self-hosted-environments-deploy#troubleshooting), und `claude self-hosted-runner orchestrator`, um [On-Demand-Runner](/docs/de/self-hosted-environments-configuration#on-demand-runners) zu spawnen. Erfordert Claude Code v2.1.224 oder später | `claude self-hosted-runner setup` |

48| `claude setup-token` | Generieren Sie ein langlebiges OAuth-Token für CI und Skripte. Gibt das Token auf dem Terminal aus, ohne es zu speichern. Erfordert ein Claude-Abonnement. Siehe [Generieren Sie ein langlebiges Token](/docs/de/authentication#generate-a-long-lived-token) | `claude setup-token` |48| `claude setup-token` | Generieren Sie ein langlebiges OAuth-Token für CI und Skripte. Gibt das Token auf dem Terminal aus, ohne es zu speichern. Erfordert ein Claude-Abonnement. Siehe [Generieren Sie ein langlebiges Token](/docs/de/authentication#generate-a-long-lived-token) | `claude setup-token` |

49| `claude stop <id>` | Stoppen Sie eine [Hintergrundsitzung](/docs/de/agent-view#manage-sessions-from-the-shell). Akzeptiert auch `claude kill` | `claude stop 7c5dcf5d` |49| `claude stop <id>` | Stoppen Sie eine [Hintergrundsitzung](/docs/de/agent-view#manage-sessions-from-the-shell). Akzeptiert auch `claude kill` | `claude stop 7c5dcf5d` |

50| `claude ultrareview [target]` | Führen Sie [ultrareview](/docs/de/ultrareview#run-ultrareview-non-interactively) nicht interaktiv aus. Gibt Ergebnisse auf stdout aus und beendet sich mit 0 bei Erfolg oder 1 bei Fehler. Verwenden Sie `--json` für die rohe Nutzlast und `--timeout <minutes>`, um das 45-Minuten-Standard zu überschreiben. Verwenden Sie `--post` auf einem `github.com` Pull-Request-Ziel, um die fertigen Ergebnisse als einen einfachen Kommentar von Ihrem GitHub-Konto auf dem PR zu posten. `--no-post` ist die Standardeinstellung. `--post` und `--no-post` erfordern Claude Code v2.1.227 oder später. Siehe [Ergebnisse auf den Pull Request posten](/docs/de/ultrareview#post-findings-to-the-pull-request) | `claude ultrareview 1234 --json` |50| `claude ultrareview [target]` | Führen Sie [ultrareview](/docs/de/ultrareview#run-ultrareview-non-interactively) nicht interaktiv aus. Gibt Ergebnisse auf stdout aus und beendet sich mit 0 bei Erfolg oder 1 bei Fehler. Verwenden Sie `--json` für die rohe Payload und `--timeout <minutes>`, um das 45-Minuten-Standard zu überschreiben. Verwenden Sie `--post` auf einem `github.com` Pull-Request-Ziel, um die fertigen Ergebnisse als einen einfachen Kommentar von Ihrem GitHub-Konto auf dem PR zu posten. `--no-post` ist die Standardeinstellung. `--post` und `--no-post` erfordern Claude Code v2.1.227 oder später. Siehe [Ergebnisse auf den Pull Request posten](/docs/de/ultrareview#post-findings-to-the-pull-request) | `claude ultrareview 1234 --json` |

51 51 

52Wenn Sie einen Unterbefehl falsch eingeben, schlägt Claude Code die nächste Übereinstimmung vor und beendet sich, ohne eine Sitzung zu starten. Zum Beispiel gibt `claude udpate` `Did you mean claude update?` aus.52Wenn Sie einen Unterbefehl falsch eingeben, schlägt Claude Code die nächste Übereinstimmung vor und beendet sich, ohne eine Sitzung zu starten. Zum Beispiel gibt `claude udpate` `Did you mean claude update?` aus.

53 53 


156| `--append-system-prompt-file` | Hängt Dateiinhalte an den Standard-Prompt an | `claude --append-system-prompt-file ./style-rules.txt` |156| `--append-system-prompt-file` | Hängt Dateiinhalte an den Standard-Prompt an | `claude --append-system-prompt-file ./style-rules.txt` |

157| `--system-prompt-snapshot` | Mit `off` wird der Prompt bei jeder Anfrage neu erstellt. Mit `on`, dem Standard, wird ein aufgezeichneter Prompt wiederverwendet, wo [Aufzeichnung anwendbar ist](#system-prompt-flags-in-resumed-conversations) | `claude --append-system-prompt "Draft rules" --system-prompt-snapshot off` |157| `--system-prompt-snapshot` | Mit `off` wird der Prompt bei jeder Anfrage neu erstellt. Mit `on`, dem Standard, wird ein aufgezeichneter Prompt wiederverwendet, wo [Aufzeichnung anwendbar ist](#system-prompt-flags-in-resumed-conversations) | `claude --append-system-prompt "Draft rules" --system-prompt-snapshot off` |

158 158 

159`--system-prompt` und `--system-prompt-file` schließen sich gegenseitig aus. Die Append-Flags können mit einem der Ersetzungs-Flags kombiniert werden.159Sie können diese Flags kombinieren. Um den Standard-Prompt zu ersetzen und trotzdem Ihren eigenen Text anzuhängen, übergeben Sie `--append-system-prompt` oder `--append-system-prompt-file` zusammen mit `--system-prompt` oder `--system-prompt-file`. Ab Claude Code v2.1.283 können Sie ein Flag auch zusammen mit seiner eigenen Dateiform übergeben, etwa `--append-system-prompt` mit `--append-system-prompt-file`, und Claude Code verwendet beide.

160 

161Führen Sie beispielsweise Folgendes in Ihrer Shell aus, um sowohl einen Styleguide aus einer Datei als auch eine zusätzliche Anweisung anzuhängen:

162 

163```bash theme={null}

164claude -p --append-system-prompt-file ./style.md --append-system-prompt "Always reply in French" "Summarize README.md"

165```

166 

167Claude erhält den Standard-System-Prompt, gefolgt vom Inhalt von `style.md`, einer Leerzeile und dann `Always reply in French`. Der Dateiinhalt steht zuerst, auch wenn Sie `--append-system-prompt` vor `--append-system-prompt-file` übergeben.

160 168 

161Wenn der Ersetzungstext Anweisungen kombiniert, die bei jedem Lauf gleich sind, mit Kontext, der sich pro Lauf ändert, fügen Sie eine Zeile ein, die nur `__SYSTEM_PROMPT_DYNAMIC_BOUNDARY__` enthält, zwischen den Anweisungen und dem Kontext. Claude Code teilt den Prompt an der ersten solchen Zeile und entfernt diese Zeile, sodass der Teil darüber zwischengespeichert bleibt, während der Teil darunter sich ändert. Erfordert Claude Code v2.1.275 oder später. [Zwischenspeichern Sie den statischen Teil eines benutzerdefinierten Prompts](/docs/de/agent-sdk/modifying-system-prompts#cache-the-static-part-of-a-custom-prompt) listet die Konfigurationen auf, wo die Aufteilung anwendbar ist.169Wenn der Ersetzungstext Anweisungen kombiniert, die bei jedem Lauf gleich sind, mit Kontext, der sich pro Lauf ändert, fügen Sie eine Zeile ein, die nur `__SYSTEM_PROMPT_DYNAMIC_BOUNDARY__` enthält, zwischen den Anweisungen und dem Kontext. Claude Code teilt den Prompt an der ersten solchen Zeile und entfernt diese Zeile, sodass der Teil darüber zwischengespeichert bleibt, während der Teil darunter sich ändert. Erfordert Claude Code v2.1.275 oder später. [Zwischenspeichern Sie den statischen Teil eines benutzerdefinierten Prompts](/docs/de/agent-sdk/modifying-system-prompts#cache-the-static-part-of-a-custom-prompt) listet die Konfigurationen auf, wo die Aufteilung anwendbar ist.

162 170 

code-review.md +1 −3

Details

433 Ultrareview erfordert Authentifizierung mit einem claude.ai Konto und ist nicht auf Amazon Bedrock, Google Cloud's Agent Platform oder Microsoft Foundry verfügbar, oder für Organisationen mit Zero Data Retention aktiviert. Wenn Ultrareview nicht verfügbar ist, führt `/code-review ultra` stattdessen eine lokale Überprüfung in Ihrer Sitzung aus.433 Ultrareview erfordert Authentifizierung mit einem claude.ai Konto und ist nicht auf Amazon Bedrock, Google Cloud's Agent Platform oder Microsoft Foundry verfügbar, oder für Organisationen mit Zero Data Retention aktiviert. Wenn Ultrareview nicht verfügbar ist, führt `/code-review ultra` stattdessen eine lokale Überprüfung in Ihrer Sitzung aus.

434</Note>434</Note>

435 435 

436Um eine Cloud-Überprüfung von einem Skript oder CI aus zu starten, führen Sie `claude -p '/code-review ultra'` aus. Claude Code startet die Überprüfung und druckt einen Link zu ihrer Verfolgung. Erfordert Claude Code v2.1.218 oder später.436Um eine Cloud-Überprüfung von einem Skript oder CI-Job aus zu starten, verwenden Sie den [`claude ultrareview` Unterbefehl](/docs/de/ultrareview#run-ultrareview-non-interactively), der auf die Erkenntnisse wartet und sie auf stdout ausgibt.

437 

438Wenn die Überprüfung [Nutzungsguthaben](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) abrechnen würde, stoppt Claude Code vorher, da die Abrechnungsbestätigung eine interaktive Sitzung benötigt. Führen Sie stattdessen den [`claude ultrareview` Unterbefehl](/docs/de/ultrareview#run-ultrareview-non-interactively) aus; durch seine Ausführung stimmen Sie der Gebühr zu.

439 437 

440Der Befehl hieß vor v2.1.147 `/simplify`, als er Fixes standardmäßig anwendete. `/simplify` führt eine separate Bereinigung-nur-Überprüfung aus, die Fixes anwendet, ohne nach Fehlern zu suchen. Wenn Sie `/simplify` für die Fehlersuche skriptet haben, wechseln Sie zu `/code-review --fix`.438Der Befehl hieß vor v2.1.147 `/simplify`, als er Fixes standardmäßig anwendete. `/simplify` führt eine separate Bereinigung-nur-Überprüfung aus, die Fixes anwendet, ohne nach Fehlern zu suchen. Wenn Sie `/simplify` für die Fehlersuche skriptet haben, wechseln Sie zu `/code-review --fix`.

441 439 

commands.md +124 −124

Details

36 Alle Befehle36 Alle Befehle

37</h2>37</h2>

38 38 

39Die folgende Tabelle listet alle Befehle auf, die in Claude Code enthalten sind. Die meisten sind integrierte Befehle, deren Verhalten in die CLI codiert ist. Zwei Arten von Einträgen sind gekennzeichnet:39Die folgende Tabelle listet alle in Claude Code enthaltenen Befehle auf. Die meisten sind integrierte Befehle, deren Verhalten fest in der CLI programmiert ist. Zwei Arten von Einträgen sind gekennzeichnet:

40 40 

41* **[Skill](/docs/de/skills#bundled-skills)**: ein gebündelter Skill. Er funktioniert wie Skills, die Sie selbst schreiben: ein Prompt, der an Claude übergeben wird.41* **[Skill](/docs/de/skills#bundled-skills)**: ein mitgelieferter Skill. Er funktioniert wie Skills, die Sie selbst schreiben: ein Prompt, der an Claude übergeben wird.

42 * `/verify` wird nur ausgeführt, wenn Sie ihn aufrufen. Vor v2.1.215 konnte Claude `/verify` auch von selbst ausführen.42 * `/verify` wird nur ausgeführt, wenn Sie ihn aufrufen. Vor v2.1.215 konnte Claude `/verify` auch selbstständig ausführen.

43* **[Workflow](/docs/de/workflows#bundled-workflows)**: ein gebündelter [dynamischer Workflow](/docs/de/workflows), der Arbeit über viele Subagenten verteilt und im Hintergrund ausgeführt wird.43* **[Workflow](/docs/de/workflows#bundled-workflows)**: ein mitgelieferter [dynamischer Workflow](/docs/de/workflows), der die Arbeit auf viele Subagenten verteilt und im Hintergrund läuft.

44 * `/deep-research` wird nur ausgeführt, wenn Sie ihn aufrufen. Vor v2.1.218 konnte Claude ihn auch von selbst starten.44 * `/deep-research` wird nur ausgeführt, wenn Sie ihn aufrufen. Vor v2.1.218 konnte Claude ihn auch selbstständig starten.

45 45 

46Um Ihre eigenen Befehle hinzuzufügen, siehe [Skills](/docs/de/skills).46Wie Sie eigene Befehle hinzufügen, erfahren Sie unter [Skills](/docs/de/skills).

47 47 

48In der folgenden Tabelle zeigt `<arg>` ein erforderliches Argument und `[arg]` ein optionales an.48In der folgenden Tabelle kennzeichnet `<arg>` ein erforderliches Argument und `[arg]` ein optionales.

49 49 

50<Note>50<Note>

51 Nicht jeder Befehl ist für jeden Benutzer verfügbar. Die Verfügbarkeit hängt von Ihrer Plattform, Ihrem Plan und Ihrer Umgebung ab. Beispielsweise wird `/desktop` nur auf macOS und x64 Windows angezeigt, wenn Sie mit einem Claude-Abonnement angemeldet sind, und `/upgrade` wird nicht in Enterprise-Plänen angezeigt.51 Nicht jeder Befehl wird jedem Benutzer angezeigt. Die Verfügbarkeit hängt von Ihrer Plattform, Ihrem Plan und Ihrer Umgebung ab. Beispielsweise wird `/desktop` nur unter macOS und x64-Windows angezeigt, wenn Sie mit einem Claude-Abonnement angemeldet sind, und `/upgrade` wird in Enterprise-Plänen nicht angezeigt.

52</Note>52</Note>

53 53 

54| Befehl | Zweck |54| Befehl | Zweck |

55| :- | :- |55| :- | :- |

56| `/add-dir <path>` | Fügen Sie ein Arbeitsverzeichnis für den Dateizugriff während der aktuellen Sitzung hinzu. Geben Sie einen Teilpfad ein, um passende Verzeichnisvorschläge zu sehen; drücken Sie `Tab`, um einen zu akzeptieren. Die meisten `.claude/`-Konfigurationen werden [nicht erkannt](/docs/de/permissions#additional-directories-grant-file-access-not-configuration) aus dem hinzugefügten Verzeichnis. Sie können die meisten [Netzwerkpfade](/docs/de/errors#working-directory-is-a-network-path) nicht hinzufügen, wie z. B. `\\server\share`. Nach einem erfolgreichen Hinzufügen werden Ihre [`DirectoryAdded` Hooks](/docs/de/hooks#directoryadded) ausgeführt. Wenn Sie ihn ausführen, während Claude antwortet, fordert Claude Code Sie auf, das Verzeichnis sofort zu bestätigen, und sobald Sie bestätigen, kann Claudes nächster Tool-Aufruf in derselben Runde darauf zugreifen. Vor v2.1.234 wartete Claude Code mit dem Befehl, bis die Runde beendet war |56| `/add-dir <path>` | Fügt ein Arbeitsverzeichnis für den Dateizugriff während der aktuellen Sitzung hinzu. Geben Sie einen Teilpfad ein, um passende Verzeichnisvorschläge zu sehen; drücken Sie `Tab`, um einen davon zu übernehmen. Der Großteil der `.claude/`-Konfiguration wird im hinzugefügten Verzeichnis [nicht erkannt](/docs/de/permissions#additional-directories-grant-file-access-not-configuration). Die meisten [Netzwerkpfade](/docs/de/errors#working-directory-is-a-network-path), etwa `\\server\share`, können Sie nicht hinzufügen. Nach erfolgreichem Hinzufügen werden Ihre [`DirectoryAdded`-Hooks](/docs/de/hooks#directoryadded) ausgeführt. Wenn Sie den Befehl ausführen, während Claude antwortet, bittet Claude Code Sie sofort, das Verzeichnis zu bestätigen, und sobald Sie bestätigen, kann Claudes nächster Tool-Aufruf im selben Turn darauf zugreifen. Vor v2.1.234 hat Claude Code den Befehl in die Warteschlange gestellt, bis der Turn beendet war |

57| `/advisor [model\|off]` | Aktivieren oder deaktivieren Sie das [Advisor-Tool](/docs/de/advisor), das ein zweites Modell zu Schlüsselmomenten während einer Aufgabe zu Rate zieht. Akzeptiert `fable`, `opus`, `sonnet` oder eine vollständige Modell-ID. `fable` erfordert [Fable-Zugriff](/docs/de/advisor#choose-an-advisor-model). Ohne Argument öffnet sich eine Auswahl. In einer Sitzung ohne interaktives Terminal oder über [Remote Control](/docs/de/remote-control#limitations) übergeben Sie das Modell oder `off` als Argument; ohne Argument dort gibt der Befehl den aktuellen Advisor als Text aus. Diese Formen erfordern Claude Code v2.1.260 oder später |57| `/advisor [model\|off]` | Aktiviert oder deaktiviert das [Advisor-Tool](/docs/de/advisor), das an entscheidenden Stellen einer Aufgabe ein zweites Modell um Rat fragt. Akzeptiert `fable`, `opus`, `sonnet` oder eine vollständige Modell-ID. `fable` erfordert [Fable-Zugriff](/docs/de/advisor#choose-an-advisor-model). Ohne Argument wird eine Auswahl geöffnet. In einer Sitzung ohne interaktives Terminal oder über [Remote Control](/docs/de/remote-control#limitations) übergeben Sie das Modell oder `off` als Argument; ohne Argument gibt der Befehl dort den aktuellen Advisor als Text aus. Diese Formen erfordern Claude Code v2.1.260 oder höher |

58| `/agents` | Ab v2.1.198 gibt die Ausführung von `/agents` eine Erinnerung aus, Claude zu bitten, [Subagenten](/docs/de/sub-agents) zu erstellen oder zu verwalten, oder `.claude/agents/` oder `~/.claude/agents/` direkt zu bearbeiten. In v2.1.197 und früher öffnet sich eine interaktive Schnittstelle zum Erstellen und Verwalten von Subagenten-Konfigurationen |58| `/agents` | Ab v2.1.198 gibt `/agents` einen Hinweis aus, Claude zu bitten, [Subagenten](/docs/de/sub-agents) zu erstellen oder zu verwalten, oder `.claude/agents/` bzw. `~/.claude/agents/` direkt zu bearbeiten. In v2.1.197 und früher wird eine interaktive Oberfläche zum Erstellen und Verwalten von Subagenten-Konfigurationen geöffnet |

59| `/artifact-capabilities` | **[Skill](/docs/de/skills#bundled-skills).** Laden Sie die Referenz für die Laufzeitfunktionen, die ein veröffentlichtes [Artefakt](/docs/de/artifacts) verwenden kann, wie z. B. [Aufrufen Ihrer Connectors](/docs/de/artifacts#pull-live-data-with-mcp-connectors) oder [Angebot eines Datei-Downloads](/docs/de/artifacts#offer-a-file-download), einschließlich derjenigen, auf die Ihr Konto Zugriff hat. Claude lädt es normalerweise von selbst, bevor eine Seite erstellt wird, die eines verwendet. Verfügbar, wo [Artefakte](/docs/de/artifacts#availability) verfügbar sind |59| `/artifact-capabilities` | **[Skill](/docs/de/skills#bundled-skills).** Lädt die Referenz zu den Laufzeitfunktionen, die ein veröffentlichtes [Artefakt](/docs/de/artifacts) nutzen kann, etwa das [Aufrufen Ihrer Konnektoren](/docs/de/artifacts#pull-live-data-with-mcp-connectors) oder das [Anbieten eines Datei-Downloads](/docs/de/artifacts#offer-a-file-download), einschließlich der Angabe, welche davon Ihr Konto hat. Claude lädt sie normalerweise selbstständig, bevor eine Seite erstellt wird, die eine davon verwendet. Verfügbar, wo [Artefakte](/docs/de/artifacts#availability) verfügbar sind |

60| `/artifact-diagramming` | **[Skill](/docs/de/skills#bundled-skills).** Laden Sie Diagramm-Richtlinien für Claude, um sie in [Artefakten](/docs/de/artifacts) zu befolgen: wann ein Diagramm hilft, was zu zeichnen ist und wie man Inline-SVG schreibt, das in hellen und dunklen Designs lesbar bleibt. Erfordert Claude Code v2.1.221 oder später |60| `/artifact-diagramming` | **[Skill](/docs/de/skills#bundled-skills).** Lädt Richtlinien zum Erstellen von Diagrammen, denen Claude in [Artefakten](/docs/de/artifacts) folgt: wann ein Diagramm hilft, was gezeichnet werden soll und wie Inline-SVG geschrieben wird, das in hellen und dunklen Designs lesbar bleibt. Erfordert Claude Code v2.1.221 oder höher |

61| `/artifacts` | Listen Sie die [Artefakte](/docs/de/artifacts#find-an-artifact-again) auf, die Sie besitzen oder die mit Ihnen geteilt werden, und fügen Sie dann eines an die Sitzung an, öffnen Sie es in Ihrem Browser oder kopieren Sie seinen Link. Verfügbar, wo [Artefakte](/docs/de/artifacts#availability) verfügbar sind. Erfordert Claude Code v2.1.208 oder später; das Anhängen mit `Enter` erfordert v2.1.216 |61| `/artifacts` | Listet die [Artefakte](/docs/de/artifacts#find-an-artifact-again) auf, die Ihnen gehören oder für Sie freigegeben wurden; anschließend können Sie eines an die Sitzung anhängen, im Browser öffnen oder dessen Link kopieren. Verfügbar, wo [Artefakte](/docs/de/artifacts#availability) verfügbar sind. Erfordert Claude Code v2.1.208 oder höher; das Anhängen mit `Enter` erfordert v2.1.216 |

62| `/auto-mode-setup` | [Entwurf `autoMode.environment` Einträge](/docs/de/auto-mode-config#generate-environment-entries) aus Ihrem Projekt und kürzlichen Sitzungen, überprüfen Sie dann den Entwurf und speichern Sie ihn in Ihren Benutzereinstellungen. Erfordert einen Pro-, Max- oder Team-Plan und Claude Code v2.1.228 oder später. Unter nativem Windows erfordert v2.1.233 oder später |62| `/auto-mode-setup` | [Erstellt Entwürfe für `autoMode.environment`-Einträge](/docs/de/auto-mode-config#generate-environment-entries) aus Ihrem Projekt und Ihren letzten Sitzungen; anschließend prüfen Sie den Entwurf und speichern ihn in Ihren Benutzereinstellungen. Erfordert einen Pro-, Max- oder Team-Plan und Claude Code v2.1.228 oder höher. Unter nativem Windows ist v2.1.233 oder höher erforderlich |

63| `/autocompact [auto\|<tokens>]` | Legen Sie das Auto-Compact-Fenster fest: wie voll das Kontextfenster wird, bevor Claude Code automatisch komprimiert. Übergeben Sie eine Größe wie `500k` oder `auto`, um zum für Ihr Modell optimierten Fenster zurückzukehren. Claude Code speichert den Wert in den Benutzereinstellungen und wendet ihn auf die aktuelle Sitzung an. Siehe [Auto-Compact-Fenster einstellen](/docs/de/model-config#set-the-auto-compact-window) für akzeptierte Werte und was es überschreibt. Ohne Argument öffnet sich ein Dialog, der das aktuelle Fenster anzeigt. Erfordert Claude Code v2.1.221 oder später |63| `/autocompact [auto\|<tokens>]` | Legt das Fenster für die automatische Komprimierung fest: wie voll das Kontextfenster werden darf, bevor Claude Code automatisch komprimiert. Übergeben Sie eine Größe wie `500k` oder `auto`, um zu dem für Ihr Modell abgestimmten Fenster zurückzukehren. Claude Code speichert den Wert in den Benutzereinstellungen und wendet ihn auf die aktuelle Sitzung an. Unter [Fenster für die automatische Komprimierung festlegen](/docs/de/model-config#set-the-auto-compact-window) finden Sie die akzeptierten Werte und was sie überschreibt. Ohne Argument wird ein Dialog geöffnet, der das aktuelle Fenster anzeigt. Erfordert Claude Code v2.1.221 oder höher |

64| `/autofix-pr [prompt]` | Starten Sie eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web#auto-fix-pull-requests), die den PR des aktuellen Branches überwacht und Fixes pusht, wenn CI fehlschlägt oder Reviewer Kommentare hinterlassen. Erkennt den offenen PR aus Ihrem ausgecheckten Branch mit `gh pr view`; um einen anderen PR zu überwachen, checken Sie zuerst seinen Branch aus. Standardmäßig wird der Cloud-Sitzung mitgeteilt, jeden CI-Fehler und Review-Kommentar zu beheben; übergeben Sie einen Prompt, um ihr andere Anweisungen zu geben, z. B. `/autofix-pr only fix lint and type errors`. Erfordert die `gh` CLI und Zugriff auf [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) |64| `/autofix-pr [prompt]` | Startet eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web#auto-fix-pull-requests), die den PR des aktuellen Branches überwacht und Korrekturen pusht, wenn CI fehlschlägt oder Reviewer Kommentare hinterlassen. Erkennt den offenen PR anhand Ihres ausgecheckten Branches mit `gh pr view`; um einen anderen PR zu überwachen, checken Sie zuerst dessen Branch aus. Standardmäßig wird die Cloud-Sitzung angewiesen, jeden CI-Fehler und jeden Review-Kommentar zu beheben; übergeben Sie einen Prompt, um ihr andere Anweisungen zu geben, zum Beispiel `/autofix-pr only fix lint and type errors`. Erfordert die `gh` CLI und Zugriff auf [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) |

65| `/background [prompt]` | Trennen Sie die aktuelle Sitzung, um als [Hintergrund-Agent](/docs/de/agent-view) zu laufen und dieses Terminal freizugeben. Übergeben Sie einen Prompt, um eine weitere Anweisung zu senden, bevor Sie trennen. Überwachen Sie die Sitzung mit `claude agents`. Um die Konversation in eine neue Hintergrund-Sitzung zu kopieren, während diese weiterläuft, verwenden Sie `/fork`. Alias: `/bg` |65| `/background [prompt]` | Trennt die aktuelle Sitzung ab, sodass sie als [Hintergrund-Agent](/docs/de/agent-view) läuft, und gibt dieses Terminal frei. Übergeben Sie einen Prompt, um vor dem Abtrennen noch eine weitere Anweisung zu senden. Überwachen Sie die Sitzung mit `claude agents`. Um die Konversation in eine neue Hintergrundsitzung zu kopieren, während diese weiterläuft, verwenden Sie `/fork`. Alias: `/bg` |

66| `/batch <instruction>` | **[Skill](/docs/de/skills#bundled-skills).** Orchestrieren Sie großflächige Änderungen über eine Codebasis parallel. Recherchiert die Codebasis, zerlegt die Arbeit in 5 bis 30 unabhängige Einheiten und präsentiert einen Plan. Nach Genehmigung startet es einen [Hintergrund-Subagenten](/docs/de/sub-agents#run-subagents-in-foreground-or-background) pro Einheit in einem isolierten [Worktree](/docs/de/worktrees). Jeder Subagent implementiert seine Einheit, führt Tests aus und veröffentlicht seine Änderung. Erfordert ein Git-Repository oder einen [`WorktreeCreate` Hook](/docs/de/worktrees#non-git-version-control), der die Worktrees erstellt. Außerhalb eines Git-Repositories erfordert `/batch` Claude Code v2.1.281 oder später. Beispiel: `/batch migrate src/ from JavaScript to TypeScript` |66| `/batch <instruction>` | **[Skill](/docs/de/skills#bundled-skills).** Orchestriert umfangreiche Änderungen an einer Codebasis parallel. Untersucht die Codebasis, zerlegt die Arbeit in 5 bis 30 unabhängige Einheiten und legt einen Plan vor. Nach der Genehmigung wird pro Einheit ein [Hintergrund-Subagent](/docs/de/sub-agents#run-subagents-in-foreground-or-background) in einem isolierten [Worktree](/docs/de/worktrees) gestartet. Jeder Subagent implementiert seine Einheit, führt Tests aus und veröffentlicht seine Änderung. Erfordert ein Git-Repository oder einen [`WorktreeCreate`-Hook](/docs/de/worktrees#non-git-version-control), der die Worktrees erstellt. Außerhalb eines Git-Repositorys erfordert `/batch` Claude Code v2.1.281 oder höher. Beispiel: `/batch migrate src/ from JavaScript to TypeScript` |

67| `/branch [name]` | Erstellen Sie einen Branch der aktuellen Konversation an diesem Punkt, damit Sie eine andere Richtung versuchen können, ohne die Konversation zu verlieren. Wechselt Sie in den Branch und bewahrt das Original, zu dem Sie mit `/resume` zurückkehren können. Um eine Kopie stattdessen als separate [Hintergrund-Sitzung](/docs/de/agent-view) auszuführen, verwenden Sie `/fork`; um eine Nebenaufgabe an einen [Subagenten](/docs/de/sub-agents) zu übergeben, der in diese Konversation zurückberichtet, verwenden Sie `/subtask` |67| `/branch [name]` | Erstellt an dieser Stelle einen Konversationszweig der aktuellen Konversation, sodass Sie eine andere Richtung ausprobieren können, ohne die Konversation in ihrem aktuellen Stand zu verlieren. Wechselt Sie in den Zweig und bewahrt das Original auf, zu dem Sie mit `/resume` zurückkehren können. Um stattdessen eine Kopie als separate [Hintergrundsitzung](/docs/de/agent-view) auszuführen, ohne in sie zu wechseln, verwenden Sie `/fork`; um eine Nebenaufgabe an einen [Subagenten](/docs/de/sub-agents) zu übergeben, der in diese Konversation zurückberichtet, verwenden Sie `/subtask` |

68| `/btw [question]` | Stellen Sie eine [Nebenfrage](/docs/de/interactive-mode#side-questions-with-%2Fbtw) zur aktuellen Sitzung, ohne sie zur Konversation hinzuzufügen. Wenn Sie `/btw` ohne Frage ausführen, zeigt Claude Code Ihre letzte Nebenfrage an, damit Sie frühere Antworten durchsuchen können; wenn Sie noch keine gestellt haben, gibt Claude Code eine Nutzungszeile aus. Vor v2.1.212 erforderte `/btw` eine Frage |68| `/btw [question]` | Stellt eine [Nebenfrage](/docs/de/interactive-mode#side-questions-with-%2Fbtw) zur aktuellen Sitzung, ohne sie der Konversation hinzuzufügen. Wenn Sie `/btw` ohne Frage ausführen, zeigt Claude Code Ihre letzte Nebenfrage an, damit Sie frühere Antworten durchsehen können; wenn Sie noch keine gestellt haben, gibt Claude Code eine Verwendungszeile aus. Vor v2.1.212 erforderte `/btw` eine Frage |

69| `/bug [report]` | Melden Sie einen Bug oder teilen Sie Ihre Konversation. Sie wählen, wie viel Sitzungsverlauf einzubeziehen ist, und bestätigen auf einem Zustimmungsbildschirm, bevor etwas gesendet wird. Wenn Sie bei einer Anthropic-Verbindung von Anthropic angemeldet sind, geht der Bericht an Anthropic; bei einem Drittanbieter oder ohne Anthropic-Anmeldedaten schreibt Claude Code den Bericht in ein [lokales Archiv unter `~/.claude/feedback-bundles/`](/docs/de/data-usage#telemetry-services), das Sie selbst weiterleiten. In der [VS Code-Erweiterung](/docs/de/vs-code#use-the-prompt-box) öffnet `/bug` stattdessen den eigenen Feedback-Dialog der Erweiterung; erfordert Claude Code v2.1.229 oder später. Wenn Sie ihn ausführen, während Claude antwortet, öffnet Claude Code den Dialog sofort. Vor v2.1.232 wartete Claude Code mit dem Befehl, bis die Runde beendet war. Alias: `/share`. Vor v2.1.212 waren `/bug` und `/share` Aliase von `/feedback` |69| `/bug [report]` | Meldet einen Fehler oder teilt Ihre Konversation. Sie wählen, wie viel des Sitzungsverlaufs einbezogen wird, und bestätigen auf einem Einwilligungsbildschirm, bevor etwas gesendet wird. Wenn Sie über eine First-Party-Verbindung bei Anthropic angemeldet sind, geht der Bericht an Anthropic; bei einem Drittanbieter oder ohne Anthropic-Anmeldedaten schreibt Claude Code den Bericht in ein [lokales Archiv unter `~/.claude/feedback-bundles/`](/docs/de/data-usage#telemetry-services), das Sie selbst weiterleiten. In der [VS Code-Erweiterung](/docs/de/vs-code#use-the-prompt-box) öffnet `/bug` stattdessen den eigenen Feedback-Dialog der Erweiterung; erfordert Claude Code v2.1.229 oder höher. Wenn Sie den Befehl ausführen, während Claude antwortet, öffnet Claude Code den Dialog sofort. Vor v2.1.232 hat Claude Code den Befehl in die Warteschlange gestellt, bis der Turn beendet war. Alias: `/share`. Vor v2.1.212 waren `/bug` und `/share` Aliasse von `/feedback` |

70| `/cd <path>` | Verschieben Sie diese Sitzung in ein neues Arbeitsverzeichnis und behalten Sie die Konversation. Geben Sie einen Teilpfad ein, um passende Verzeichnisvorschläge zu sehen; drücken Sie `Tab`, um einen zu akzeptieren. Die Vorschläge erfordern Claude Code v2.1.206 oder später. Für das, was Claude Code aus dem neuen Verzeichnis sofort anwendet, wenn Sie sich verschieben, und wie sich `/cd` von `/add-dir` unterscheidet, siehe [Sitzung in ein anderes Verzeichnis verschieben](/docs/de/permissions#move-the-session-to-another-directory) |70| `/cd <path>` | Verschiebt diese Sitzung in ein neues Arbeitsverzeichnis und behält die Konversation bei. Geben Sie einen Teilpfad ein, um passende Verzeichnisvorschläge zu sehen; drücken Sie `Tab`, um einen davon zu übernehmen. Die Vorschläge erfordern Claude Code v2.1.206 oder höher. Was Claude Code aus dem neuen Verzeichnis übernimmt, sobald Sie wechseln, und wie sich `/cd` von `/add-dir` unterscheidet, erfahren Sie unter [Sitzung in ein anderes Verzeichnis verschieben](/docs/de/permissions#move-the-session-to-another-directory) |

71| `/chrome` | Konfigurieren Sie [Claude in Chrome](/docs/de/chrome) Einstellungen |71| `/chrome` | Konfiguriert die Einstellungen für [Claude in Chrome](/docs/de/chrome) |

72| `/claude-api [migrate\|upgrade\|managed-agents-onboard\|prompt-audit\|cost-optimize\|build-eval\|hillclimb\|preserved-thinking-migration]` | **[Skill](/docs/de/skills#bundled-skills).** Laden Sie [Claude API](https://platform.claude.com/docs/en/api/overview) und [Managed Agents](https://platform.claude.com/docs/en/managed-agents/overview) Referenzmaterial für die Sprache Ihres Projekts. Wird auch automatisch aktiviert, wenn Ihr Code `anthropic` oder `@anthropic-ai/sdk` importiert. Für das, was jeder Unterbefehl tut und welche Version er erfordert, siehe [An Claude API-Projekten arbeiten](/docs/de/skills#work-on-claude-api-projects) |72| `/claude-api [migrate\|upgrade\|managed-agents-onboard\|prompt-audit\|cost-optimize\|build-eval\|hillclimb\|preserved-thinking-migration]` | **[Skill](/docs/de/skills#bundled-skills).** Lädt Referenzmaterial zur [Claude API](https://platform.claude.com/docs/en/api/overview) und zu [Managed Agents](https://platform.claude.com/docs/en/managed-agents/overview) für die Sprache Ihres Projekts. Wird auch automatisch aktiviert, wenn Ihr Code `anthropic` oder `@anthropic-ai/sdk` importiert. Was jeder Unterbefehl tut und welche Version er erfordert, erfahren Sie unter [An Claude API-Projekten arbeiten](/docs/de/skills#work-on-claude-api-projects) |

73| `/claude-in-chrome [task]` | **[Skill](/docs/de/skills#bundled-skills).** Lassen Sie Claude eine Aufgabe in Ihrem Browser ausführen, wie z. B. das Testen einer Seite, das Ausfüllen eines Formulars oder das Lesen von Konsolenprotokollen, über [Claude in Chrome](/docs/de/chrome). Verfügbar, wenn die Chrome-Integration für die Sitzung aktiviert ist, z. B. mit `claude --chrome`, oder wenn Claude Code anbieten kann, die [Erweiterung zu installieren](/docs/de/chrome#install-the-extension-when-claude-asks) |73| `/claude-in-chrome [task]` | **[Skill](/docs/de/skills#bundled-skills).** Lässt Claude über [Claude in Chrome](/docs/de/chrome) eine Aufgabe in Ihrem Browser ausführen, etwa eine Seite testen, ein Formular ausfüllen oder Konsolen-Logs lesen. Verfügbar, wenn die Chrome-Integration für die Sitzung aktiviert ist, zum Beispiel mit `claude --chrome`, oder wenn Claude Code anbieten kann, [die Erweiterung zu installieren](/docs/de/chrome#install-the-extension-when-claude-asks) |

74| `/clear [name]` | Starten Sie eine neue Konversation mit leerem Kontext. Übergeben Sie einen Namen, um die vorherige Konversation in der `/resume` Auswahl zu kennzeichnen. Um Kontext freizugeben und gleichzeitig die gleiche Konversation fortzusetzen, verwenden Sie stattdessen `/compact`. Setzen Sie die vorherige Konversation mit `/resume` fort, oder stellen Sie sie in demselben Claude Code-Prozess aus [dem Rewind-Menü-Eintrag der vorherigen Sitzung](/docs/de/checkpointing#rewind-past-a-cleared-conversation) wieder her. Aliase: `/reset`, `/new` |74| `/clear [name]` | Startet eine neue Konversation mit leerem Kontext. Übergeben Sie einen Namen, um die vorherige Konversation in der `/resume`-Auswahl zu benennen. Um Kontext freizugeben und dabei dieselbe Konversation fortzusetzen, verwenden Sie stattdessen `/compact`. Setzen Sie die vorherige Konversation mit `/resume` fort oder stellen Sie sie im selben Claude Code-Prozess über [den Eintrag für die vorherige Sitzung im Rewind-Menü](/docs/de/checkpointing#rewind-past-a-cleared-conversation) wieder her. Aliasse: `/reset`, `/new` |

75| `/code-review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [pr#\|branch\|path]` | **[Skill](/docs/de/skills#bundled-skills).** Überprüfen Sie den aktuellen Diff oder eine PR-Nummer, einen Branch oder einen Pfad, den Sie übergeben, auf Korrektheitsfehler. Je nach Ihrem Modell und Aufwandsniveau deckt die Überprüfung auch Bereinigungsmöglichkeiten ab. Übergeben Sie `--fix`, um Erkenntnisse anzuwenden, `--comment`, um sie auf dem GitHub PR oder GitLab Merge Request zu posten, oder `ultra`, um eine tiefe [Cloud-Überprüfung](/docs/de/ultrareview) auszuführen. Das Posten auf einem GitLab Merge Request erfordert Claude Code v2.1.257 oder später. Mit `ultra` auf einem `github.com` PR-Ziel übergeben Sie `--post`, um [das Posten der fertigen Erkenntnisse auf dem PR](/docs/de/ultrareview#post-findings-to-the-pull-request) im Startdialog vorzuwählen; `--post` erfordert Claude Code v2.1.227 oder später. Siehe [Diff lokal überprüfen](/docs/de/code-review#review-a-diff-locally) für die Aufwandsstufen, Zielbestimmung und wie es sich auf `/simplify` bezieht. Alias: `/review` |75| `/code-review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [pr#\|branch\|path]` | **[Skill](/docs/de/skills#bundled-skills).** Prüft den aktuellen Diff oder eine übergebene PR-Nummer, einen Branch oder Pfad auf Korrektheitsfehler. Je nach Modell und Effort-Stufe umfasst das Review auch Möglichkeiten zur Bereinigung. Übergeben Sie `--fix`, um die Ergebnisse anzuwenden, `--comment`, um sie im GitHub-PR oder GitLab-Merge-Request zu posten, oder `ultra`, um ein tiefgehendes [Cloud-Review](/docs/de/ultrareview) auszuführen. Das Posten in einem GitLab-Merge-Request erfordert Claude Code v2.1.257 oder höher. Übergeben Sie bei `ultra` mit einem `github.com`-PR als Ziel `--post`, um im Startdialog das [Posten der fertigen Ergebnisse im PR](/docs/de/ultrareview#post-findings-to-the-pull-request) vorab auszuwählen; `--post` erfordert Claude Code v2.1.227 oder höher. Unter [Einen Diff lokal prüfen](/docs/de/code-review#review-a-diff-locally) finden Sie die Effort-Stufen, die Zielauswahl und das Verhältnis zu `/simplify`. Alias: `/review` |

76| `/color [color\|default]` | Legen Sie die Farbe der Eingabeaufforderungsleiste für die aktuelle Sitzung fest. Verfügbare Farben: `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink`, `cyan`. Verwenden Sie `default`, um zurückzusetzen, oder führen Sie ohne Argument aus, um eine zufällige Farbe zu wählen. Wenn [Remote Control](/docs/de/remote-control) verbunden ist, wird die Farbe mit claude.ai/code synchronisiert. Auch im nicht-interaktiven Modus (`-p`) verfügbar; erfordert Claude Code v2.1.205 oder später |76| `/color [color\|default]` | Legt die Farbe der Eingabeleiste für die aktuelle Sitzung fest. Verfügbare Farben: `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink`, `cyan`. Verwenden Sie `default` zum Zurücksetzen oder führen Sie den Befehl ohne Argument aus, um eine zufällige Farbe zu wählen. Wenn [Remote Control](/docs/de/remote-control) verbunden ist, wird die Farbe mit claude.ai/code synchronisiert. Auch im nicht interaktiven Modus (`-p`) verfügbar; erfordert Claude Code v2.1.205 oder höher |

77| `/compact [instructions]` | Geben Sie Kontext frei, indem Sie die bisherige Konversation zusammenfassen. Übergeben Sie optional Fokusanweisungen für die Zusammenfassung. Siehe [wie Komprimierung Regeln, Skills und Memory-Dateien handhabt](/docs/de/context-window#what-survives-compaction) |77| `/compact [instructions]` | Gibt Kontext frei, indem die bisherige Konversation zusammengefasst wird. Optional können Sie Fokusanweisungen für die Zusammenfassung übergeben. Siehe [wie die Komprimierung mit Regeln, Skills und Memory-Dateien umgeht](/docs/de/context-window#what-survives-compaction) |

78| `/config [key=value ...]` | Öffnen Sie die [Einstellungen](/docs/de/settings) Schnittstelle, um Design, Modell, [Ausgabestil](/docs/de/output-styles) und andere Voreinstellungen anzupassen. Übergeben Sie ein oder mehrere `key=value` Paare, um eine Einstellung direkt ohne Öffnen der Schnittstelle zu setzen, z. B. `/config thinking=false`, `/config theme=dark` oder `/config model=sonnet`. Das `key=value` Formular funktioniert auch im nicht-interaktiven Modus (`-p`) und aus der Claude Mobile App über [Remote Control](/docs/de/remote-control). Das `key=value` Formular kann eine Einstellung, die Ihre Bestätigung im Panel benötigt, nicht aktivieren, wie z. B. [`autoContinueAtUsageLimit`](/docs/de/interactive-mode#turn-automatic-continue-off), kann sie aber ausschalten. Führen Sie `/config --help` aus, um die Schlüssel aufzulisten, die es akzeptiert. Alias: `/settings` |78| `/config [key=value ...]` | Öffnet die Oberfläche für [Einstellungen](/docs/de/settings), um Design, Modell, [Ausgabestil](/docs/de/output-styles) und weitere Präferenzen anzupassen. Übergeben Sie ein oder mehrere `key=value`-Paare, um eine Einstellung direkt festzulegen, ohne die Oberfläche zu öffnen, zum Beispiel `/config thinking=false`, `/config theme=dark` oder `/config model=sonnet`. Die `key=value`-Form funktioniert auch im nicht interaktiven Modus (`-p`) und aus der Claude-Mobile-App über [Remote Control](/docs/de/remote-control). Mit der `key=value`-Form können Sie keine Einstellung einschalten, die Ihre Bestätigung im Panel erfordert, etwa [`autoContinueAtUsageLimit`](/docs/de/interactive-mode#turn-automatic-continue-off), wohl aber ausschalten. Führen Sie `/config --help` aus, um die akzeptierten Schlüssel aufzulisten. Alias: `/settings` |

79| `/context [all]` | Visualisieren Sie die aktuelle Kontextnutzung als farbiges Gitter. Zeigt Optimierungsvorschläge für kontextintensive Tools, Memory-Übergewicht und Kapazitätswarnungen. Wenn die Konversation das Kontextfenster überschreitet, enthält die Ausgabe eine [Warnung](/docs/de/errors#context-exceeds-the-token-limit), die zeigt, wie weit über dem Limit Sie sind und welcher Befehl Platz freimacht. Im [Vollbildmodus](/docs/de/fullscreen) bricht `/context` die Aufschlüsselung pro Element zusammen, um das Gitter sichtbar zu halten. Übergeben Sie `all`, um es zu erweitern |79| `/context [all]` | Visualisiert die aktuelle Kontextnutzung als farbiges Raster. Zeigt Optimierungsvorschläge für kontextintensive Tools, aufgeblähtes Memory und Kapazitätswarnungen an. Wenn die Konversation das Kontextfenster überschreitet, enthält die Ausgabe eine [Warnung](/docs/de/errors#context-exceeds-the-token-limit), die anzeigt, wie weit Sie über dem Limit liegen und welcher Befehl Platz freigibt. Im [Vollbildmodus](/docs/de/fullscreen) klappt `/context` die Aufschlüsselung pro Element zusammen, damit das Raster sichtbar bleibt. Übergeben Sie `all`, um sie aufzuklappen |

80| `/copy [N]` | Kopieren Sie die letzte Antwort des Assistenten in die Zwischenablage. Übergeben Sie eine Nummer `N`, um die N-te letzte Antwort zu kopieren: `/copy 2` kopiert die vorletzte. Wenn Code-Blöcke vorhanden sind, zeigt sich eine interaktive Auswahl, um einzelne Blöcke oder die vollständige Antwort auszuwählen. Drücken Sie `w` in der Auswahl, um die Auswahl stattdessen in eine Datei zu schreiben, was über SSH nützlich ist |80| `/copy [N]` | Kopiert die letzte Antwort des Assistenten in die Zwischenablage. Übergeben Sie eine Zahl `N`, um die N-letzte Antwort zu kopieren: `/copy 2` kopiert die vorletzte. Wenn Codeblöcke vorhanden sind, wird eine interaktive Auswahl angezeigt, in der Sie einzelne Blöcke oder die vollständige Antwort auswählen können. Drücken Sie in der Auswahl `w`, um die Auswahl in eine Datei statt in die Zwischenablage zu schreiben, was über SSH nützlich ist |

81| `/cost` | Alias für `/usage` |81| `/cost` | Alias für `/usage` |

82| `/dataviz [request]` | **[Skill](/docs/de/skills#bundled-skills).** Designanleitung für Diagramme, Grafiken und Dashboards. Claude wählt die Diagrammform für die Daten, weist Farbe nach Rolle zu, validiert die Palette auf Farbenblindheit-Sicherheit und Kontrast mit einem gebündelten Skript und wendet Markierungs-, Interaktions- und Barrierefreiheitsregeln an. Verwendet eine markenfreie Platzhalterpalette, die Sie durch Ihre eigene ersetzen. Erfordert Claude Code v2.1.198 oder später |82| `/dataviz [request]` | **[Skill](/docs/de/skills#bundled-skills).** Gestaltungsrichtlinien für Diagramme, Grafiken und Dashboards. Claude wählt die Diagrammform passend zu den Daten, weist Farben nach Rolle zu, prüft die Palette mit einem mitgelieferten Skript auf Farbenblindheitstauglichkeit und Kontrast und wendet Regeln für Markierungen, Interaktion und Barrierefreiheit an. Verwendet eine markenneutrale Platzhalterpalette, die Sie durch Ihre eigene ersetzen. Erfordert Claude Code v2.1.198 oder höher |

83| `/debug [description]` | **[Skill](/docs/de/skills#bundled-skills).** Aktivieren Sie Debug-Protokollierung für die aktuelle Sitzung und beheben Sie Probleme durch Lesen des Sitzungs-Debug-Protokolls. Debug-Protokollierung ist standardmäßig deaktiviert, es sei denn, Sie haben mit `claude --debug` gestartet, daher startet die Ausführung von `/debug` in der Mitte der Sitzung die Erfassung von Protokollen von diesem Punkt an. Beschreiben Sie optional das Problem, um die Analyse zu fokussieren |83| `/debug [description]` | **[Skill](/docs/de/skills#bundled-skills).** Aktiviert das Debug-Logging für die aktuelle Sitzung und behebt Probleme durch Lesen des Debug-Logs der Sitzung. Das Debug-Logging ist standardmäßig deaktiviert, sofern Sie nicht mit `claude --debug` gestartet haben; wenn Sie `/debug` mitten in der Sitzung ausführen, werden Logs also ab diesem Zeitpunkt erfasst. Beschreiben Sie optional das Problem, um die Analyse darauf zu fokussieren |

84| `/deep-research <question>` | **[Workflow](/docs/de/workflows#bundled-workflows).** Verteilen Sie Web-Suchen zu einer Frage, rufen Sie Quellen ab und überprüfen Sie sie, und synthetisieren Sie einen zitierten Bericht |84| `/deep-research <question>` | **[Workflow](/docs/de/workflows#bundled-workflows).** Führt zu einer Frage breit gefächerte Websuchen durch, ruft Quellen ab, gleicht sie ab und fasst sie in einem Bericht mit Quellenangaben zusammen |

85| `/design [brief]` | **[Skill](/docs/de/skills#bundled-skills).** Entwerfen Sie UI-Mockups, Bildschirmabläufe, Landing Pages oder Poster als Artboards auf einer Leinwand, veröffentlicht als Claude Design [Artefakt](/docs/de/artifacts#draft-a-design-canvas), z. B. `/design a settings screen for a mobile banking app`. Sie bearbeiten die Artboards in einem Desktop-Browser und Ihre Änderungen werden automatisch gespeichert. Sie können jedes Artboard als PNG oder PDF exportieren. Erfordert Claude Code v2.1.265 oder später, eine Sitzung, in der [Artefakte verfügbar sind](/docs/de/artifacts#availability), und ein Konto, in dem die [Design-Vorlage verfügbar ist](/docs/de/artifacts#start-from-a-slides-design-or-docs-template); wenn Ihre Organisation diese Vorlage deaktiviert hat, ist `/design` dort nicht verfügbar. Verfügbar auf der Anthropic API. Auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry und Claude Platform auf AWS sind Artefakte nicht verfügbar, daher ist der Befehl dort nicht verfügbar |85| `/design [brief]` | **[Skill](/docs/de/skills#bundled-skills).** Erstellt Entwürfe für UI-Mockups, Bildschirmabläufe, Landingpages oder Poster als Artboards auf einer Leinwand, veröffentlicht als Claude Design-[Artefakt](/docs/de/artifacts#draft-a-design-canvas), zum Beispiel `/design a settings screen for a mobile banking app`. Sie bearbeiten die Artboards in einem Desktop-Browser, und Ihre Änderungen werden automatisch gespeichert. Sie können jedes Artboard als PNG oder PDF exportieren. Erfordert Claude Code v2.1.265 oder höher, eine Sitzung, in der [Artefakte verfügbar sind](/docs/de/artifacts#availability), und ein Konto, in dem die [Design-Vorlage verfügbar ist](/docs/de/artifacts#start-from-a-slides-design-or-docs-template); wenn Ihre Organisation diese Vorlage deaktiviert hat, erstellt `/design` keine Designentwürfe. Verfügbar über die Anthropic API. Auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry und Claude Platform on AWS sind Artefakte nicht verfügbar, daher ist der Befehl dort nicht verfügbar |

86| `/design-login` | Autorisieren Sie Design-System-Zugriff für `/design-sync` mit Ihrem claude.ai-Konto |86| `/design-login` | Autorisiert den Zugriff auf das Designsystem für `/design-sync` mit Ihrem claude.ai-Konto |

87| `/design-sync [hint]` | **[Skill](/docs/de/skills#bundled-skills).** Konvertieren Sie das React-Design-System Ihres Repos und laden Sie es auf [Claude Design](https://claude.ai/design) hoch, damit die Designs, die es produziert, Ihre echten Komponenten verwenden. Benennen Sie optional das Design-System, z. B. `/design-sync Acme DS`. Eine erste Synchronisierung überprüft jede Komponente und kann auf einem großen Repo mehrere Stunden dauern. Verfügbar auf der Anthropic API. Es benötigt claude.ai, das die CLI nicht auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder Claude Platform auf AWS oder über ein [Claude Apps Gateway](/docs/de/claude-apps-gateway#availability-and-limitations) kontaktiert, daher ist der Befehl dort nicht verfügbar |87| `/design-sync [hint]` | **[Skill](/docs/de/skills#bundled-skills).** Konvertiert das React-Designsystem Ihres Repositorys und lädt es in [Claude Design](https://claude.ai/design) hoch, sodass die dort erstellten Designs Ihre echten Komponenten verwenden. Benennen Sie optional das Designsystem, zum Beispiel `/design-sync Acme DS`. Eine erstmalige Synchronisierung prüft jede Komponente und kann bei einem großen Repository einige Stunden dauern. Verfügbar über die Anthropic API. Der Befehl benötigt claude.ai, das die CLI auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder Claude Platform on AWS sowie über ein [Claude-Apps-Gateway](/docs/de/claude-apps-gateway#availability-and-limitations) nicht kontaktiert, daher ist der Befehl dort nicht verfügbar |

88| `/desktop` | Setzen Sie die aktuelle Sitzung in der Claude Code Desktop-App fort. Erfordert macOS oder x64 Windows und ein Claude-Abonnement. Alias: `/app` |88| `/desktop` | Setzt die aktuelle Sitzung in der Claude Code-Desktop-App fort. Erfordert macOS oder x64-Windows und ein Claude-Abonnement. Alias: `/app` |

89| `/diff` | Überprüfen Sie die Änderungen in Ihrem Arbeitsbaum, einschließlich der bisherigen Änderungen von Claude. Siehe [Änderungen mit /diff überprüfen](/docs/de/interactive-mode#review-changes-with-%2Fdiff) |89| `/diff` | Prüft die Änderungen in Ihrem Arbeitsbaum, einschließlich der bisherigen Bearbeitungen durch Claude. Siehe [Änderungen mit /diff prüfen](/docs/de/interactive-mode#review-changes-with-%2Fdiff) |

90| `/doctor [prompt-audit [path]]` | **[Skill](/docs/de/skills#bundled-skills).** Führen Sie eine Setup-Überprüfung aus, die Probleme diagnostiziert und beheben kann. Überprüft die Installationsintegrität, einschließlich doppelter oder verbleibender Installationen, `PATH` Probleme und nicht analysierbare Einstellungsdateien. Findet ungenutzte Skills, MCP-Server und Plugins im Vergleich zu ihren Kontextkosten, kennzeichnet langsame [Hooks](/docs/de/hooks) und prüft auf eine neuere Version auf Ihrem [Release-Kanal](/docs/de/setup#configure-release-channel). Dedupliziert lokale `CLAUDE.md` Dateien gegen eingecheckte, trimmt eingecheckte [`CLAUDE.md`](/docs/de/memory#my-claude-md-is-too-large) Dateien durch Schneiden von Inhalten, die Claude aus der Codebasis ableiten könnte, und migriert die immer geladene Anleitung, die bleibt, in [Skills](/docs/de/skills) und verschachtelte `CLAUDE.md` Dateien, die bei Bedarf geladen werden. Bietet auch an, [Auto-Modus](/docs/de/permissions#permission-modes) zu Ihrem Standard zu machen und häufig abgelehnte schreibgeschützte Befehle [vorab zu genehmigen](/docs/de/permissions). Meldet Erkenntnisse zuerst und fragt um Bestätigung, bevor etwas geändert wird. Vom Terminal gibt `claude doctor` schreibgeschützte Installationsdiagnostiken aus, ohne eine Sitzung zu starten. Alias: `/checkup`. Führen Sie `/doctor prompt-audit` aus, um Claude [Ihre `CLAUDE.md` Dateien, Skills und andere Konfiguration](/docs/de/memory#audit-your-instruction-files) auf veraltete oder widersprüchliche Anweisungen zu überprüfen, anstatt die Überprüfung auszuführen. Der `prompt-audit` Unterbefehl erfordert Claude Code v2.1.283 oder später. Die `CLAUDE.md` Trim-Überprüfung erfordert Claude Code v2.1.206 oder später. Vor v2.1.205 öffnete `/doctor` einen schreibgeschützten Diagnosebildschirm und das Drücken von `f` sendete den Bericht an Claude |90| `/doctor [prompt-audit [path]]` | **[Skill](/docs/de/skills#bundled-skills).** Führt einen Setup-Check durch, der Probleme diagnostiziert und beheben kann. Prüft den Zustand der Installation, einschließlich doppelter oder übrig gebliebener Installationen, `PATH`-Problemen und nicht parsbarer Einstellungsdateien. Findet ungenutzte Skills, MCP-Server und Plugins im Verhältnis zu ihren Kontextkosten, kennzeichnet langsame [Hooks](/docs/de/hooks) und prüft, ob auf Ihrem [Release-Kanal](/docs/de/setup#configure-release-channel) eine neuere Version vorliegt. Dedupliziert lokale `CLAUDE.md`-Dateien gegenüber eingecheckten, kürzt eingecheckte [`CLAUDE.md`](/docs/de/memory#my-claude-md-is-too-large)-Dateien, indem Inhalte entfernt werden, die Claude aus der Codebasis ableiten könnte, und verschiebt die verbleibenden, stets geladenen Anweisungen in [Skills](/docs/de/skills) und verschachtelte `CLAUDE.md`-Dateien, die bei Bedarf geladen werden. Bietet außerdem an, den [Auto-Modus](/docs/de/permissions#permission-modes) zu Ihrem Standard zu machen und häufig abgelehnte, nur lesende Befehle [vorab zu genehmigen](/docs/de/permissions). Meldet zuerst die Ergebnisse und bittet um Bestätigung, bevor etwas geändert wird. Im Terminal gibt `claude doctor` schreibgeschützte Installationsdiagnosen aus, ohne eine Sitzung zu starten. Alias: `/checkup`. Führen Sie `/doctor prompt-audit` aus, damit Claude statt des Checks [Ihre `CLAUDE.md`-Dateien, Skills und sonstige Konfiguration](/docs/de/memory#audit-your-instruction-files) auf veraltete oder widersprüchliche Anweisungen prüft. Der Unterbefehl `prompt-audit` erfordert Claude Code v2.1.283 oder höher. Die Kürzungsprüfung für `CLAUDE.md` erfordert Claude Code v2.1.206 oder höher. Vor v2.1.205 öffnete `/doctor` einen schreibgeschützten Diagnosebildschirm, und durch Drücken von `f` wurde der Bericht an Claude gesendet |

91| `/effort [level\|auto\|status\|ultracode [on\|off]]` | Legen Sie die [Aufwandsstufe](/docs/de/model-config#adjust-effort-level) fest: `low` bis `xhigh`, `max` oder `auto`; `status` gibt sie aus. `ultracode` oder `ultracode on` schaltet [ultracode](/docs/de/workflows#let-claude-decide-with-ultracode) für die Sitzung auf der aktuellen Stufe ein, und `ultracode off` schaltet es aus; der [`ultracode`](/docs/de/settings-reference#ultracode) Schlüssel bleibt erhalten. `max` ist nur für die Sitzung. Die `on` und `off` Argumente und das Beibehalten der aktuellen Stufe erfordern Claude Code v2.1.284 oder später. Vor v2.1.284 setzte `/effort ultracode` die Sitzung auf `xhigh` und `/effort ultracode off` schlug mit `Invalid argument` fehl. Führen Sie es aus, während Claude antwortet, und sobald Sie die [Cache-Warnung](/docs/de/prompt-caching#changing-effort-level) bestätigen, wenn Claude Code eine anzeigt, wendet Claude Code die neue Stufe auf die nächste Anfrage in dieser Runde an. Vor v2.1.242 entschied Claude Code anhand eines Feature-Flags, das es von Anthropic abrief, ob der Befehl in der Mitte der Runde oder bis zum Ende der Runde ausgeführt werden sollte, und wartete immer in einer Sitzung, die keine [Feature-Flags abruft](/docs/de/env-vars#features-that-need-feature-flag-fetching), wie auf einem [Drittanbieter](/docs/de/third-party-integrations). Funktioniert in `-p` |91| `/effort [level\|auto\|status\|ultracode [on\|off]]` | Legt die [Effort-Stufe](/docs/de/model-config#adjust-effort-level) fest: `low` bis `xhigh`, `max` oder `auto`; `status` gibt sie aus. `ultracode` oder `ultracode on` schaltet [ultracode](/docs/de/workflows#let-claude-decide-with-ultracode) für die Sitzung auf der aktuellen Stufe ein, und `ultracode off` schaltet es aus; der Schlüssel [`ultracode`](/docs/de/settings-reference#ultracode) bleibt dauerhaft erhalten. `max` gilt nur für die Sitzung. Die Argumente `on` und `off` sowie das Beibehalten der aktuellen Stufe erfordern Claude Code v2.1.284 oder höher. Vor v2.1.284 setzte `/effort ultracode` die Sitzung auf `xhigh`, und `/effort ultracode off` schlug mit `Invalid argument` fehl. Führen Sie den Befehl aus, während Claude antwortet, und sobald Sie die [Cache-Warnung](/docs/de/prompt-caching#changing-effort-level) bestätigen, falls Claude Code eine anzeigt, wendet Claude Code die neue Stufe auf die nächste Anfrage in diesem Turn an. Vor v2.1.242 entschied Claude Code anhand eines von Anthropic abgerufenen Feature-Flags, ob der Befehl mitten im Turn ausgeführt oder bis zum Ende des Turns in die Warteschlange gestellt wird, und stellte ihn in einer Sitzung, die [keine Feature-Flags abruft](/docs/de/env-vars#features-that-need-feature-flag-fetching), etwa bei einem [Drittanbieter](/docs/de/third-party-integrations), immer in die Warteschlange. Funktioniert in `-p` |

92| `/exit` | Beenden Sie die CLI. In einer angehängten [Hintergrund-Sitzung](/docs/de/agent-view#attach-to-a-session) trennt dies ab und die Sitzung läuft weiter. Alias: `/quit` |92| `/exit` | Beendet die CLI. In einer angehängten [Hintergrundsitzung](/docs/de/agent-view#attach-to-a-session) wird die Sitzung dadurch abgetrennt und läuft weiter. Alias: `/quit` |

93| `/export [filename]` | Exportieren Sie die aktuelle Konversation als Klartext. Mit einem Dateinamen schreibt direkt in diese Datei. Ohne öffnet einen Dialog zum Kopieren in die Zwischenablage oder Speichern in einer Datei |93| `/export [filename]` | Exportiert die aktuelle Konversation als reinen Text. Mit einem Dateinamen wird direkt in diese Datei geschrieben. Ohne Dateinamen wird ein Dialog geöffnet, um in die Zwischenablage zu kopieren oder in einer Datei zu speichern |

94| `/fast [on\|off]` | Schalten Sie [Fast-Modus](/docs/de/fast-mode) ein oder aus. Führen Sie ihn aus, während Claude antwortet, und Claude Code schaltet den Fast-Modus um, ohne auf das Ende der Runde zu warten, obwohl die laufende Runde mit ihrer ursprünglichen Geschwindigkeit endet. Vor v2.1.242 entschied Claude Code anhand eines Feature-Flags, das es von Anthropic abrief, ob der Befehl in der Mitte der Runde oder bis zum Ende der Runde ausgeführt werden sollte, und wartete immer in einer Sitzung, die keine [Feature-Flags abruft](/docs/de/env-vars#features-that-need-feature-flag-fetching). Die Verfügbarkeit im nicht-interaktiven Modus mit `-p` ist begrenzt; siehe [Fast-Modus umschalten](/docs/de/fast-mode#toggle-fast-mode). Erfordert Claude Code v2.1.205 oder später |94| `/fast [on\|off]` | Schaltet den [Fast-Modus](/docs/de/fast-mode) ein oder aus. Führen Sie den Befehl aus, während Claude antwortet, und Claude Code schaltet den Fast-Modus um, ohne auf das Ende des Turns zu warten, wobei der laufende Turn mit seiner ursprünglichen Geschwindigkeit abgeschlossen wird. Vor v2.1.242 entschied Claude Code anhand eines von Anthropic abgerufenen Feature-Flags, ob der Befehl mitten im Turn ausgeführt oder bis zum Ende des Turns in die Warteschlange gestellt wird, und stellte ihn in einer Sitzung, die [keine Feature-Flags abruft](/docs/de/env-vars#features-that-need-feature-flag-fetching), immer in die Warteschlange. Die Verfügbarkeit im nicht interaktiven Modus mit `-p` ist eingeschränkt; siehe [Fast-Modus umschalten](/docs/de/fast-mode#toggle-fast-mode). Erfordert Claude Code v2.1.205 oder höher |

95| `/feedback [report]` | Senden Sie Produktfeedback zu Claude Code. Öffnet denselben Dialog wie [`/bug`](#all-commands), mit denselben Zustimmungsschritten, Senderegeln und Verhalten in der Mitte der Runde. In Sitzungen mit [Claude-entworfenes Feedback](/docs/de/tools-reference#sendfeedback-tool-behavior) öffnet `/feedback` ohne Argument stattdessen die Entwurfswarteschlange, in der Sie die Entwürfe überprüfen, bearbeiten, senden oder verwerfen, die Claude in die Warteschlange gestellt hat; die Warteschlange enthält eine Option, einen neuen Bericht im Dialog zu schreiben. Mit einem Argument und für `/bug` immer öffnet sich der Dialog direkt |95| `/feedback [report]` | Sendet Produktfeedback zu Claude Code. Öffnet denselben Dialog wie [`/bug`](#all-commands), mit demselben Einwilligungsschritt, denselben Senderegeln und demselben Verhalten mitten im Turn. In Sitzungen mit [von Claude entworfenem Feedback](/docs/de/tools-reference#sendfeedback-tool-behavior) öffnet `/feedback` ohne Argument stattdessen die Warteschlange der Entwürfe, in der Sie die von Claude eingereihten Entwürfe prüfen, bearbeiten, senden oder verwerfen; die Warteschlange enthält eine Option, im Dialog einen neuen Bericht zu schreiben. Mit einem Argument und bei `/bug` immer wird der Dialog direkt geöffnet |

96| `/fewer-permission-prompts` | **[Skill](/docs/de/skills#bundled-skills).** Scannen Sie Ihre Transkripte auf häufige schreibgeschützte Bash- und MCP-Tool-Aufrufe und fügen Sie dann eine priorisierte Zulassungsliste zu Projekt `.claude/settings.json` hinzu, um Berechtigungsaufforderungen zu reduzieren |96| `/fewer-permission-prompts` | **[Skill](/docs/de/skills#bundled-skills).** Durchsucht Ihre Transkripte nach häufigen nur lesenden Bash- und MCP-Tool-Aufrufen und fügt dann eine priorisierte Allowlist zur Projektdatei `.claude/settings.json` hinzu, um Berechtigungsabfragen zu reduzieren |

97| `/focus` | Schalten Sie die Fokusansicht um, die nur Ihren letzten Prompt, eine einzeilige Tool-Aufruf-Zusammenfassung mit Bearbeitungs-Diffstats und die endgültige Antwort anzeigt. Die Tool-Aufruf-Zusammenfassung zählt auch die in der Runde gestarteten Subagenten und bricht abgeschlossene Hintergrund-Task-Benachrichtigungen in eine einzelne Anzahl zusammen. Die Auswahl bleibt über Sitzungen hinweg erhalten; setzen Sie [`viewMode`](/docs/de/settings-reference#viewmode) in Einstellungen, um sie zu überschreiben. Nur im [Vollbild-Rendering](/docs/de/fullscreen) verfügbar. Von einem [Remote Control](/docs/de/remote-control) Client führen Sie `/focus [on\|off]` aus, um die Fokusansicht für die aktuelle Sitzung nur ein- oder auszuschalten, ohne Ihre gespeicherte Auswahl zu ändern; dies erfordert Claude Code v2.1.281 oder später. Die [VS Code-Erweiterung](/docs/de/vs-code#use-the-prompt-box) bietet ihre eigene Fokusansicht als Befehlsmenü-Umschalter, gespeichert als Erweiterungseinstellung, unabhängig von `viewMode` |97| `/focus` | Schaltet die Fokusansicht um, die nur Ihren letzten Prompt, eine einzeilige Zusammenfassung der Tool-Aufrufe mit Diffstats der Bearbeitungen und die abschließende Antwort anzeigt. Die Zusammenfassung der Tool-Aufrufe zählt außerdem die im Turn gestarteten Subagenten und fasst Benachrichtigungen über abgeschlossene Hintergrundaufgaben zu einer einzigen Anzahl zusammen. Die Auswahl bleibt sitzungsübergreifend erhalten; setzen Sie [`viewMode`](/docs/de/settings-reference#viewmode) in den Einstellungen, um sie zu überschreiben. Nur im [Vollbild-Rendering](/docs/de/fullscreen) verfügbar. Führen Sie von einem [Remote Control](/docs/de/remote-control)-Client aus `/focus [on\|off]` aus, um die Fokusansicht nur für die aktuelle Sitzung ein- oder auszuschalten, ohne Ihre gespeicherte Auswahl zu ändern; dies erfordert Claude Code v2.1.281 oder höher. Die [VS Code-Erweiterung](/docs/de/vs-code#use-the-prompt-box) bietet eine eigene Fokusansicht als Umschalter im Befehlsmenü, die als Erweiterungseinstellung gespeichert wird und unabhängig von `viewMode` ist |

98| `/fork [prompt]` | [Kopieren Sie die aktuelle Konversation](/docs/de/agent-view#copy-the-session-with-%2Ffork) in eine neue Hintergrund-Sitzung und arbeiten Sie hier weiter. Übergeben Sie einen Prompt und die Kopie beginnt sofort damit zu arbeiten; ohne einen wartet sie in der Agent-Ansicht auf ihren ersten Prompt. Außer wenn die Kopie [an Ort und Stelle bearbeitet](/docs/de/agent-view#how-file-edits-are-isolated), weist Claude Code sie an, einen eigenen Worktree zu erstellen, bevor Code-Änderungen vorgenommen werden; die Isolationsanweisung erfordert Claude Code v2.1.221 oder später. Um eine Nebenaufgabe an einen Subagenten zu übergeben, dessen Ergebnis in diese Konversation zurückkommt, verwenden Sie `/subtask`; um selbst in eine Kopie zu wechseln, verwenden Sie `/branch`. Erfordert Claude Code v2.1.212 oder später; auf v2.1.161 bis v2.1.211 und wann immer [Agent-Ansicht ausgeschaltet ist](/docs/de/agent-view#turn-off-agent-view), startet `/fork` stattdessen einen [gegabelten Subagenten](/docs/de/sub-agents#fork-the-current-conversation) |98| `/fork [prompt]` | [Kopiert die aktuelle Konversation](/docs/de/agent-view#copy-the-session-with-%2Ffork) in eine neue Hintergrundsitzung, während Sie hier weiterarbeiten. Übergeben Sie einen Prompt, und die Kopie beginnt sofort mit der Arbeit daran; ohne Prompt wartet sie in der Agentenansicht auf ihren ersten Prompt. Außer wenn die Kopie [direkt vor Ort bearbeitet](/docs/de/agent-view#how-file-edits-are-isolated), weist Claude Code sie an, einen eigenen Worktree zu erstellen, bevor sie Codeänderungen vornimmt; die Isolationsanweisung erfordert Claude Code v2.1.221 oder höher. Um eine Nebenaufgabe an einen Subagenten zu übergeben, dessen Ergebnis in diese Konversation zurückkommt, verwenden Sie `/subtask`; um selbst in eine Kopie zu wechseln, verwenden Sie `/branch`. Erfordert Claude Code v2.1.212 oder höher; in v2.1.161 bis v2.1.211 sowie immer dann, wenn die [Agentenansicht ausgeschaltet ist](/docs/de/agent-view#turn-off-agent-view), startet `/fork` stattdessen einen [geforkten Subagenten](/docs/de/sub-agents#fork-the-current-conversation) |

99| `/goal [condition\|clear]` | Legen Sie ein [Ziel](/docs/de/goal) fest: Claude arbeitet über Runden hinweg, bis die Bedingung erfüllt ist oder das Ziel [aus einem anderen Grund gelöscht wird](/docs/de/goal#how-evaluation-works). Ohne Argument zeigt das aktuelle oder zuletzt erreichte Ziel. `clear`, `stop`, `off`, `reset`, `none` oder `cancel` entfernt ein aktives Ziel früh |99| `/goal [condition\|clear]` | Legt ein [Ziel](/docs/de/goal) fest: Claude arbeitet über mehrere Turns hinweg weiter, bis die Bedingung erfüllt ist oder das Ziel [aus einem anderen Grund aufgehoben wird](/docs/de/goal#how-evaluation-works). Ohne Argument wird das aktuelle oder zuletzt erreichte Ziel angezeigt. `clear`, `stop`, `off`, `reset`, `none` oder `cancel` entfernt ein aktives Ziel vorzeitig |

100| `/heapdump` | Schreiben Sie einen JavaScript-Heap-Snapshot und eine Speicheraufschlüsselung auf `~/Desktop` oder Ihr Home-Verzeichnis unter Linux ohne Desktop-Ordner, um hohe Speichernutzung zu diagnostizieren. Fügen Sie nur die `-diagnostics.json` Datei an, wenn Sie ein Speicherproblem melden; die `.heapsnapshot` enthält Ihre vollständige Konversation und Anmeldedaten, daher teilen Sie sie nicht. [Versteckt vor dem Befehlsmenü](#how-the-command-menu-matches-what-you-type); geben Sie es vollständig ein. Siehe [was mit der Ausgabe zu tun ist](/docs/de/troubleshooting#high-cpu-or-memory-usage) |100| `/heapdump` | Schreibt einen JavaScript-Heap-Snapshot und eine Aufschlüsselung des Arbeitsspeichers nach `~/Desktop` bzw. unter Linux ohne Desktop-Ordner in Ihr Home-Verzeichnis, um hohen Speicherverbrauch zu diagnostizieren. Hängen Sie beim Melden eines Speicherproblems nur die Datei `-diagnostics.json` an; die `.heapsnapshot`-Datei enthält Ihre vollständige Konversation und Ihre Anmeldedaten, teilen Sie sie daher nicht. [Im Befehlsmenü ausgeblendet](#how-the-command-menu-matches-what-you-type); geben Sie ihn vollständig ein. Siehe [was mit der Ausgabe zu tun ist](/docs/de/troubleshooting#high-cpu-or-memory-usage) |

101| `/help` | Zeigen Sie Hilfe und verfügbare Befehle an |101| `/help` | Zeigt die Hilfe und verfügbare Befehle an |

102| `/hooks` | Zeigen Sie [Hook](/docs/de/hooks) Konfigurationen für Tool-Ereignisse an |102| `/hooks` | Zeigt [Hook](/docs/de/hooks#the-%2Fhooks-menu)-Konfigurationen an |

103| `/ide` | Verwalten Sie IDE-Integrationen und zeigen Sie den Status an |103| `/ide` | Verwaltet IDE-Integrationen und zeigt den Status an |

104| `/import [codex\|gemini\|cursor] [--dry-run] [--yes]` | Bringen Sie Konfiguration von OpenAI Codex, Google Gemini CLI oder Cursor auf Ihrem Computer in Claude Code, einschließlich Anweisungsdateien, MCP-Server, Befehle, Subagenten und Skills. Im [nicht-interaktiven Modus](/docs/de/headless) mit `-p` listet `/import` auf, was es gefunden hat, und gibt Ihnen den Befehl, der den Import bestätigt. Fügen Sie `--dry-run` hinzu, um eine Vorschau ohne Schreiben anzuzeigen, oder `--yes`, um die interaktive Auswahl zu überspringen. Nicht verfügbar auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder Claude Platform auf AWS oder über ein [Claude Apps Gateway](/docs/de/claude-apps-gateway#availability-and-limitations). Auch nicht verfügbar, wenn Sie [Feature-Flag-Abruf](/docs/de/env-vars#features-that-need-feature-flag-fetching) ausschalten. Erfordert Claude Code v2.1.213 oder später. Das Importieren von Cursor erfordert v2.1.265 oder später |104| `/import [codex\|gemini\|cursor] [--dry-run] [--yes]` | Übernimmt die Konfiguration von OpenAI Codex, Google Gemini CLI oder Cursor auf Ihrem Rechner in Claude Code, einschließlich Anweisungsdateien, MCP-Servern, Befehlen, Subagenten und Skills. Im [nicht interaktiven Modus](/docs/de/headless) mit `-p` listet `/import` auf, was gefunden wurde, und gibt Ihnen den Befehl, der den Import bestätigt. Fügen Sie `--dry-run` hinzu, um eine Vorschau anzuzeigen, ohne etwas zu schreiben, oder `--yes`, um die interaktive Auswahl zu überspringen. Nicht verfügbar auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder Claude Platform on AWS sowie über ein [Claude-Apps-Gateway](/docs/de/claude-apps-gateway#availability-and-limitations). Ebenfalls nicht verfügbar, wenn Sie das [Abrufen von Feature-Flags](/docs/de/env-vars#features-that-need-feature-flag-fetching) ausschalten. Erfordert Claude Code v2.1.213 oder höher. Der Import aus Cursor erfordert v2.1.265 oder höher |

105| `/init` | Initialisieren Sie das Projekt mit einer `CLAUDE.md` Anleitung. Setzen Sie `CLAUDE_CODE_NEW_INIT=1` für einen interaktiven Ablauf, der auch Skills, Hooks und persönliche Memory-Dateien durchläuft. Wenn `/init` OpenAI Codex oder Google Gemini CLI Konfiguration findet, bietet es an, sie mit `/import` zu übernehmen |105| `/init` | Initialisiert das Projekt mit einer `CLAUDE.md`-Anleitung. Setzen Sie `CLAUDE_CODE_NEW_INIT=1` für einen interaktiven Ablauf, der auch Skills, Hooks und persönliche Memory-Dateien durchgeht. Wenn `/init` eine Konfiguration von OpenAI Codex oder Google Gemini CLI findet, bietet es an, diese mit `/import` zu übernehmen |

106| `/insights` | Generieren Sie einen HTML-Bericht, der Ihre kürzlichen Sitzungen auf diesem Computer analysiert: in welchen Projekten Sie arbeiten, wie Sie Claude Code verwenden, wo Dinge schiefgehen und Funktionen zum Ausprobieren. Nicht verfügbar in [Cloud-Sitzungen](/docs/de/claude-code-on-the-web). Siehe [Analysieren Sie Ihre Nutzungsmuster](/docs/de/costs#analyze-your-usage-patterns) für den Berichtsspeicherort, die Aufbewahrung und die Kosten |106| `/insights` | Erstellt einen HTML-Bericht, der Ihre letzten Sitzungen auf diesem Rechner analysiert: in welchen Projekten Sie arbeiten, wie Sie Claude Code verwenden, wo Probleme auftreten und welche Funktionen Sie ausprobieren sollten. Nicht verfügbar in [Cloud-Sitzungen](/docs/de/claude-code-on-the-web). Unter [Nutzungsmuster analysieren](/docs/de/costs#analyze-your-usage-patterns) finden Sie Speicherort, Aufbewahrung und Kosten des Berichts |

107| `/install-github-app` | Installieren Sie die Claude GitHub App für ein Repository, mit einem optionalen Schritt zum Einrichten von [GitHub Actions](/docs/de/github-actions) Workflows und Geheimnissen. Führt Sie durch die Auswahl eines Repos und die Konfiguration der Integration. Funktioniert nur mit github.com Repositories. Wenn das Git-Remote Ihres Repositories auf gitlab.com oder bitbucket.org ist, gibt der Befehl eine Benachrichtigung aus und beendet sich, anstatt das Setup zu starten. Um Claude Code aus GitLab-Pipelines auszuführen, siehe [GitLab CI/CD](/docs/de/gitlab-ci-cd) |107| `/install-github-app` | Installiert die Claude GitHub App für ein Repository, mit einem optionalen Schritt zum Einrichten von [GitHub Actions](/docs/de/github-actions)-Workflows und -Secrets. Führt Sie durch die Auswahl eines Repositorys und die Konfiguration der Integration. Funktioniert nur mit github.com-Repositorys. Wenn sich der Git-Remote Ihres Repositorys auf gitlab.com oder bitbucket.org befindet, gibt der Befehl einen Hinweis aus und wird beendet, statt die Einrichtung zu starten. Wie Sie Claude Code aus GitLab-Pipelines ausführen, erfahren Sie unter [GitLab CI/CD](/docs/de/gitlab-ci-cd) |

108| `/install-slack-app` | Installieren Sie die Claude Slack App. Öffnet einen Browser, um den OAuth-Fluss abzuschließen |108| `/install-slack-app` | Installiert die Claude Slack-App. Öffnet einen Browser, um den OAuth-Ablauf abzuschließen |

109| `/keybindings` | Öffnen Sie Ihre [Tastaturkürzel](/docs/de/keybindings) Datei |109| `/keybindings` | Öffnet Ihre Datei mit [Tastenkombinationen](/docs/de/keybindings) |

110| `/list-agents` | Listen Sie die Subagenten, [Agent-Team](/docs/de/agent-teams) Teamkollegen und andere Claude Code Sitzungen auf, die Claude anschreiben kann, mit dem Namen, der für jeden zu verwenden ist. Siehe [Sitzungsübergreifendes Messaging](/docs/de/cross-session-messaging). Auch verfügbar als `/peers`. Erfordert Claude Code v2.1.224 oder später; frühere Versionen melden `Unknown command: /list-agents`. Teamkollegen-Zeilen und die erste Zeile, die den Namen dieser Sitzung anzeigt, erfordern v2.1.239 oder später. Nur in Sitzungen verfügbar, in denen [sitzungsübergreifendes Messaging aktiviert ist](/docs/de/cross-session-messaging#availability) |110| `/list-agents` | Listet die Subagenten, Teammitglieder eines [Agent-Teams](/docs/de/agent-teams) und anderen Claude Code-Sitzungen auf, denen Claude Nachrichten senden kann, jeweils mit dem zu verwendenden Namen. Siehe [sitzungsübergreifendes Messaging](/docs/de/cross-session-messaging). Auch als `/peers` verfügbar. Erfordert Claude Code v2.1.224 oder höher; frühere Versionen melden `Unknown command: /list-agents`. Zeilen für Teammitglieder und die erste Zeile mit dem eigenen Namen dieser Sitzung erfordern v2.1.239 oder höher. Nur in Sitzungen verfügbar, in denen [sitzungsübergreifendes Messaging aktiviert ist](/docs/de/cross-session-messaging#availability) |

111| `/login` | Melden Sie sich bei Ihrem Anthropic-Konto an |111| `/login` | Meldet Sie bei Ihrem Anthropic-Konto an |

112| `/logout` | Melden Sie sich von Ihrem Anthropic-Konto ab |112| `/logout` | Meldet Sie von Ihrem Anthropic-Konto ab |

113| `/loop [interval] [prompt]` | **[Skill](/docs/de/skills#bundled-skills).** Führen Sie einen Prompt wiederholt aus, während die Sitzung offen bleibt. Lassen Sie das Intervall weg und Claude [bestimmt das Tempo zwischen Iterationen selbst](/docs/de/scheduled-tasks#let-claude-choose-the-interval). Lassen Sie den Prompt weg und Claude führt den [integrierten Wartungs-Prompt](/docs/de/scheduled-tasks#run-the-built-in-maintenance-prompt) oder Ihre [`loop.md`](/docs/de/scheduled-tasks#customize-the-default-prompt-with-loop-md) aus. Beispiel: `/loop 5m check if the deploy finished`. Siehe [Prompts nach Zeitplan ausführen](/docs/de/scheduled-tasks). Alias: `/proactive` |113| `/loop [interval] [prompt]` | **[Skill](/docs/de/skills#bundled-skills).** Führt einen Prompt wiederholt aus, solange die Sitzung geöffnet bleibt. Wenn Sie das Intervall weglassen, [bestimmt Claude das Tempo zwischen den Iterationen selbst](/docs/de/scheduled-tasks#let-claude-choose-the-interval). Wenn Sie den Prompt weglassen, führt Claude den [integrierten Wartungs-Prompt](/docs/de/scheduled-tasks#run-the-built-in-maintenance-prompt) oder Ihre [`loop.md`](/docs/de/scheduled-tasks#customize-the-default-prompt-with-loop-md) aus. Beispiel: `/loop 5m check if the deploy finished`. Siehe [Prompts nach Zeitplan ausführen](/docs/de/scheduled-tasks). Alias: `/proactive` |

114| `/mcp [reconnect <server>\|enable\|disable [<server>\|all]]` | Verwalten Sie MCP-Server-Verbindungen und OAuth-Authentifizierung. Führen Sie ohne Argument aus, um die interaktive Liste zu öffnen, übergeben Sie `reconnect <server>`, um einen getrennten Server erneut zu verbinden, oder übergeben Sie `enable`/`disable` mit einem Servernamen oder `all`, um den Verbindungsstatus zu ändern, ohne den Dialog zu öffnen. Auch im nicht-interaktiven Modus (`-p`) verfügbar, wo die Ausführung ohne Argument eine Textzusammenfassung des Serverstatus statt der Liste ausgibt; erfordert Claude Code v2.1.205 oder später |114| `/mcp [reconnect <server>\|enable\|disable [<server>\|all]]` | Verwaltet MCP-Serververbindungen und die OAuth-Authentifizierung. Führen Sie den Befehl ohne Argument aus, um die interaktive Liste zu öffnen, übergeben Sie `reconnect <server>`, um einen getrennten Server erneut zu verbinden, oder übergeben Sie `enable`/`disable` mit einem Servernamen oder `all`, um den Verbindungsstatus zu ändern, ohne den Dialog zu öffnen. Auch im nicht interaktiven Modus (`-p`) verfügbar, wo die Ausführung ohne Argument statt der Liste eine Textzusammenfassung des Serverstatus ausgibt; erfordert Claude Code v2.1.205 oder höher |

115| `/memory` | Bearbeiten Sie `CLAUDE.md` Dateien, aktivieren oder deaktivieren Sie [Auto Memory](/docs/de/memory#auto-memory) und zeigen Sie Auto Memory Einträge an |115| `/memory` | Bearbeitet `CLAUDE.md`-Dateien, aktiviert oder deaktiviert [Auto-Memory](/docs/de/memory#auto-memory) und zeigt Auto-Memory-Einträge an |

116| `/mobile` | Zeigen Sie QR-Code zum Herunterladen der Claude Mobile App an. Aliase: `/ios`, `/android` |116| `/mobile` | Zeigt einen QR-Code zum Herunterladen der Claude-Mobile-App an. Aliasse: `/ios`, `/android` |

117| `/model [model]` | Wechseln Sie das KI-Modell und speichern Sie es als Standard für neue Sitzungen. Für Modelle, die es unterstützen, verwenden Sie Pfeile nach links/rechts, um die [Aufwandsstufe](/docs/de/model-config#adjust-effort-level) anzupassen. Ohne Argument öffnet sich eine Auswahl; drücken Sie `s` auf einer Zeile, um nur für die aktuelle Sitzung zu wechseln. Siehe [wann Claude Code Sie auffordert, den Wechsel zu bestätigen](/docs/de/prompt-caching#switching-models). Sobald Sie den Wechsel bestätigen, wenn Claude Code fragt, wendet Claude Code die Änderung an, ohne auf das Ende der aktuellen Antwort zu warten. Vor v2.1.242 entschied Claude Code anhand eines Feature-Flags, das es von Anthropic abrief, ob der Befehl in der Mitte der Runde oder bis zum Ende der Runde ausgeführt werden sollte, und wartete immer in einer Sitzung, die keine [Feature-Flags abruft](/docs/de/env-vars#features-that-need-feature-flag-fetching), wie auf einem [Drittanbieter](/docs/de/third-party-integrations). Auch im nicht-interaktiven Modus (`-p`) mit einem Modellargument statt der Auswahl verfügbar, wo es nur auf die aktuelle Sitzung angewendet wird und nicht als Standard gespeichert wird; erfordert Claude Code v2.1.205 oder später |117| `/model [model]` | Wechselt das KI-Modell und speichert es als Ihren Standard für neue Sitzungen. Bei Modellen, die dies unterstützen, verwenden Sie die Pfeiltasten links/rechts, um [die Effort-Stufe anzupassen](/docs/de/model-config#adjust-effort-level). Ohne Argument wird eine Auswahl geöffnet; drücken Sie `s` in einer Zeile, um nur für die aktuelle Sitzung zu wechseln. Siehe [wann Claude Code Sie bittet, den Wechsel zu bestätigen](/docs/de/prompt-caching#switching-models). Sobald Sie den Wechsel bestätigen, falls Claude Code danach fragt, wendet Claude Code die Änderung an, ohne auf das Ende der aktuellen Antwort zu warten. Vor v2.1.242 entschied Claude Code anhand eines von Anthropic abgerufenen Feature-Flags, ob der Befehl mitten im Turn ausgeführt oder bis zum Ende des Turns in die Warteschlange gestellt wird, und stellte ihn in einer Sitzung, die [keine Feature-Flags abruft](/docs/de/env-vars#features-that-need-feature-flag-fetching), etwa bei einem [Drittanbieter](/docs/de/third-party-integrations), immer in die Warteschlange. Auch im nicht interaktiven Modus (`-p`) mit einem Modellargument statt der Auswahl verfügbar; dort gilt der Wechsel nur für die aktuelle Sitzung und wird nicht als Ihr Standard gespeichert; erfordert Claude Code v2.1.205 oder höher |

118| `/output-style [style]` | Listen Sie [Ausgabestile](/docs/de/output-styles) auf oder wechseln Sie zu einem, z. B. `/output-style concise`. Siehe [Ändern Sie Ihren Ausgabestil](/docs/de/output-styles#change-your-output-style). Erfordert Claude Code v2.1.269 oder später |118| `/output-style [style]` | Listet [Ausgabestile](/docs/de/output-styles) auf oder wechselt zu einem, zum Beispiel `/output-style concise`. Siehe [Ausgabestil ändern](/docs/de/output-styles#change-your-output-style). Erfordert Claude Code v2.1.269 oder höher |

119| `/passes` | Teilen Sie eine kostenlose Woche Claude Code mit Freunden. Nur sichtbar, wenn Ihr Konto berechtigt ist |119| `/passes` | Teilen Sie eine kostenlose Woche Claude Code mit Freunden. Nur sichtbar, wenn Ihr Konto berechtigt ist |

120| `/permissions` | Verwalten Sie Zulassen-, Fragen- und Ablehnen-Regeln für Tool-Berechtigungen. Öffnet einen interaktiven Dialog, in dem Sie Regeln nach Umfang anzeigen, Regeln hinzufügen oder entfernen, Arbeitsverzeichnisse verwalten und [kürzliche Auto-Modus-Ablehnungen](/docs/de/auto-mode-config#review-denials) überprüfen können. Sie können auch [Auto-Modus-Klassifizierer-Regeln](/docs/de/auto-mode-config#edit-rules-from-permissions) aus der Registerkarte **Auto mode** des Dialogs anzeigen und bearbeiten. Wenn Sie ihn ausführen, während Claude antwortet, öffnet Claude Code den Dialog sofort und wendet Ihre Änderungen ab Claudes nächstem Tool-Aufruf in derselben Runde an. Vor v2.1.234 wartete Claude Code mit dem Befehl, bis die Runde beendet war. Alias: `/allowed-tools` |120| `/permissions` | Verwaltet Allow-, Ask- und Deny-Regeln für Tool-Berechtigungen. Öffnet einen interaktiven Dialog, in dem Sie Regeln nach Geltungsbereich anzeigen, Regeln hinzufügen oder entfernen, Arbeitsverzeichnisse verwalten und [kürzliche Ablehnungen im Auto-Modus](/docs/de/auto-mode-config#review-denials) prüfen können. Über den Tab **Auto mode** des Dialogs können Sie außerdem [Regeln des Auto-Modus-Klassifikators](/docs/de/auto-mode-config#edit-rules-from-permissions) anzeigen und bearbeiten. Wenn Sie den Befehl ausführen, während Claude antwortet, öffnet Claude Code den Dialog sofort und wendet Ihre Änderungen ab Claudes nächstem Tool-Aufruf im selben Turn an. Vor v2.1.234 hat Claude Code den Befehl in die Warteschlange gestellt, bis der Turn beendet war. Alias: `/allowed-tools` |

121| `/plan [description]` | Geben Sie den Plan-Modus direkt aus der Eingabeaufforderung ein. Übergeben Sie eine optionale Beschreibung, um den Plan-Modus einzugeben und sofort mit dieser Aufgabe zu beginnen, z. B. `/plan fix the auth bug` |121| `/plan [description]` | Wechselt direkt aus dem Eingabefeld in den Plan-Modus. Übergeben Sie eine optionale Beschreibung, um in den Plan-Modus zu wechseln und sofort mit dieser Aufgabe zu beginnen, zum Beispiel `/plan fix the auth bug` |

122| `/plugin [subcommand]` | Verwalten Sie Claude Code [Plugins](/docs/de/plugins/overview). Führen Sie ohne Argument aus, um das Plugin-Menü zu öffnen, oder übergeben Sie einen Unterbefehl wie `list`, `install`, `enable` oder `disable`, um direkt zu handeln. Claude Code kann ein Plugin während der Installation aktivieren; die [Installationszusammenfassung](/docs/de/plugins/install#install-a-plugin) teilt Ihnen mit, ob es das tat oder ob Sie `/reload-plugins` ausführen sollten |122| `/plugin [subcommand]` | Verwaltet Claude Code-[Plugins](/docs/de/plugins/overview). Führen Sie den Befehl ohne Argument aus, um das Plugin-Menü zu öffnen, oder übergeben Sie einen Unterbefehl wie `list`, `install`, `enable` oder `disable`, um direkt zu handeln. Claude Code kann ein Plugin während der Installation aktivieren; die [Installationszusammenfassung](/docs/de/plugins/install#install-a-plugin) teilt Ihnen mit, ob dies geschehen ist oder ob Sie `/reload-plugins` ausführen müssen |

123| `/powerup` | Entdecken Sie Claude Code Funktionen durch schnelle interaktive Lektionen mit animierten Demos |123| `/powerup` | Entdecken Sie Funktionen von Claude Code in kurzen interaktiven Lektionen mit animierten Demos |

124| `/pr-comments [PR]` | Entfernt in v2.1.91. Bitten Sie Claude direkt, Pull Request Kommentare anzuzeigen. In früheren Versionen ruft und zeigt Kommentare aus einem GitHub Pull Request ab; erkennt automatisch den PR für den aktuellen Branch oder übergeben Sie eine PR-URL oder Nummer. Erfordert die `gh` CLI |124| `/pr-comments [PR]` | In v2.1.91 entfernt. Bitten Sie Claude stattdessen direkt, Pull-Request-Kommentare anzuzeigen. In früheren Versionen werden Kommentare aus einem GitHub-Pull-Request abgerufen und angezeigt; der PR für den aktuellen Branch wird automatisch erkannt, oder Sie übergeben eine PR-URL oder -Nummer. Erfordert die `gh` CLI |

125| `/privacy-settings` | Zeigen Sie Ihre Datenschutzeinstellungen an und aktualisieren Sie sie. Nur für Pro- und Max-Plan-Abonnenten verfügbar |125| `/privacy-settings` | Zeigt Ihre Datenschutzeinstellungen an und aktualisiert sie. Nur für Abonnenten der Pro- und Max-Pläne verfügbar |

126| `/radio` | Öffnen Sie Claude FM Lo-Fi Radio in Ihrem Browser. Gibt die Stream-URL aus, wenn kein Browser verfügbar ist |126| `/radio` | Öffnet das Lo-Fi-Radio Claude FM in Ihrem Browser. Gibt die Stream-URL aus, wenn kein Browser verfügbar ist |

127| `/rate-limit-options` | Zeigen Sie Möglichkeiten, weiterzuarbeiten, wenn ein claude.ai Nutzungslimit eine Anfrage blockiert: warten und [automatisch fortfahren, wenn das Limit zurückgesetzt wird](/docs/de/interactive-mode#wait-for-a-usage-limit-to-reset), [Nutzungsguthaben](/docs/de/costs#add-usage-credits-to-your-subscription) hinzufügen oder Ihren Plan upgraden. Claude Code kann dieses Menü auch von selbst öffnen, wenn Sie ein Limit an Ihrem eigenen Terminal erreichen. Siehe [Automatisches Fortfahren ausschalten](/docs/de/interactive-mode#turn-automatic-continue-off). Erfordert ein claude.ai Abonnement. Die Warte- und Fortfahren-Zeilen erfordern Claude Code v2.1.234 oder später |127| `/rate-limit-options` | Zeigt Möglichkeiten, weiterzuarbeiten, wenn ein claude.ai-Nutzungslimit eine Anfrage blockiert: warten und [automatisch fortfahren, wenn das Limit zurückgesetzt wird](/docs/de/interactive-mode#wait-for-a-usage-limit-to-reset), [Nutzungsguthaben](/docs/de/costs#add-usage-credits-to-your-subscription) hinzufügen oder Ihren Plan upgraden. Claude Code kann dieses Menü auch selbstständig öffnen, wenn Sie an Ihrem eigenen Terminal ein Limit erreichen. Siehe [Automatisches Fortfahren ausschalten](/docs/de/interactive-mode#turn-automatic-continue-off). Erfordert ein claude.ai-Abonnement. Die Zeilen zum Warten und Fortfahren erfordern Claude Code v2.1.234 oder höher |

128| `/recap` | Generieren Sie auf Anfrage eine einzeilige Zusammenfassung der aktuellen Sitzung. Siehe [Sitzungs-Recap](/docs/de/interactive-mode#session-recap) für das automatische Recap, das angezeigt wird, nachdem Sie weg waren |128| `/recap` | Erstellt bei Bedarf eine einzeilige Zusammenfassung der aktuellen Sitzung. Unter [Sitzungszusammenfassung](/docs/de/interactive-mode#session-recap) erfahren Sie mehr über die automatische Zusammenfassung, die erscheint, nachdem Sie abwesend waren |

129| `/release-notes` | Zeigen Sie das Changelog in einer interaktiven Versions-Auswahl an. Wählen Sie eine bestimmte Version, um ihre Versionshinweise anzuzeigen, oder wählen Sie, um alle Versionen anzuzeigen. Die Hinweise erscheinen in Ihrem Transkript, ohne die Konversation einzugeben, die Claude sieht |129| `/release-notes` | Zeigt das Changelog in einer interaktiven Versionsauswahl an. Wählen Sie eine bestimmte Version, um deren Versionshinweise zu sehen, oder lassen Sie sich alle Versionen anzeigen. Die Hinweise erscheinen in Ihrem Transkript, ohne in die Konversation einzufließen, die Claude sieht |

130| `/reload-plugins [--force]` | Laden Sie alle aktiven [Plugins](/docs/de/plugins/overview) neu, um ausstehende Änderungen anzuwenden, ohne neu zu starten. Meldet Anzahlen für jede neu geladene Komponente und kennzeichnet alle Ladefehler. Wenn das Neuladen ändern würde, welche MCP-Tools geladen sind und den Prompt-Cache ungültig machen würde, warnt der Befehl und überspringt, es sei denn, Sie übergeben `--force`. Auch im nicht-interaktiven Modus (`-p`), dem Agent SDK und der Desktop App verfügbar, wo es nur auf direkt in die Sitzung eingegebene Eingaben läuft und Plugin-MCP-Server-Änderungen nicht anwendet; erfordert Claude Code v2.1.260 oder später. Siehe [Plugin-Änderungen ohne Neustart anwenden](/docs/de/plugins/cli-reference#reload-plugins) |130| `/reload-plugins [--force]` | Lädt alle aktiven [Plugins](/docs/de/plugins/overview) neu, um ausstehende Änderungen ohne Neustart anzuwenden. Meldet die Anzahl für jede neu geladene Komponente und kennzeichnet Ladefehler. Wenn das Neuladen ändern würde, welche MCP-Tools geladen sind, und den Prompt-Cache ungültig machen würde, gibt der Befehl eine Warnung aus und überspringt das Neuladen, sofern Sie nicht `--force` übergeben. Auch im nicht interaktiven Modus (`-p`), im Agent SDK und in der Desktop-App verfügbar, wo der Befehl nur bei direkt in die Sitzung eingegebener Eingabe ausgeführt wird und keine Änderungen an Plugin-MCP-Servern anwendet; erfordert Claude Code v2.1.260 oder höher. Siehe [Plugin-Änderungen ohne Neustart anwenden](/docs/de/plugins/cli-reference#reload-plugins) |

131| `/reload-skills` | Scannen Sie [Skill](/docs/de/skills) und Befehlsverzeichnisse erneut, damit während der Sitzung auf der Festplatte hinzugefügte oder geänderte Skills verfügbar werden, ohne neu zu starten. Meldet, wie viele Skills verfügbar sind und wie viele hinzugefügt oder entfernt wurden |131| `/reload-skills` | Durchsucht [Skill](/docs/de/skills)- und Befehlsverzeichnisse erneut, sodass während der Sitzung auf dem Datenträger hinzugefügte oder geänderte Skills ohne Neustart verfügbar werden. Meldet, wie viele Skills verfügbar sind und wie viele hinzugefügt oder entfernt wurden |

132| `/remote-control` | Machen Sie diese Sitzung für [Remote Control](/docs/de/remote-control) von claude.ai verfügbar. Die Ausführung während der Abmeldung gibt aus, dass Remote Control ein claude.ai Abonnement erfordert, und teilt Ihnen mit, wie Sie sich anmelden; vor v2.1.206 meldete es `Unknown command: /remote-control`. Alias: `/rc` |132| `/remote-control` | Macht diese Sitzung für [Remote Control](/docs/de/remote-control) von claude.ai aus verfügbar. Wenn Sie den Befehl im abgemeldeten Zustand ausführen, wird ausgegeben, dass Remote Control ein claude.ai-Abonnement erfordert, und wie Sie sich anmelden; vor v2.1.206 wurde `Unknown command: /remote-control` gemeldet. Alias: `/rc` |

133| `/remote-env` | Wählen Sie die Standard-[Cloud-Umgebung](/docs/de/cloud-environments#select-an-environment-from-the-cli) für Cloud-Sitzungen, die Sie von der CLI starten |133| `/remote-env` | Wählt die Standard-[Cloud-Umgebung](/docs/de/cloud-environments#select-an-environment-from-the-cli) für Cloud-Sitzungen, die Sie über die CLI starten |

134| `/rename [name]` | Benennen Sie die aktuelle Sitzung um und zeigen Sie den Namen auf der Eingabeaufforderungsleiste an. Ohne Namen wird automatisch einer aus dem Konversationsverlauf generiert. Auch im nicht-interaktiven Modus (`-p`) verfügbar; erfordert Claude Code v2.1.205 oder später. Von jeder Umbenennungsoberfläche, einschließlich claude.ai und der Desktop App, ersetzt Claude Code Steuerzeichen und unsichtbare Zeichen im neuen Namen durch Leerzeichen und begrenzt den Namen auf 200 Zeichen. Wenn der Name leer ist, sobald unsichtbare Zeichen entfernt werden, lehnt Claude Code ihn ab und zeigt `That name is empty once invisible characters are removed. Usage: /rename <name>`. Der Zeichenersatz und die Längenbegrenzung erfordern Claude Code v2.1.221 oder später. Wenn eine andere Live-Sitzung auf diesem Computer bereits einen Namen verwendet, den Sie übergeben, wendet Claude Code stattdessen [eine Variante davon](/docs/de/sessions#name-your-sessions) an |134| `/rename [name]` | Benennt die aktuelle Sitzung um und zeigt den Namen in der Eingabeleiste an. Ohne Namen wird automatisch einer aus dem Konversationsverlauf erzeugt. Auch im nicht interaktiven Modus (`-p`) verfügbar; erfordert Claude Code v2.1.205 oder höher. Auf jeder Oberfläche zum Umbenennen, einschließlich claude.ai und der Desktop-App, ersetzt Claude Code Steuer- und unsichtbare Zeichen im neuen Namen durch Leerzeichen und begrenzt den Namen auf 200 Zeichen. Wenn der Name nach dem Entfernen unsichtbarer Zeichen leer ist, lehnt Claude Code ihn ab und zeigt `That name is empty once invisible characters are removed. Usage: /rename <name>` an. Die Zeichenersetzung und die Längenbegrenzung erfordern Claude Code v2.1.221 oder höher. Wenn eine andere aktive Sitzung auf diesem Rechner bereits einen von Ihnen übergebenen Namen verwendet, wendet Claude Code stattdessen [eine Variante davon](/docs/de/sessions#name-your-sessions) an |

135| `/resume [session]` | Setzen Sie eine Konversation nach ID oder Name fort, oder öffnen Sie die Sitzungsauswahl. [Hintergrund-Sitzungen](/docs/de/agent-view) erscheinen in der Auswahl mit `bg` gekennzeichnet. Das Fortsetzen einer, die noch läuft, aus der Auswahl oder nach ID oder Name, [öffnet diese Sitzung](/docs/de/sessions#resume-a-running-background-session): Ihre aktuelle Konversation wechselt in den Hintergrund und dieses Terminal wird an die laufende angehängt. Drücken Sie `←` auf einer leeren Eingabeaufforderung, um zur Agent-Ansicht zurückzukehren, die auch die Konversation auflistet, die Sie verlassen haben. Vor v2.1.285 weigerte sich Claude Code und sagte Ihnen, die Sitzung mit `claude attach` zu öffnen oder sie zuerst zu stoppen. Alias: `/continue` |135| `/resume [session]` | Setzt eine Konversation anhand von ID oder Namen fort oder öffnet die Sitzungsauswahl. [Hintergrundsitzungen](/docs/de/agent-view) erscheinen in der Auswahl mit `bg` gekennzeichnet. Wenn Sie eine noch laufende Sitzung fortsetzen, ob aus der Auswahl oder per ID oder Namen, [wird diese Sitzung geöffnet](/docs/de/sessions#resume-a-running-background-session): Ihre aktuelle Konversation wechselt in den Hintergrund, und dieses Terminal wird an die laufende Sitzung angehängt. Drücken Sie `←` bei leerem Eingabefeld, um zur Agentenansicht zurückzukehren, die auch die verlassene Konversation auflistet. Vor v2.1.285 hat Claude Code dies abgelehnt und Sie angewiesen, die Sitzung mit `claude attach` zu öffnen oder sie zuerst zu stoppen. Alias: `/continue` |

136| `/review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [pr#\|branch\|path]` | Alias von [`/code-review`](/docs/de/code-review#review-a-diff-locally): überprüft den aktuellen Diff oder eine PR-Nummer, einen Branch oder einen Pfad, den Sie übergeben, wie z. B. `/review 1234`, und nimmt die gleichen Aufwandsstufen und Flags. Ohne angegebene Stufe verwendet die Überprüfung die letzte `low` bis `max` Stufe, die Sie eingegeben haben; siehe [Diff lokal überprüfen](/docs/de/code-review#review-a-diff-locally) für die genauen Regeln. Für eine tiefe Cloud-Überprüfung verwenden Sie [`/code-review ultra`](/docs/de/ultrareview). Vor v2.1.223 war `/review` ein separater Befehl, der eine einmalige, schreibgeschützte Überprüfung eines GitHub Pull Request nach Nummer durchführte, wobei offene PRs zum Auswählen aufgelistet wurden, wenn ohne Argument ausgeführt; von v2.1.186 bis v2.1.201 führte er die gleiche Multi-Agent-Engine wie `/code-review medium` aus |136| `/review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [pr#\|branch\|path]` | Alias von [`/code-review`](/docs/de/code-review#review-a-diff-locally): prüft den aktuellen Diff oder eine übergebene PR-Nummer, einen Branch oder Pfad, etwa `/review 1234`, und akzeptiert dieselben Effort-Stufen und Flags. Ohne angegebene Stufe verwendet das Review die zuletzt eingegebene Stufe von `low` bis `max`; die genauen Regeln finden Sie unter [Einen Diff lokal prüfen](/docs/de/code-review#review-a-diff-locally). Für ein tiefgehendes Cloud-Review verwenden Sie [`/code-review ultra`](/docs/de/ultrareview). Vor v2.1.223 war `/review` ein separater Befehl, der ein einstufiges, nur lesendes Review eines GitHub-Pull-Requests anhand seiner Nummer durchführte und bei Ausführung ohne Argument offene PRs zur Auswahl auflistete; von v2.1.186 bis v2.1.201 nutzte er dieselbe Multi-Agenten-Engine wie `/code-review medium` |

137| `/rewind` | Spulen Sie die Konversation und/oder den Code zu einem früheren Punkt zurück, oder fassen Sie von einer ausgewählten Nachricht zusammen. Siehe [Checkpointing](/docs/de/checkpointing). Aliase: `/checkpoint`, `/undo` |137| `/rewind` | Setzt die Konversation und/oder den Code auf einen früheren Punkt zurück oder fasst ab einer ausgewählten Nachricht zusammen. Siehe [Checkpointing](/docs/de/checkpointing). Aliasse: `/checkpoint`, `/undo` |

138| `/run` | **[Skill](/docs/de/skills#bundled-skills).** Starten Sie Ihre Projekt-App und fahren Sie sie, um eine Änderung funktionierend zu sehen, nicht nur Tests zu bestehen. Siehe [Führen Sie Ihre App aus und überprüfen Sie sie](/docs/de/skills#run-and-verify-your-app) |138| `/run` | **[Skill](/docs/de/skills#bundled-skills).** Startet und bedient die App Ihres Projekts, um zu sehen, dass eine Änderung funktioniert, und nicht nur, dass Tests bestehen. Siehe [App ausführen und verifizieren](/docs/de/skills#run-and-verify-your-app) |

139| `/run-skill-generator` | **[Skill](/docs/de/skills#bundled-skills).** Lehren Sie `/run` und `/verify`, wie Sie Ihre Projekt-App aus einer sauberen Umgebung erstellen, starten und fahren, indem Sie einen Pro-Projekt-[Skill](/docs/de/skills#run-and-verify-your-app) schreiben |139| `/run-skill-generator` | **[Skill](/docs/de/skills#bundled-skills).** Bringt `/run` und `/verify` bei, wie die App Ihres Projekts aus einer sauberen Umgebung gebaut, gestartet und bedient wird, indem ein projektspezifischer [Skill](/docs/de/skills#run-and-verify-your-app) geschrieben wird |

140| `/sandbox` | Schalten Sie [Sandbox-Modus](/docs/de/sandboxing) um. Nur auf unterstützten Plattformen verfügbar |140| `/sandbox` | Schaltet den [Sandbox-Modus](/docs/de/sandboxing) um. Nur auf unterstützten Plattformen verfügbar |

141| `/schedule [description]` | Erstellen, aktualisieren, listen oder führen Sie [Routinen](/docs/de/routines) aus, die in der Cloud ausgeführt werden. Claude führt Sie conversationally durch das Setup. Sie können auch nach [kürzlichen Läufen einer Routine](/docs/de/routines#manage-routines-from-the-cli) fragen. Alias: `/routines` |141| `/schedule [description]` | Erstellt, aktualisiert, listet oder führt [Routinen](/docs/de/routines) aus, die in der Cloud laufen. Claude führt Sie im Dialog durch die Einrichtung. Sie können auch nach den [letzten Ausführungen einer Routine](/docs/de/routines#manage-routines-from-the-cli) fragen. Alias: `/routines` |

142| `/scroll-speed` | Passen Sie die [Scroll-Geschwindigkeit](/docs/de/fullscreen#mouse-wheel-scrolling) der Maus interaktiv an, mit einem Lineal, das Sie scrollen können, während der Dialog offen ist, um die Änderung in der Vorschau anzuzeigen. Nur im [Vollbild-Rendering](/docs/de/fullscreen) verfügbar und nicht im JetBrains IDE Terminal |142| `/scroll-speed` | Passt die [Scrollgeschwindigkeit](/docs/de/fullscreen#mouse-wheel-scrolling) des Mausrads interaktiv an, mit einem Lineal, das Sie bei geöffnetem Dialog scrollen können, um die Änderung in der Vorschau zu sehen. Nur im [Vollbild-Rendering](/docs/de/fullscreen) verfügbar und nicht im Terminal der JetBrains-IDE |

143| `/security-review` | Analysieren Sie die Änderungen auf Ihrem aktuellen Branch auf Sicherheitslücken. Überprüft den Diff zwischen Ihrem Branch und dem Standard-Branch des Origin, identifiziert Risiken wie Injection, Auth-Probleme und Datenexposition. Benötigt ein `origin` Remote; wenn die Überprüfung mit einem `ambiguous argument` Fehler fehlschlägt, siehe die [Fehlerreferenz](/docs/de/errors#security-review-fails-without-origin-head) |143| `/security-review` | Analysiert die Änderungen auf Ihrem aktuellen Branch auf Sicherheitslücken. Prüft den Diff zwischen Ihrem Branch und dem Standard-Branch von origin und identifiziert Risiken wie Injection, Authentifizierungsprobleme und Offenlegung von Daten. Benötigt einen `origin`-Remote; wenn das Review mit einem `ambiguous argument`-Fehler fehlschlägt, siehe die [Fehlerreferenz](/docs/de/errors#security-review-fails-without-origin-head) |

144| `/setup-bedrock` | Konfigurieren Sie [Amazon Bedrock](/docs/de/amazon-bedrock) Authentifizierung, Region und Modell-Pins durch einen interaktiven Wizard. [Versteckt vor dem Befehlsmenü](#how-the-command-menu-matches-what-you-type), bis `CLAUDE_CODE_USE_BEDROCK=1` gesetzt ist; geben Sie es vollständig ein. Erstbenutzer von Amazon Bedrock können auch auf diesen Wizard vom Anmeldebildschirm zugreifen |144| `/setup-bedrock` | Konfiguriert die Authentifizierung, Region und Modellfixierungen für [Amazon Bedrock](/docs/de/amazon-bedrock) über einen interaktiven Assistenten. [Im Befehlsmenü ausgeblendet](#how-the-command-menu-matches-what-you-type), bis `CLAUDE_CODE_USE_BEDROCK=1` gesetzt ist; geben Sie ihn vollständig ein. Erstmalige Amazon Bedrock-Benutzer können diesen Assistenten auch über den Anmeldebildschirm aufrufen |

145| `/setup-vertex` | Konfigurieren Sie [Google Cloud's Agent Platform](/docs/de/google-vertex-ai) Authentifizierung, Projekt, Region und Modell-Pins durch einen interaktiven Wizard. [Versteckt vor dem Befehlsmenü](#how-the-command-menu-matches-what-you-type), bis `CLAUDE_CODE_USE_VERTEX=1` gesetzt ist; geben Sie es vollständig ein. Erstbenutzer von Google Cloud's Agent Platform können auch auf diesen Wizard vom Anmeldebildschirm zugreifen |145| `/setup-vertex` | Konfiguriert die Authentifizierung, das Projekt, die Region und Modellfixierungen für [Google Cloud's Agent Platform](/docs/de/google-vertex-ai) über einen interaktiven Assistenten. [Im Befehlsmenü ausgeblendet](#how-the-command-menu-matches-what-you-type), bis `CLAUDE_CODE_USE_VERTEX=1` gesetzt ist; geben Sie ihn vollständig ein. Erstmalige Benutzer von Google Cloud's Agent Platform können diesen Assistenten auch über den Anmeldebildschirm aufrufen |

146| `/simplify [target]` | **[Skill](/docs/de/skills#bundled-skills).** Überprüfen Sie den geänderten Code auf Bereinigungsmöglichkeiten und wenden Sie die Fixes an. Vier Überprüfungs-[Agenten](/docs/de/sub-agents) laufen parallel und decken Wiederverwendung vorhandener Helfer, Vereinfachung, Effizienz und ob die Änderung auf der richtigen Abstraktionsebene ist, ab. Die Überprüfung sucht nicht nach Korrektheitsfehler. Verwenden Sie `/code-review`, um Fehler zu finden. Übergeben Sie einen Pfad oder PR-Referenz, um ein bestimmtes Ziel zu überprüfen |146| `/simplify [target]` | **[Skill](/docs/de/skills#bundled-skills).** Prüft den geänderten Code auf Möglichkeiten zur Bereinigung und wendet die Korrekturen an. Vier Review-[Agenten](/docs/de/sub-agents) laufen parallel und decken die Wiederverwendung vorhandener Hilfsfunktionen, Vereinfachung, Effizienz und die Frage ab, ob die Änderung auf der richtigen Abstraktionsebene liegt. Das Review sucht nicht nach Korrektheitsfehlern. Verwenden Sie `/code-review`, um Fehler zu finden. Übergeben Sie einen Pfad oder eine PR-Referenz, um ein bestimmtes Ziel zu prüfen |

147| `/skill-doctor` | Zeigen Sie, was jeder Ihrer [Skills](/docs/de/skills) im Kontext kostet und wie oft er verwendet wird, damit Sie [Skills finden können, die Sie ausschalten können](/docs/de/skills#find-unused-skills). Erfordert Claude Code v2.1.252 oder später und [Feature-Flag-Abruf](/docs/de/env-vars#features-that-need-feature-flag-fetching) |147| `/skill-doctor` | Zeigt, was jeder Ihrer [Skills](/docs/de/skills) an Kontext kostet und wie oft er verwendet wird, damit Sie [Skills finden können, die Sie ausschalten können](/docs/de/skills#find-unused-skills). Erfordert Claude Code v2.1.252 oder höher und das [Abrufen von Feature-Flags](/docs/de/env-vars#features-that-need-feature-flag-fetching) |

148| `/skills` | Listen Sie verfügbare [Skills](/docs/de/skills) auf. Geben Sie ein, um die Liste nach Name, Beschreibung oder Quelle zu filtern. Drücken Sie `t`, um nach Token-Anzahl zu sortieren, `Space` oder `Enter`, um [die Sichtbarkeit eines Skills für Claude und das `/` Menü zu durchlaufen](/docs/de/skills#override-skill-visibility-from-settings), und `Esc`, um zu speichern und zu schließen. Sie können Plugin-Skills, Skills, deren Frontmatter `disable-model-invocation: true` setzt, oder Skills mit einem `skillOverrides` Eintrag in verwalteten Einstellungen oder dem `--settings` Flag nicht durchlaufen |148| `/skills` | Listet verfügbare [Skills](/docs/de/skills) auf. Tippen Sie, um die Liste nach Name, Beschreibung oder Quelle zu filtern. Drücken Sie `t`, um nach Token-Anzahl zu sortieren, `Space` oder `Enter`, um [die Sichtbarkeit eines Skills für Claude und das `/`-Menü durchzuschalten](/docs/de/skills#override-skill-visibility-from-settings), und `Esc`, um zu speichern und zu schließen. Nicht durchschalten können Sie Plugin-Skills, Skills, deren Frontmatter `disable-model-invocation: true` setzt, oder Skills mit einem `skillOverrides`-Eintrag in verwalteten Einstellungen oder im Flag `--settings` |

149| `/slides [brief]` | **[Skill](/docs/de/skills#bundled-skills).** Erstellen Sie eine neue Präsentation als Claude Slides [Artefakt](/docs/de/artifacts#make-a-slide-deck), gefüllt aus Ihrem Brief, z. B. `/slides a quarterly review of the platform team`. Erfordert Claude Code v2.1.265 oder später, eine Sitzung, in der [Artefakte verfügbar sind](/docs/de/artifacts#availability), und ein Konto, in dem die [Slides-Vorlage verfügbar ist](/docs/de/artifacts#start-from-a-slides-design-or-docs-template); andernfalls wird der Befehl nicht angezeigt. Verfügbar auf der Anthropic API. Auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry und Claude Platform auf AWS sind Artefakte nicht verfügbar, daher ist der Befehl dort nicht verfügbar |149| `/slides [brief]` | **[Skill](/docs/de/skills#bundled-skills).** Erstellt eine neue Präsentation als Claude Slides-[Artefakt](/docs/de/artifacts#make-a-slide-deck), befüllt anhand Ihrer Vorgaben, zum Beispiel `/slides a quarterly review of the platform team`. Erfordert Claude Code v2.1.265 oder höher, eine Sitzung, in der [Artefakte verfügbar sind](/docs/de/artifacts#availability), und ein Konto, in dem die [Slides-Vorlage verfügbar ist](/docs/de/artifacts#start-from-a-slides-design-or-docs-template); andernfalls wird der Befehl nicht angezeigt. Verfügbar über die Anthropic API. Auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry und Claude Platform on AWS sind Artefakte nicht verfügbar, daher ist der Befehl dort nicht verfügbar |

150| `/stats` | Alias für `/usage`. Öffnet auf der Registerkarte Stats |150| `/stats` | Alias für `/usage`. Öffnet sich auf dem Tab „Stats“ |

151| `/status` | Öffnen Sie die Einstellungsschnittstelle auf der Registerkarte Status, die Version, Modell, Konto und Konnektivität anzeigt. Eine `Session kind` Zeile liest `background job · attached` oder `background job · unattended` in einer [Hintergrund-Sitzung](/docs/de/agent-view), je nachdem, ob ein Terminal angehängt ist, und `interactive` in jeder anderen Sitzung. Vor v2.1.221 zeigte `/status` diese Zeile nicht. Funktioniert, während Claude antwortet |151| `/status` | Öffnet die Einstellungsoberfläche auf dem Tab „Status“, der Version, Modell, Konto und Konnektivität anzeigt. Eine Zeile `Session kind` lautet in einer [Hintergrundsitzung](/docs/de/agent-view) `background job · attached` oder `background job · unattended`, je nachdem, ob ein Terminal angehängt ist, und in jeder anderen Sitzung `interactive`. Vor v2.1.221 zeigte `/status` diese Zeile nicht an. Funktioniert, während Claude antwortet |

152| `/statusline` | Konfigurieren Sie Claude Code's [Status-Zeile](/docs/de/statusline). Beschreiben Sie, was Sie möchten, oder führen Sie ohne Argumente aus, um automatisch aus Ihrer Shell-Eingabeaufforderung zu konfigurieren |152| `/statusline` | Konfiguriert die [Statuszeile](/docs/de/statusline) von Claude Code. Beschreiben Sie, was Sie möchten, oder führen Sie den Befehl ohne Argumente aus, um die Konfiguration automatisch aus Ihrer Shell-Eingabeaufforderung abzuleiten |

153| `/stickers` | Bestellen Sie Claude Code Aufkleber |153| `/stickers` | Bestellt Claude Code-Sticker |

154| `/stop` | Stoppen Sie die aktuelle [Hintergrund-Sitzung](/docs/de/agent-view). Nur verfügbar, während Sie an einer Hintergrund-Sitzung angehängt sind; das Transkript und alle Worktrees werden beibehalten. Um zu trennen, ohne zu stoppen, verwenden Sie `/exit` oder drücken Sie `←` |154| `/stop` | Stoppt die [Hintergrundsitzung](/docs/de/agent-view), an die Sie angehängt sind, oder diejenige, an die Sie den Befehl als [Peek-Antwort](/docs/de/agent-view#peek-and-reply) senden; das Transkript und ein etwaiger Worktree bleiben erhalten. Um die Sitzung abzutrennen, ohne sie zu stoppen, verwenden Sie `/exit` oder drücken Sie `←` |

155| `/subtask <task>` | Starten Sie einen [gegabelten Subagenten](/docs/de/sub-agents#fork-the-current-conversation): einen Hintergrund-Subagenten, der die vollständige Konversation erbt und an der Aufgabe arbeitet, während Sie weiterarbeiten. Sein Ergebnis kehrt zu dieser Konversation zurück, wenn er fertig ist. Um die Konversation stattdessen in eine separate Hintergrund-Sitzung zu kopieren, verwenden Sie `/fork`. Erfordert Claude Code v2.1.212 oder später; auf v2.1.161 bis v2.1.211 ist dieser Befehl `/fork`. Wenn [Agent-Ansicht ausgeschaltet ist](/docs/de/agent-view#turn-off-agent-view), ist `/subtask` nicht verfügbar und `/fork` behält das gegabelte-Subagenten-Verhalten |155| `/subtask <task>` | Startet einen [geforkten Subagenten](/docs/de/sub-agents#fork-the-current-conversation): einen Hintergrund-Subagenten, der die vollständige Konversation erbt und an der Aufgabe arbeitet, während Sie weiterarbeiten. Sein Ergebnis kehrt nach Abschluss in diese Konversation zurück. Um die Konversation stattdessen in eine separate Hintergrundsitzung zu kopieren, verwenden Sie `/fork`. Erfordert Claude Code v2.1.212 oder höher; in v2.1.161 bis v2.1.211 heißt dieser Befehl `/fork`. Wenn die [Agentenansicht ausgeschaltet ist](/docs/de/agent-view#turn-off-agent-view), ist `/subtask` nicht verfügbar, und `/fork` behält das Verhalten des geforkten Subagenten bei |

156| `/tasks` | Zeigen Sie an und verwalten Sie Hintergrundarbeit in der aktuellen Sitzung, einschließlich Subagenten, die fertig sind. Auch verfügbar als `/bashes` |156| `/tasks` | Zeigt die Hintergrundarbeit in der aktuellen Sitzung an und verwaltet sie, einschließlich bereits abgeschlossener Subagenten. Auch als `/bashes` verfügbar |

157| `/team-onboarding` | Generieren Sie einen Team-Onboarding-Leitfaden aus Ihrem Claude Code Nutzungsverlauf. Claude analysiert Ihre Sitzungen, Befehle und MCP-Server-Nutzung der letzten 30 Tage und erstellt einen Markdown-Leitfaden, den ein Teamkollege als erste Nachricht einfügen kann, um schnell eingerichtet zu werden. Für claude.ai Abonnenten in Pro-, Max-, Team- und Enterprise-Plänen gibt es auch einen Share-Link, den Teamkollegen direkt in Claude Code öffnen können |157| `/team-onboarding` | Erstellt aus Ihrem Claude Code-Nutzungsverlauf eine Onboarding-Anleitung für das Team. Claude analysiert Ihre Sitzungen, Befehle und die Nutzung von MCP-Servern der letzten 30 Tage und erstellt eine Markdown-Anleitung, die ein Teammitglied als erste Nachricht einfügen kann, um schnell einsatzbereit zu sein. Für claude.ai-Abonnenten mit Pro-, Max-, Team- und Enterprise-Plänen wird außerdem ein Freigabelink zurückgegeben, den Teammitglieder direkt in Claude Code öffnen können |

158| `/teleport` | Ziehen Sie eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web#from-cloud-to-terminal) in dieses Terminal. Öffnet eine Auswahl, dann ruft den Branch und die Konversation ab. Auch verfügbar als `/tp`. Erfordert ein claude.ai Abonnement |158| `/teleport` | Holt eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web#from-cloud-to-terminal) in dieses Terminal. Öffnet eine Auswahl und ruft dann den Branch und die Konversation ab. Auch als `/tp` verfügbar. Erfordert ein claude.ai-Abonnement |

159| `/terminal-setup` | [Installieren Sie eine Shift+Enter Tastenbindung für Zeilenumbrüche](/docs/de/terminal-config#enter-multiline-prompts) in VS Code, Cursor, Devin Desktop, Alacritty oder Zed. In Apple Terminal [aktivieren Sie stattdessen Option+Enter für Zeilenumbrüche und schalten Sie die audible Bell aus](/docs/de/terminal-config#enable-option-key-shortcuts-on-macos). In iTerm2 [schalten Sie Clipboard-Zugriff ein, damit `/copy` funktioniert](/docs/de/terminal-config#enable-option-key-shortcuts-on-macos) |159| `/terminal-setup` | [Installiert eine Shift+Enter-Tastenkombination für Zeilenumbrüche](/docs/de/terminal-config#enter-multiline-prompts) in VS Code, Cursor, Devin Desktop, Alacritty oder Zed. Im Apple Terminal wird stattdessen [Option+Enter für Zeilenumbrüche aktiviert und der akustische Signalton ausgeschaltet](/docs/de/terminal-config#enable-option-key-shortcuts-on-macos). In iTerm2 wird [der Zugriff auf die Zwischenablage eingeschaltet, damit `/copy` funktioniert](/docs/de/terminal-config#enable-option-key-shortcuts-on-macos) |

160| `/theme` | Ändern Sie das Farbschema. Enthält eine `auto` Option, die den hellen oder dunklen Hintergrund Ihres Terminals abgleicht, helle und dunkle Varianten, farbenblind-zugängliche (daltonisierte) Designs, ANSI-Designs, die die Farbpalette Ihres Terminals verwenden, und alle [benutzerdefinierten Designs](/docs/de/terminal-config#create-a-custom-theme) aus `~/.claude/themes/` oder Plugins. Wählen Sie **New custom theme…**, um eines zu erstellen |160| `/theme` | Ändert das Farbdesign. Umfasst eine Option `auto`, die sich an den hellen oder dunklen Hintergrund Ihres Terminals anpasst, helle und dunkle Varianten, farbenblindtaugliche (daltonisierte) Designs, ANSI-Designs, die die Farbpalette Ihres Terminals verwenden, sowie alle [benutzerdefinierten Designs](/docs/de/terminal-config#create-a-custom-theme) aus `~/.claude/themes/` oder aus Plugins. Wählen Sie **New custom theme…**, um eines zu erstellen |

161| `/tui [default\|fullscreen]` | Legen Sie den Terminal-UI-Renderer fest und starten Sie ihn mit Ihrer Konversation intakt neu. `fullscreen` aktiviert den [flimmerfreien Alt-Screen-Renderer](/docs/de/fullscreen). Ohne Argument gibt den aktiven Renderer aus |161| `/tui [default\|fullscreen]` | Legt den Renderer der Terminal-Oberfläche fest und startet mit intakter Konversation neu in diesem Renderer. `fullscreen` aktiviert den [flimmerfreien Alt-Screen-Renderer](/docs/de/fullscreen). Ohne Argument wird der aktive Renderer ausgegeben |

162| `/ultraplan <prompt>` | Entfernt. Verwenden Sie stattdessen [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode). Zuvor sendete eine Planungsaufgabe an eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web) zur Überprüfung in Ihrem Browser |162| `/ultraplan <prompt>` | Entfernt. Verwenden Sie stattdessen den [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode). Sendete früher eine Planungsaufgabe an eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web) zur Prüfung in Ihrem Browser |

163| `/ultrareview [PR or branch]` | Führen Sie eine tiefe, Multi-Agent-Code-Überprüfung in einer Cloud-Sandbox mit [ultrareview](/docs/de/ultrareview) aus. Übergeben Sie eine PR-Referenz, um diesen Pull Request zu überprüfen, oder einen Base-Branch oder Commit, um die Vergleichsbasis zu ändern. Die bevorzugte Invokation ist `/code-review ultra`, und `/ultrareview` ist ein Alias. Enthält 3 kostenlose Läufe auf Pro und Max, dann erfordert [Nutzungsguthaben](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) |163| `/ultrareview [PR or branch]` | Führt mit [ultrareview](/docs/de/ultrareview) ein tiefgehendes Multi-Agenten-Code-Review in einer Cloud-Sandbox durch. Übergeben Sie eine PR-Referenz, um diesen Pull Request zu prüfen, oder einen Basis-Branch bzw. Commit, um die Vergleichsbasis zu ändern. Der bevorzugte Aufruf ist `/code-review ultra`, und `/ultrareview` ist ein Alias. Umfasst 3 kostenlose Durchläufe bei Pro und Max und erfordert danach [Nutzungsguthaben](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) |

164| `/update-config [request]` | **[Skill](/docs/de/skills#bundled-skills).** Beschreiben Sie eine Einstellungsänderung, wie z. B. das Zulassen eines Befehls, das Setzen einer Umgebungsvariablen oder das Hinzufügen eines [Hook](/docs/de/hooks), und Claude bearbeitet die passende [`settings.json`](/docs/de/settings) Datei. Für Optionen wie Design und Modell verwenden Sie stattdessen `/config` |164| `/update-config [request]` | **[Skill](/docs/de/skills#bundled-skills).** Beschreiben Sie eine Einstellungsänderung, etwa das Zulassen eines Befehls, das Setzen einer Umgebungsvariable oder das Hinzufügen eines [Hooks](/docs/de/hooks), und Claude bearbeitet die passende [`settings.json`](/docs/de/settings)-Datei. Für Optionen wie Design und Modell verwenden Sie stattdessen `/config` |

165| `/upgrade` | Öffnen Sie die Upgrade-Seite in Ihrem Browser, um zu einem höheren Plan-Tier zu wechseln. Wenn der Browser nicht öffnet, zeigt der Befehl eine Anmeldeaufforderung ohne Drucken der URL |165| `/upgrade` | Öffnet die Upgrade-Seite in Ihrem Browser, um zu einer höheren Planstufe zu wechseln. Wenn sich der Browser nicht öffnen lässt, zeigt der Befehl eine Anmeldeaufforderung an, ohne die URL auszugeben |

166| `/usage` | Zeigen Sie Sitzungskosten, Plan-Nutzungslimits und Aktivitätsstatistiken an. In einem Pro-, Max-, Team- oder Enterprise-Plan enthält eine [Aufschlüsselung, was gegen Ihre Plan-Limits zählt](/docs/de/costs#plan-usage-breakdown). `/cost` und `/stats` sind Aliase |166| `/usage` | Zeigt Sitzungskosten, Nutzungslimits des Plans und Aktivitätsstatistiken an. Bei einem Pro-, Max-, Team- oder Enterprise-Plan ist eine [Aufschlüsselung dessen enthalten, was auf Ihre Planlimits angerechnet wird](/docs/de/costs#plan-usage-breakdown). `/cost` und `/stats` sind Aliasse |

167| `/usage-credits` | Konfigurieren Sie Nutzungsguthaben oder fordern Sie sie von Ihrem Admin an, wenn Sie ein Limit erreichen. Öffnet Ihre [Nutzungsguthaben-Abrechnungseinstellungen](/docs/de/costs#add-usage-credits-to-your-subscription) im Browser, außer dass Team- und Enterprise-Mitglieder ohne Abrechnungszugriff stattdessen eine Nutzungsguthaben-Anfrage von der CLI an ihren Admin senden, nachdem sie in einem Dialog bestätigt haben, dass die Anfrage ihre Admins benachrichtigt. Wenn kein Browser die Abrechnungsseite öffnen kann, z. B. über SSH, gibt der Befehl stattdessen die URL zum Besuchen aus; dies erfordert Claude Code v2.1.205 oder später, und frühere Versionen zeigten in diesem Fall nichts. Zuvor `/extra-usage` |167| `/usage-credits` | Konfiguriert Nutzungsguthaben oder fordert es bei Ihrem Admin an, wenn Sie ein Limit erreichen. Öffnet Ihre [Abrechnungseinstellungen für Nutzungsguthaben](/docs/de/costs#add-usage-credits-to-your-subscription) im Browser, mit der Ausnahme, dass Team- und Enterprise-Mitglieder ohne Abrechnungszugriff stattdessen über die CLI eine Anfrage für Nutzungsguthaben an ihren Admin senden, nachdem sie in einem Dialog bestätigt haben, dass die Anfrage ihre Admins benachrichtigt. Wenn kein Browser die Abrechnungsseite öffnen kann, zum Beispiel über SSH, gibt der Befehl stattdessen die aufzurufende URL aus; dies erfordert Claude Code v2.1.205 oder höher, frühere Versionen zeigten in diesem Fall nichts an. Früher `/extra-usage` |

168| `/verify` | **[Skill](/docs/de/skills#bundled-skills).** Bestätigen Sie, dass eine Code-Änderung das tut, was sie sollte, indem Sie Ihre Projekt-App erstellen, ausführen und das Ergebnis beobachten, anstatt sich auf Tests oder Typ-Überprüfungen zu verlassen. Siehe [Führen Sie Ihre App aus und überprüfen Sie sie](/docs/de/skills#run-and-verify-your-app) |168| `/verify` | **[Skill](/docs/de/skills#bundled-skills).** Bestätigt, dass eine Codeänderung das tut, was sie soll, indem die App Ihres Projekts gebaut, ausgeführt und das Ergebnis beobachtet wird, statt sich auf Tests oder Typprüfungen zu verlassen. Siehe [App ausführen und verifizieren](/docs/de/skills#run-and-verify-your-app) |

169| `/vim` | Entfernt in v2.1.92. Um zwischen Vim und Normal Bearbeitungsmodi zu wechseln, verwenden Sie `/config` → Editor mode |169| `/vim` | In v2.1.92 entfernt. Um zwischen den Bearbeitungsmodi Vim und Normal umzuschalten, verwenden Sie `/config` → Editor mode |

170| `/voice [hold\|tap\|off]` | Schalten Sie [Sprachdiktat](/docs/de/voice-dictation) um, oder aktivieren Sie es in einem bestimmten Modus. Erfordert ein Claude.ai Konto |170| `/voice [hold\|tap\|off]` | Schaltet die [Sprachdiktierfunktion](/docs/de/voice-dictation) um oder aktiviert sie in einem bestimmten Modus. Erfordert ein Claude.ai-Konto |

171| `/web-setup` | Verbinden Sie Ihr GitHub-Konto für [Cloud-Sitzungen](/docs/de/web-quickstart#connect-from-your-terminal) mit Ihren lokalen `gh` CLI-Anmeldedaten |171| `/web-setup` | Verbindet Ihr GitHub-Konto für [Cloud-Sitzungen](/docs/de/web-quickstart#connect-from-your-terminal) mithilfe Ihrer lokalen Anmeldedaten der `gh` CLI |

172| `/workflow-authoring` | **[Skill](/docs/de/skills#bundled-skills).** Laden Sie die Referenz zum Schreiben von [dynamischen Workflow](/docs/de/workflows) Skripten: die Skript-API, Resume-Verhalten, Qualitätsmuster und durchgearbeitete Beispiele. Claude lädt es normalerweise von selbst, bevor ein Skript geschrieben wird; führen Sie es selbst aus, bevor Sie [ein gespeichertes Skript von Hand bearbeiten](/docs/de/workflows#edit-a-saved-script). Verfügbar, wenn dynamische Workflows aktiviert sind, und erfordert Claude Code v2.1.248 oder später |172| `/workflow-authoring` | **[Skill](/docs/de/skills#bundled-skills).** Lädt die Referenz zum Schreiben von Skripten für [dynamische Workflows](/docs/de/workflows): die Skript-API, das Fortsetzungsverhalten, Qualitätsmuster und ausgearbeitete Beispiele. Claude lädt sie normalerweise selbstständig, bevor ein Skript geschrieben wird; führen Sie sie selbst aus, bevor Sie [ein gespeichertes Skript von Hand bearbeiten](/docs/de/workflows#edit-a-saved-script). Verfügbar, wenn dynamische Workflows aktiviert sind, und erfordert Claude Code v2.1.248 oder höher |

173| `/workflows` | Öffnen Sie die [Workflow](/docs/de/workflows#watch-the-run) Fortschrittsansicht, um laufende und abgeschlossene Workflows zu beobachten, zu pausieren, fortzusetzen oder zu speichern |173| `/workflows` | Öffnet die [Workflow](/docs/de/workflows#watch-the-run)-Fortschrittsansicht, um laufende und abgeschlossene Workflows zu beobachten, anzuhalten, fortzusetzen oder zu speichern |

174 174 

175<h2 id="how-the-command-menu-matches-what-you-type">175<h2 id="how-the-command-menu-matches-what-you-type">

176 Wie das Befehlsmenü mit Ihrer Eingabe übereinstimmt176 Wie das Befehlsmenü mit Ihrer Eingabe übereinstimmt

Details

65 Überprüfen Sie Hooks65 Überprüfen Sie Hooks

66</h2>66</h2>

67 67 

68Führen Sie `/hooks` aus, um jeden Hook aufzulisten, der für die aktuelle Sitzung registriert ist, gruppiert nach Ereignis. Wenn ein von Ihnen definierter Hook nicht angezeigt wird, wird er nicht gelesen: Hooks gehen unter den Schlüssel `"hooks"` in einer Einstellungsdatei, nicht in einer eigenständigen Datei.68Führen Sie `/hooks` aus, um jeden Hook aufzulisten, der für die aktuelle Sitzung registriert ist, gruppiert nach Ereignis. Wenn ein von Ihnen definierter Hook nicht angezeigt wird, hat Claude Code ihn nicht geladen. Prüfen Sie, ob eine dieser Ursachen vorliegt:

69 

70* Der Hook ist in einer eigenständigen Datei definiert. Hooks gehören unter den Schlüssel `"hooks"` in einer [Einstellungsdatei](/docs/de/settings#settings-files).

71* Der Wert von `matcher` ist ein Array statt einer einzelnen Zeichenkette. Claude Code listet den Eintrag als ungültige Einstellung auf, wenn Sie eine interaktive Sitzung starten, sowie in `claude doctor`. Wenn sich das Array unter `PreToolUse` oder `PermissionRequest` befindet, wird auch keiner der anderen Hooks dieser Datei geladen.

69 72 

70Wenn der Hook angezeigt wird, aber nicht ausgelöst wird, ist der Matcher die übliche Ursache. Überprüfen Sie ihn auf diese Fehler:73Wenn der Hook angezeigt wird, aber nicht ausgelöst wird, ist der Matcher die übliche Ursache. Überprüfen Sie ihn auf diese Fehler:

71 74 

72* Das Feld `matcher` ist eine einzelne Zeichenkette, die `|` verwendet, um mehrere Tool-Namen zu entsprechen, z. B. `"Edit|Write"`. Ein `,`-Trennzeichen ist gleichwertig, sodass `"Edit,Write"` dieselben Tools entspricht. Vor v2.1.191 wurde ein Komma zur Regex-Auswertung durchgeleitet und der Matcher stimmte nie überein, daher verwenden Sie `|`, wenn Sie nicht auf v2.1.191 sind.75* Das Feld `matcher` ist eine einzelne Zeichenkette, die `|` verwendet, um mehrere Tool-Namen zu entsprechen, z. B. `"Edit|Write"`. Ein `,`-Trennzeichen ist gleichwertig, sodass `"Edit,Write"` dieselben Tools entspricht. Vor v2.1.191 wurde ein Komma zur Regex-Auswertung durchgeleitet und der Matcher stimmte nie überein, daher verwenden Sie `|`, wenn Sie nicht auf v2.1.191 sind.

73* Ein falsch geschriebener Tool-Name erzeugt einen Matcher, der nichts entspricht, sodass der Hook stillschweigend fehlschlägt.76* Ein falsch geschriebener Tool-Name erzeugt einen Matcher, der nichts entspricht, sodass der Hook stillschweigend fehlschlägt.

74* Ein Array-Wert ist ein Schemafehler: Claude Code zeigt einen Einstellungsfehler an und lehnt die gesamte Benutzer-, Projekt- oder lokale Einstellungsdatei ab, `claude doctor` meldet den Validierungsfehler, und kein Hook aus dieser Datei wird in `/hooks` angezeigt. In [verwalteten Einstellungen](/docs/de/managed-settings) löscht Claude Code den gesamten `hooks`-Schlüssel aus der Datei, die das Array enthält, sodass keine Hooks aus dieser Datei gelten. Die anderen Einstellungen der Datei gelten weiterhin, und `claude doctor` listet den gelöschten Schlüssel auf.

75 77 

76Wenn Sie `settings.json` bearbeiten, wird die Änderung in der laufenden Sitzung nach einer kurzen Dateistabilitätsverzögerung wirksam, auch wenn Sie die Datei oder den `.claude/`-Ordner des Projekts selbst nach dem Start der Sitzung erstellen. Sie müssen nicht neu starten. Vor v2.1.257 erkannte Claude Code Bearbeitungen in einem `.claude/`-Ordner, der nach dem Start der Sitzung erstellt wurde, nicht.78Wenn Sie `settings.json` bearbeiten, wird die Änderung in der laufenden Sitzung nach einer kurzen Dateistabilitätsverzögerung wirksam, auch wenn Sie die Datei oder den `.claude/`-Ordner des Projekts selbst nach dem Start der Sitzung erstellen. Sie müssen nicht neu starten. Vor v2.1.257 erkannte Claude Code Bearbeitungen in einem `.claude/`-Ordner, der nach dem Start der Sitzung erstellt wurde, nicht.

77 79 

env-vars.md +2 −1

Details

205| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | Stall-Timeout in Millisekunden für Subagents. Standard `600000` (10 Minuten); wenn Sie `CLAUDE_STREAM_IDLE_TIMEOUT_MS` erhöhen, während der Stream-Watchdog eingeschaltet ist, steigt der Standard mit ihm, wie [Langsame oder steckengebliebene API-Antworten handhaben](/docs/de/agent-sdk/typescript#handle-slow-or-stalled-api-responses) beschreibt. Der Timer setzt sich bei jedem Streaming-Fortschrittsereignis zurück; wenn kein Fortschritt innerhalb des Fensters ankommt, bricht Claude Code den Subagent ab und meldet den Stall dem übergeordneten |205| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | Stall-Timeout in Millisekunden für Subagents. Standard `600000` (10 Minuten); wenn Sie `CLAUDE_STREAM_IDLE_TIMEOUT_MS` erhöhen, während der Stream-Watchdog eingeschaltet ist, steigt der Standard mit ihm, wie [Langsame oder steckengebliebene API-Antworten handhaben](/docs/de/agent-sdk/typescript#handle-slow-or-stalled-api-responses) beschreibt. Der Timer setzt sich bei jedem Streaming-Fortschrittsereignis zurück; wenn kein Fortschritt innerhalb des Fensters ankommt, bricht Claude Code den Subagent ab und meldet den Stall dem übergeordneten |

206| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | Setzen Sie den Prozentsatz (1-100) des Auto-Compact-Fensters, bei dem Auto-Compaction ausgelöst wird. Verwenden Sie niedrigere Werte wie `50`, um früher zu komprimieren; die Variable kann die Schwelle nicht erhöhen, daher werden Werte über dem Standard-Prozentsatz ignoriert. Sie gilt nur in Sitzungen, die [vor dem Kontext-Limit des Modells komprimieren](/docs/de/model-config#context-window-and-auto-compaction). Gilt für Hauptkonversationen und Subagents |206| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | Setzen Sie den Prozentsatz (1-100) des Auto-Compact-Fensters, bei dem Auto-Compaction ausgelöst wird. Verwenden Sie niedrigere Werte wie `50`, um früher zu komprimieren; die Variable kann die Schwelle nicht erhöhen, daher werden Werte über dem Standard-Prozentsatz ignoriert. Sie gilt nur in Sitzungen, die [vor dem Kontext-Limit des Modells komprimieren](/docs/de/model-config#context-window-and-auto-compaction). Gilt für Hauptkonversationen und Subagents |

207| `CLAUDE_AUTO_BACKGROUND_TASKS` | Setzen Sie auf `1`, um automatisches Backgrounding von lang laufenden Agent-Aufgaben zu erzwingen. Wenn aktiviert, werden Subagents nach etwa zwei Minuten Laufzeit in den Hintergrund verschoben. Aktiviert auch [automatisches Backgrounding von langen MCP-Tool-Aufrufen](/docs/de/mcp#automatic-backgrounding-of-long-tool-calls) im nicht-interaktiven Modus auf Claude Code v2.1.212 oder später |207| `CLAUDE_AUTO_BACKGROUND_TASKS` | Setzen Sie auf `1`, um automatisches Backgrounding von lang laufenden Agent-Aufgaben zu erzwingen. Wenn aktiviert, werden Subagents nach etwa zwei Minuten Laufzeit in den Hintergrund verschoben. Aktiviert auch [automatisches Backgrounding von langen MCP-Tool-Aufrufen](/docs/de/mcp#automatic-backgrounding-of-long-tool-calls) im nicht-interaktiven Modus auf Claude Code v2.1.212 oder später |

208| `CLAUDE_AX_PREPARK_MS` | Im [Screen-Reader-Modus](/docs/de/accessibility#what-your-screen-reader-hears) wie viele Millisekunden Claude Code wartet, mit dem Cursor am Anfang der Zeile, bevor es eine neue oder geänderte Zeile schreibt. Standard `50`. Setzen Sie `0`, um sofort zu schreiben. Claude Code begrenzt das Warten auf `5000`. Erfordert Claude Code v2.1.233 oder später |208| `CLAUDE_AX_PREPARK_MS` | Im [Screenreader-Modus](/docs/de/accessibility): wie viele Millisekunden 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 Standard `50`. Claude Code begrenzt die Wartezeit auf `5000`. Erfordert Claude Code v2.1.233 oder neuer |

209| `CLAUDE_AX_SCREEN_READER` | Setzen Sie auf `1`, um Screen-Reader-freundliche Ausgabe zu rendern: flacher Text ohne dekorative Rahmen oder Animationen. Setzen Sie auf `0`, um Screen-Reader-Modus zu erzwingen, auch wenn [`axScreenReader`](/docs/de/settings-reference#axscreenreader) `true` ist. Das [`--ax-screen-reader`](/docs/de/cli-reference#cli-flags)-Flag hat Vorrang. Erfordert Claude Code v2.1.181 oder später |209| `CLAUDE_AX_SCREEN_READER` | Setzen Sie auf `1`, um Screen-Reader-freundliche Ausgabe zu rendern: flacher Text ohne dekorative Rahmen oder Animationen. Setzen Sie auf `0`, um Screen-Reader-Modus zu erzwingen, auch wenn [`axScreenReader`](/docs/de/settings-reference#axscreenreader) `true` ist. Das [`--ax-screen-reader`](/docs/de/cli-reference#cli-flags)-Flag hat Vorrang. Erfordert Claude Code v2.1.181 oder später |

210| `CLAUDE_AX_STARTUP_QUIET_MS` | Im [Screen-Reader-Modus](/docs/de/accessibility) wie viele Millisekunden Claude Code das erste Interface-Rendering nach der Startup-Bestätigungszeile hält, damit Ihr Screen Reader die Zeile vollständig sprechen kann, bevor neue Ausgabe sie unterbricht. Standard `3000`. Setzen Sie `0`, um sofort zu rendern. Claude Code begrenzt das Halten auf `600000` (10 Minuten). Ihr erster Tastendruck beendet das Halten früh. Erfordert Claude Code v2.1.217 oder später |210| `CLAUDE_AX_STARTUP_QUIET_MS` | Im [Screen-Reader-Modus](/docs/de/accessibility) wie viele Millisekunden Claude Code das erste Interface-Rendering nach der Startup-Bestätigungszeile hält, damit Ihr Screen Reader die Zeile vollständig sprechen kann, bevor neue Ausgabe sie unterbricht. Standard `3000`. Setzen Sie `0`, um sofort zu rendern. Claude Code begrenzt das Halten auf `600000` (10 Minuten). Ihr erster Tastendruck beendet das Halten früh. Erfordert Claude Code v2.1.217 oder später |

211| `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR` | Kehren Sie nach jedem Bash- oder PowerShell-Befehl in der Hauptsitzung zum ursprünglichen Arbeitsverzeichnis zurück |211| `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR` | Kehren Sie nach jedem Bash- oder PowerShell-Befehl in der Hauptsitzung zum ursprünglichen Arbeitsverzeichnis zurück |


245| `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN` | Setzen Sie auf `1`, um [Vollbild-Rendering](/docs/de/fullscreen) zu deaktivieren und den klassischen Main-Screen-Renderer zu verwenden. Die Konversation bleibt in Ihrem Terminal's nativen Scrollback, daher funktionieren `Cmd+f` und tmux Copy-Modus wie gewohnt. Hat Vorrang vor `CLAUDE_CODE_NO_FLICKER` und der [`tui`](/docs/de/settings-reference#tui)-Einstellung. Sie können auch mit `/tui default` wechseln. Gilt nicht für Hintergrund-Sitzungen, die von [Agent-Ansicht](/docs/de/agent-view) geöffnet werden, die immer Vollbild-Rendering verwenden |245| `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN` | Setzen Sie auf `1`, um [Vollbild-Rendering](/docs/de/fullscreen) zu deaktivieren und den klassischen Main-Screen-Renderer zu verwenden. Die Konversation bleibt in Ihrem Terminal's nativen Scrollback, daher funktionieren `Cmd+f` und tmux Copy-Modus wie gewohnt. Hat Vorrang vor `CLAUDE_CODE_NO_FLICKER` und der [`tui`](/docs/de/settings-reference#tui)-Einstellung. Sie können auch mit `/tui default` wechseln. Gilt nicht für Hintergrund-Sitzungen, die von [Agent-Ansicht](/docs/de/agent-view) geöffnet werden, die immer Vollbild-Rendering verwenden |

246| `CLAUDE_CODE_DISABLE_ARTIFACT` | Setzen Sie auf `1`, um das [Artifact](/docs/de/artifacts)-Tool auszuschalten, das Sitzungsausgabe als private Webseite auf claude.ai veröffentlicht. Sobald Sie es setzen, schaltet keine Einstellungsdatei das Tool wieder ein. Um das Tool stattdessen aus einer Einstellungsdatei auszuschalten, setzen Sie [`enableArtifact`](/docs/de/settings-reference#enableartifact) auf `false`; der veraltete [`disableArtifact`](/docs/de/settings-reference#disableartifact)-Schlüssel schaltet es auch aus |246| `CLAUDE_CODE_DISABLE_ARTIFACT` | Setzen Sie auf `1`, um das [Artifact](/docs/de/artifacts)-Tool auszuschalten, das Sitzungsausgabe als private Webseite auf claude.ai veröffentlicht. Sobald Sie es setzen, schaltet keine Einstellungsdatei das Tool wieder ein. Um das Tool stattdessen aus einer Einstellungsdatei auszuschalten, setzen Sie [`enableArtifact`](/docs/de/settings-reference#enableartifact) auf `false`; der veraltete [`disableArtifact`](/docs/de/settings-reference#disableartifact)-Schlüssel schaltet es auch aus |

247| `CLAUDE_CODE_DISABLE_ATTACHMENTS` | Setzen Sie auf `1`, um die Anhang-Verarbeitung zu deaktivieren. Datei-Erwähnungen mit `@`-Syntax werden als einfacher Text gesendet, anstatt in Dateiinhalt erweitert zu werden |247| `CLAUDE_CODE_DISABLE_ATTACHMENTS` | Setzen Sie auf `1`, um die Anhang-Verarbeitung zu deaktivieren. Datei-Erwähnungen mit `@`-Syntax werden als einfacher Text gesendet, anstatt in Dateiinhalt erweitert zu werden |

248| `CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK` | Auf `1` setzen, damit ein Claude-Code-Prozess seinen [`gcpAuthRefresh`](/docs/de/settings-reference#gcpauthrefresh)- oder [`awsAuthRefresh`](/docs/de/settings-reference#awsauthrefresh)-Befehl selbst ausführt, statt zu warten, während ein anderer Prozess ihn ausführt. Erfordert Claude Code v2.1.286 oder neuer |

248| `CLAUDE_CODE_DISABLE_AUTO_MEMORY` | Setzen Sie auf `1`, um [Auto-Memory](/docs/de/memory#auto-memory) zu deaktivieren. Setzen Sie auf `0`, um Auto-Memory zu erzwingen, auch wenn `--bare`-Modus oder [`autoMemoryEnabled: false`](/docs/de/settings-reference#automemoryenabled) es andernfalls deaktivieren würde. Wenn deaktiviert, erstellt oder lädt Claude keine Auto-Memory-Dateien |249| `CLAUDE_CODE_DISABLE_AUTO_MEMORY` | Setzen Sie auf `1`, um [Auto-Memory](/docs/de/memory#auto-memory) zu deaktivieren. Setzen Sie auf `0`, um Auto-Memory zu erzwingen, auch wenn `--bare`-Modus oder [`autoMemoryEnabled: false`](/docs/de/settings-reference#automemoryenabled) es andernfalls deaktivieren würde. Wenn deaktiviert, erstellt oder lädt Claude keine Auto-Memory-Dateien |

249| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Setzen Sie auf `1`, um alle Hintergrund-Task-Funktionalität zu deaktivieren, einschließlich des `run_in_background`-Parameters auf Bash- und Subagent-Tools, Auto-Backgrounding und der Ctrl+B-Verknüpfung |250| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Setzen Sie auf `1`, um alle Hintergrund-Task-Funktionalität zu deaktivieren, einschließlich des `run_in_background`-Parameters auf Bash- und Subagent-Tools, Auto-Backgrounding und der Ctrl+B-Verknüpfung |

250| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_DEFAULT` | Setzen Sie auf `1`, um Claude Code davon abzuhalten, eine [Amazon Bedrock](/docs/de/amazon-bedrock)-Streaming-Antwort mit fehlender oder leerer `Content-Type`-Header als Amazon Bedrock's binären Event-Stream zu behandeln. Standardmäßig geht Claude Code davon aus, dass ein Gateway den Header aus einer ansonsten unveränderten Antwort gelöscht hat, daher dekodiert es den Body und Streaming funktioniert weiter. Setzen Sie dies nur für ein Gateway, das den Stream auch als Server-Sent-Events erneut ausgibt; Claude Code liest dann den Header-losen Body als Server-Sent-Events statt. Erfordert Claude Code v2.1.239 oder später |251| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_DEFAULT` | Setzen Sie auf `1`, um Claude Code davon abzuhalten, eine [Amazon Bedrock](/docs/de/amazon-bedrock)-Streaming-Antwort mit fehlender oder leerer `Content-Type`-Header als Amazon Bedrock's binären Event-Stream zu behandeln. Standardmäßig geht Claude Code davon aus, dass ein Gateway den Header aus einer ansonsten unveränderten Antwort gelöscht hat, daher dekodiert es den Body und Streaming funktioniert weiter. Setzen Sie dies nur für ein Gateway, das den Stream auch als Server-Sent-Events erneut ausgibt; Claude Code liest dann den Header-losen Body als Server-Sent-Events statt. Erfordert Claude Code v2.1.239 oder später |

errors.md +757 −732

Details

75| `Remote Control stopped — the app running this session is now signed in to a different Claude account` | [Authentifizierung](#remote-control-stopped-because-the-app-running-the-session-signed-out-or-switched-accounts) |75| `Remote Control stopped — the app running this session is now signed in to a different Claude account` | [Authentifizierung](#remote-control-stopped-because-the-app-running-the-session-signed-out-or-switched-accounts) |

76| `Remote Control stopped — the app running this session is signed out of Claude` | [Authentifizierung](#remote-control-stopped-because-the-app-running-the-session-signed-out-or-switched-accounts) |76| `Remote Control stopped — the app running this session is signed out of Claude` | [Authentifizierung](#remote-control-stopped-because-the-app-running-the-session-signed-out-or-switched-accounts) |

77| `Couldn't verify your organization's policy for remote control` | [Fehlerbehebung für Remote Control](/docs/de/remote-control#couldnt-verify-your-organizations-policy-for-remote-control) |77| `Couldn't verify your organization's policy for remote control` | [Fehlerbehebung für Remote Control](/docs/de/remote-control#couldnt-verify-your-organizations-policy-for-remote-control) |

78| `Remote Control is disabled by your organization's policy` | [Fehlerbehebung für Remote Control](/docs/de/remote-control#remote-control-is-disabled-by-your-organizations-policy) |

79| `Remote Control was turned off by your organization's policy` | [Fehlerbehebung für Remote Control](/docs/de/remote-control#remote-control-was-turned-off-by-your-organizations-policy) |

78| `OAuth token revoked` / `OAuth token has expired` | [Authentifizierung](#oauth-token-revoked-or-expired) |80| `OAuth token revoked` / `OAuth token has expired` | [Authentifizierung](#oauth-token-revoked-or-expired) |

79| `API Error: 401 Invalid authentication credentials` | [Authentifizierung](#api-error-401-invalid-authentication-credentials) |81| `API Error: 401 Invalid authentication credentials` | [Authentifizierung](#api-error-401-invalid-authentication-credentials) |

80| `Login expired · Please run /login` | [Authentifizierung](#login-expired) |82| `Login expired · Please run /login` | [Authentifizierung](#login-expired) |


186| `The connection dropped while downloading the update` | [Installationsfehler](#the-connection-dropped-while-downloading-the-update) |188| `The connection dropped while downloading the update` | [Installationsfehler](#the-connection-dropped-while-downloading-the-update) |

187| `Download timed out: exceeded the total deadline` | [Installationsfehler](#the-connection-dropped-while-downloading-the-update) |189| `Download timed out: exceeded the total deadline` | [Installationsfehler](#the-connection-dropped-while-downloading-the-update) |

188| `--bg and --print conflict` | [Befehlszeilenfehler](#conflict-between-bg-and-print) |190| `--bg and --print conflict` | [Befehlszeilenfehler](#conflict-between-bg-and-print) |

191| `Error: Cannot use both --append-subagent-system-prompt and --append-subagent-system-prompt-file. Please use only one.` | [Befehlszeilenfehler](#conflict-between-a-system-prompt-flag-and-its-file-form) |

189| `Cloud sessions cannot be created from a --restricted session` | [Befehlszeilenfehler](#cloud-sessions-cannot-be-created-from-a-restricted-session) |192| `Cloud sessions cannot be created from a --restricted session` | [Befehlszeilenfehler](#cloud-sessions-cannot-be-created-from-a-restricted-session) |

190| `Cloud sessions are disabled by your organization's policy` | [Befehlszeilenfehler](#cloud-sessions-are-disabled-by-your-organizations-policy) |193| `Cloud sessions are disabled by your organization's policy` | [Befehlszeilenfehler](#cloud-sessions-are-disabled-by-your-organizations-policy) |

191| `Couldn't verify your organization's policy for cloud sessions` | [Befehlszeilenfehler](#cloud-sessions-are-disabled-by-your-organizations-policy) |194| `Couldn't verify your organization's policy for cloud sessions` | [Befehlszeilenfehler](#cloud-sessions-are-disabled-by-your-organizations-policy) |


246| `Marketplace name impersonates an official Anthropic/Claude marketplace` | [Plugin-Fehler](#claude-code-refuses-the-marketplace-name) |249| `Marketplace name impersonates an official Anthropic/Claude marketplace` | [Plugin-Fehler](#claude-code-refuses-the-marketplace-name) |

247| `Marketplace "<name>" is already added from a different source` | [Plugin-Fehler](#marketplace-is-already-added-from-a-different-source) |250| `Marketplace "<name>" is already added from a different source` | [Plugin-Fehler](#marketplace-is-already-added-from-a-different-source) |

248| `"<name>" is another spelling of "<reserved>", a reserved marketplace name` | [Plugin-Fehler](#marketplace-name-is-another-spelling-of-a-reserved-name) |251| `"<name>" is another spelling of "<reserved>", a reserved marketplace name` | [Plugin-Fehler](#marketplace-name-is-another-spelling-of-a-reserved-name) |

252| `Marketplace "<name>" is added but ignored` | [Plugin-Fehlerbehebung](/docs/de/plugins/troubleshooting#marketplace-is-added-but-ignored) |

253| `Marketplace "<name>" is registered but was refused (see the debug log)` | [Plugin-Fehlerbehebung](/docs/de/plugins/troubleshooting#marketplace-is-added-but-ignored) |

249| `references ${user_config.*} in a shell-form command` | [Plugin-Fehler](#plugin-command-references-user-config) |254| `references ${user_config.*} in a shell-form command` | [Plugin-Fehler](#plugin-command-references-user-config) |

250| `Monitor "<name>" from plugin <plugin> references ${user_config.*} in its command` | [Plugin-Fehler](#plugin-command-references-user-config) |255| `Monitor "<name>" from plugin <plugin> references ${user_config.*} in its command` | [Plugin-Fehler](#plugin-command-references-user-config) |

251| `headersHelper for MCP server '<name>' references ${user_config.*}` | [Plugin-Fehler](#plugin-command-references-user-config) |256| `headersHelper for MCP server '<name>' references ${user_config.*}` | [Plugin-Fehler](#plugin-command-references-user-config) |

252| `Plugin archive integrity check failed` | [Plugin-Fehler](#plugin-archive-integrity-check-failed) |257| `Plugin archive integrity check failed` | [Plugin-Fehler](#plugin-archive-integrity-check-failed) |

258| `An npm plugin source must name a registry package` | [Plugin-Fehlerbehebung](/docs/de/plugins/troubleshooting#an-npm-plugin-source-must-name-a-registry-package) |

253| `path escapes plugin directory` | [Plugin-Fehler](#path-escapes-plugin-directory) |259| `path escapes plugin directory` | [Plugin-Fehler](#path-escapes-plugin-directory) |

254| `path could not be checked` | [Plugin-Fehler](#path-could-not-be-checked) |260| `path could not be checked` | [Plugin-Fehler](#path-could-not-be-checked) |

255| `its marketplace entry path does not stay inside the marketplace directory` | [Plugin-Fehler](#marketplace-entry-path-does-not-stay-inside-the-marketplace-directory) |261| `its marketplace entry path does not stay inside the marketplace directory` | [Plugin-Fehler](#marketplace-entry-path-does-not-stay-inside-the-marketplace-directory) |


418 Serverfehler424 Serverfehler

419</h2>425</h2>

420 426 

421Die meisten dieser Fehler stammen vom Inferenzanbieter: Anthropic's Service auf der Anthropic API und dem Service hinter dem Endpunkt dieses Anbieters auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder einem benutzerdefinierten Gateway. [Auto-Modus kann die Sicherheit einer Aktion nicht bestimmen](#auto-mode-cannot-determine-the-safety-of-an-action) und [Agent wurde vorzeitig aufgrund eines API-Fehlers beendet](#agent-terminated-early-due-to-an-api-error) behandeln auch Ursachen auf Ihrer Seite, wie z. B. ein Amazon Bedrock-Konto, das das Klassifizierungsmodell nicht aufrufen kann, oder einen Subagenten, der ein Nutzungslimit erreicht hat.427Die meisten dieser Fehler stammen vom Inferenzanbieter: Anthropic's Service auf der Anthropic API und dem Service hinter dem Endpunkt dieses Anbieters auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder einem benutzerdefinierten Gateway. [Auto-Modus kann die Sicherheit einer Aktion nicht bestimmen](#auto-mode-cannot-determine-the-safety-of-an-action) und [Agent wurde vorzeitig aufgrund eines API-Fehlers beendet](#agent-terminated-early-due-to-an-api-error) behandeln auch Ursachen auf Ihrer Seite, wie z. B. ein Amazon Bedrock-Konto, das das Klassifikatormodell nicht aufrufen kann, oder einen Subagenten, der ein Nutzungslimit erreicht hat.

422 428 

423<h3 id="api-error-500-internal-server-error">429<h3 id="api-error-500-internal-server-error">

424 API-Fehler: 500 Interner Serverfehler430 API-Fehler: 500 Interner Serverfehler


430API Error: 500 Internal server error. This is a server-side issue, usually temporary — try again in a moment. If it persists, check https://status.claude.com.436API Error: 500 Internal server error. This is a server-side issue, usually temporary — try again in a moment. If it persists, check https://status.claude.com.

431```437```

432 438 

433Der abschließende Satz nennt den Ort, an dem die Serviceintegrität überprüft werden kann, und variiert je nach Anbieter. Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry-Konfigurationen nennen die Servicestatuseite dieses Anbieters. Eine benutzerdefinierte `ANTHROPIC_BASE_URL` nennt den Gateway-Host.439Der abschließende Satz nennt den Ort, an dem die Serviceintegrität überprüft werden kann, und variiert je nach Anbieter. Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry-Konfigurationen nennen die Servicestatusseite dieses Anbieters. Eine benutzerdefinierte `ANTHROPIC_BASE_URL` nennt den Gateway-Host.

434 440 

435Ein 5xx von der API selbst zeigt einen unerwarteten Fehler innerhalb der API an. Er wird nicht durch Ihren Prompt, Ihre Einstellungen oder Ihr Konto verursacht.441Ein 5xx von der API selbst zeigt einen unerwarteten Fehler innerhalb der API an. Er wird nicht durch Ihren Prompt, Ihre Einstellungen oder Ihr Konto verursacht.

436 442 

437Wenn ein Proxy, Load Balancer oder Gateway mit einer HTML-Fehlerseite antwortet, zeigt die Nachricht den Statuscode und den Titel der Seite an, wie z. B. `API Error: 502 Bad Gateway`. Für eine Seite ohne Titel zeigt die Nachricht den Statuscode und seinen Standardnamen stattdessen an. Vor v2.1.281 wurde der Statuscode gelöscht, wenn die Seite einen Titel hatte, und das rohe Markup der Seite wurde gedruckt, wenn sie keinen hatte.443Wenn ein Proxy, Load Balancer oder Gateway mit einer HTML-Fehlerseite antwortet, zeigt die Nachricht den Statuscode und den Titel der Seite an, wie z. B. `API Error: 502 Bad Gateway`. Für eine Seite ohne Titel zeigt die Nachricht stattdessen den Statuscode und seinen Standardnamen an. Vor v2.1.281 wurde der Statuscode weggelassen, wenn die Seite einen Titel hatte, und das rohe Markup der Seite wurde ausgegeben, wenn sie keinen hatte.

438 444 

439**Was zu tun ist:**445**Was zu tun ist:**

440 446 

441* Überprüfen Sie [status.claude.com](https://status.claude.com) oder die im Fehler genannte Anbieter-Statusseite auf aktive Vorfälle447* Überprüfen Sie [status.claude.com](https://status.claude.com) oder die in der Nachricht genannte Anbieter-Statusseite auf aktive Vorfälle

442* Warten Sie eine Minute und senden Sie Ihre Nachricht erneut. Ihre ursprüngliche Nachricht befindet sich noch in der Konversation, sodass Sie bei einem langen Prompt `try again` eingeben können, anstatt alles erneut einzufügen.448* Warten Sie eine Minute und senden Sie Ihre Nachricht erneut. Ihre ursprüngliche Nachricht befindet sich noch in der Konversation, sodass Sie bei einem langen Prompt `try again` eingeben können, anstatt alles erneut einzufügen.

443* Wenn der Fehler ohne einen veröffentlichten Vorfall weiterhin auftritt, führen Sie `/feedback` aus, damit Anthropic Ihre Anfrageinformationen untersuchen kann. Siehe [Fehler melden](#report-an-error), wenn `/feedback` in Ihrer Umgebung nicht verfügbar ist.449* Wenn der Fehler ohne einen veröffentlichten Vorfall weiterhin auftritt, führen Sie `/feedback` aus, damit Anthropic Ihre Anfrageinformationen untersuchen kann. Siehe [Fehler melden](#report-an-error), wenn `/feedback` in Ihrer Umgebung nicht verfügbar ist.

444 450 


446 API-Fehler: Wiederholte 529 Overloaded-Fehler452 API-Fehler: Wiederholte 529 Overloaded-Fehler

447</h3>453</h3>

448 454 

449Die API ist vorübergehend über alle Benutzer hinweg ausgelastet. Claude Code hat bereits mehrmals versucht, bevor diese Nachricht angezeigt wird:455Die API ist vorübergehend über alle Benutzer hinweg ausgelastet. Claude Code hat es bereits mehrmals erneut versucht, bevor diese Nachricht angezeigt wird:

450 456 

451```text theme={null}457```text theme={null}

452API Error: Repeated 529 Overloaded errors. The API is at capacity — this is usually temporary. Try again in a moment. If it persists, check https://status.claude.com.458API Error: Repeated 529 Overloaded errors. The API is at capacity — this is usually temporary. Try again in a moment. If it persists, check https://status.claude.com.


458 464 

459**Was zu tun ist:**465**Was zu tun ist:**

460 466 

461* Überprüfen Sie [status.claude.com](https://status.claude.com) oder die im Fehler genannte Anbieter-Statusseite auf Kapazitätsmitteilungen467* Überprüfen Sie [status.claude.com](https://status.claude.com) oder die in der Nachricht genannte Anbieter-Statusseite auf Kapazitätsmitteilungen

462* Versuchen Sie es in ein paar Minuten erneut468* Versuchen Sie es in ein paar Minuten erneut

463* Führen Sie `/model` aus und wechseln Sie zu einem anderen Modell, um weiterarbeiten zu können, da die Kapazität pro Modell verfolgt wird. Claude Code fordert Sie dazu auf, wenn ein Modell unter besonders hoher Last steht, z. B. `Opus is experiencing high load, please use /model to switch to Sonnet`. Bei Fable-Modellen nennt die Nachricht Fable.469* Führen Sie `/model` aus und wechseln Sie zu einem anderen Modell, um weiterarbeiten zu können, da die Kapazität pro Modell verfolgt wird. Claude Code fordert Sie dazu auf, wenn ein Modell unter besonders hoher Last steht, z. B. `Opus is experiencing high load, please use /model to switch to Sonnet`. Bei Fable-Modellen nennt die Nachricht Fable.

464 470 


474Request timed out480Request timed out

475```481```

476 482 

477Dies kann während Zeiten hoher Last auftreten oder wenn das Modell eine sehr große Antwort generiert. Das Standard-Anfrage-Zeitlimit beträgt 10 Minuten.483Dies kann während Zeiten hoher Last auftreten oder wenn das Modell eine sehr große Antwort generiert. Der Standard-Timeout für Anfragen beträgt 10 Minuten.

478 484 

479**Was zu tun ist:**485**Was zu tun ist:**

480 486 


486 Keine Antwort von der API492 Keine Antwort von der API

487</h3>493</h3>

488 494 

489Claude Code hat eine Streaming-Anfrage gesendet und die API hat keine Antwortheader innerhalb der Frist für das erste Byte zurückgegeben, sodass Claude Code die Anfrage abgebrochen hat, anstatt auf das vollständige `API_TIMEOUT_MS`-Anfrage-Zeitlimit von standardmäßig 10 Minuten zu warten. Claude Code sendet die Anfrage höchstens einmal erneut, wenn das [Wiederholungsbudget](#tune-retry-behavior) dies zulässt. Wenn die Wiederholung auch unbeantwortet bleibt, endet der Zug mit dieser Nachricht, die anzeigt, wie lange jeder Versuch gewartet hat. Wenn Sie [`CLAUDE_CODE_RETRY_WATCHDOG`](/docs/de/env-vars) setzen, gilt die Einfach-Wiederholung nicht und Claude Code versucht es unter dem in [Wiederholungsverhalten abstimmen](#tune-retry-behavior) beschriebenen Budget erneut.495Claude Code hat eine Streaming-Anfrage gesendet und die API hat keine Response-Header innerhalb der Frist für das erste Byte zurückgegeben, sodass Claude Code die Anfrage abgebrochen hat, anstatt auf den vollständigen `API_TIMEOUT_MS`-Anfrage-Timeout von standardmäßig 10 Minuten zu warten. Claude Code sendet die Anfrage höchstens einmal erneut, wenn das [Wiederholungsbudget](#tune-retry-behavior) dies zulässt. Wenn auch der Wiederholungsversuch unbeantwortet bleibt, endet der Turn mit dieser Nachricht, die anzeigt, wie lange jeder Versuch gewartet hat. Wenn Sie [`CLAUDE_CODE_RETRY_WATCHDOG`](/docs/de/env-vars) setzen, gilt die Begrenzung auf einen Wiederholungsversuch nicht und Claude Code versucht es unter dem in [Wiederholungsverhalten abstimmen](#tune-retry-behavior) beschriebenen Budget erneut.

490 496 

491```text theme={null}497```text theme={null}

492API Error: No response from API (waited 3m, then 10m on the retry). If a proxy or gateway on your network holds responses until they complete, raise API_TIMEOUT_MS or CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS to wait longer.498API Error: No response from API (waited 3m, then 10m on the retry). If a proxy or gateway on your network holds responses until they complete, raise API_TIMEOUT_MS or CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS to wait longer.

493```499```

494 500 

495Claude Code setzt die Wartezeit für Antwortheader des ersten Versuchs und die Wiederholung separat:501Claude Code legt die Wartezeit des ersten Versuchs auf Response-Header und die des Wiederholungsversuchs separat fest:

496 502 

497* **Erster Versuch**: [`CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS`](/docs/de/env-vars), wenn Sie es auf 1 oder mehr setzen, begrenzt auf zwischen 10 Sekunden und 30 Minuten. Andernfalls verwendet Claude Code das Byte-Level-Watchdog-Zeitlimit, das in [Streaming-Idle-Watchdogs](/docs/de/network-config#streaming-idle-watchdogs) aufgelistet ist, sodass die Variablen, die dieses Zeitlimit ändern, auch diese Wartezeit ändern. In jedem Fall fügt Claude Code eine Sekunde für alle 32 KB des Anfragekörpers hinzu.503* **Erster Versuch**: [`CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS`](/docs/de/env-vars), wenn Sie es auf 1 oder mehr setzen, begrenzt auf zwischen 10 Sekunden und 30 Minuten. Andernfalls verwendet Claude Code den Byte-Level-Watchdog-Timeout, der in [Streaming-Idle-Watchdogs](/docs/de/network-config#streaming-idle-watchdogs) aufgelistet ist, sodass die Variablen, die diesen Timeout ändern, auch diese Wartezeit ändern. In jedem Fall fügt Claude Code eine Sekunde für alle 32 KB des Anfragekörpers hinzu.

498* **Wiederholung**: eine Sekunde weniger als `API_TIMEOUT_MS`, knapp unter 10 Minuten standardmäßig, damit die Wiederholung länger als ein Proxy oder Gateway dauern kann, das die Antwort bis zum Abschluss der Generierung hält. Bei Amazon Bedrock verwendet die Wiederholung die gleiche Frist wie der erste Versuch, und die Nachricht zeigt eine Dauer statt zwei an.504* **Wiederholungsversuch**: eine Sekunde weniger als `API_TIMEOUT_MS`, standardmäßig knapp unter 10 Minuten, damit der Wiederholungsversuch einen Proxy oder ein Gateway überdauern kann, das die Antwort bis zum Abschluss der Generierung zurückhält. Bei Amazon Bedrock verwendet der Wiederholungsversuch die gleiche Frist wie der erste Versuch, und die Nachricht zeigt eine Dauer statt zwei an.

499 505 

500Keine Wartezeit überschreitet eine Sekunde weniger als ein positives `API_TIMEOUT_MS`, und ein positives `API_TIMEOUT_MS` unter 11 Sekunden deaktiviert die Frist. Der Byte-Level-Watchdog startet erst, nachdem die Antwortheader ankommen, sodass eine Antwort, die nach diesem Punkt das Senden von Bytes stoppt, stattdessen den [Stalled-Stream-Regeln](#automatic-retries) folgt.506Keine Wartezeit überschreitet eine Sekunde weniger als ein positives `API_TIMEOUT_MS`, und ein positives `API_TIMEOUT_MS` unter 11 Sekunden deaktiviert die Frist. Der Byte-Level-Watchdog startet erst, nachdem die Response-Header ankommen, sodass eine Antwort, die danach das Senden von Bytes einstellt, stattdessen den [Stalled-Stream-Regeln](#automatic-retries) folgt.

501 507 

502**Was zu tun ist:**508**Was zu tun ist:**

503 509 

504* Senden Sie Ihre Nachricht erneut. Ihre ursprüngliche Nachricht befindet sich noch in der Konversation, sodass Sie bei einem langen Prompt `try again` eingeben können, anstatt alles erneut einzufügen.510* Senden Sie Ihre Nachricht erneut. Ihre ursprüngliche Nachricht befindet sich noch in der Konversation, sodass Sie bei einem langen Prompt `try again` eingeben können, anstatt alles erneut einzufügen.

505* Wenn es sich wiederholt, behandeln Sie es als [Netzwerk- oder Proxy-Problem](#unable-to-connect-to-api).511* Wenn es sich wiederholt, behandeln Sie es als [Netzwerk- oder Proxy-Problem](#unable-to-connect-to-api).

506* Wenn ein Proxy oder Gateway in Ihrem Netzwerk Antworten bis zum Abschluss hält, erhöhen Sie `API_TIMEOUT_MS`, damit die Wiederholung länger wartet. Bei Amazon Bedrock erhöhen Sie auch `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS`.512* Wenn ein Proxy oder Gateway in Ihrem Netzwerk Antworten bis zum Abschluss zurückhält, erhöhen Sie `API_TIMEOUT_MS`, damit der Wiederholungsversuch länger wartet. Bei Amazon Bedrock erhöhen Sie auch `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS`.

507* Wenn der erste Versuch immer das Zeitlimit überschreitet und die Wiederholung dann erfolgreich ist, erhöhen Sie `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS`, damit der erste Versuch auch lange genug wartet.513* Wenn beim ersten Versuch immer wieder eine Zeitüberschreitung auftritt und der Wiederholungsversuch dann erfolgreich ist, erhöhen Sie `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS`, damit auch der erste Versuch lange genug wartet.

508 514 

509Vor v2.1.242 wartete Claude Code auf das vollständige `API_TIMEOUT_MS`-Anfrage-Zeitlimit von standardmäßig 10 Minuten, bevor eine unbeantwortete Streaming-Anfrage fehlschlug. Vor v2.1.261 wartete die Wiederholung auf die gleiche Frist wie der erste Versuch und die Nachricht zeigte keine Dauern an.515Vor v2.1.242 wartete Claude Code auf den vollständigen `API_TIMEOUT_MS`-Anfrage-Timeout von standardmäßig 10 Minuten, bevor eine unbeantwortete Streaming-Anfrage fehlschlug. Vor v2.1.261 wartete der Wiederholungsversuch die gleiche Frist wie der erste Versuch und die Nachricht zeigte keine Dauern an.

510 516 

511<h3 id="the-response-above-may-be-incomplete">517<h3 id="the-response-above-may-be-incomplete">

512 Die obige Antwort kann unvollständig sein518 Die obige Antwort kann unvollständig sein

513</h3>519</h3>

514 520 

515Eine Streaming-Anfrage ist fehlgeschlagen, während die Antwort noch in Bearbeitung war, nachdem Claude einen Textblock oder einen Toolaufruf abgeschlossen hatte oder einen nach Abschluss des Denkens gestartet hatte. Das erneute Senden der Anfrage könnte die gleichen Toolaufrufe zweimal ausführen, sodass Claude Code die Ausgabe behält, die Claude abgeschlossen hat, und stattdessen diese Mitteilung anfügt, anstatt den Zug zu verwerfen. Welche Variante Sie sehen, nennt die Ursache:521Eine Streaming-Anfrage ist fehlgeschlagen, während die Antwort noch in Bearbeitung war, nachdem Claude einen Textblock oder einen Tool-Aufruf abgeschlossen oder nach Abschluss seines Thinking einen begonnen hatte. Das erneute Senden der Anfrage könnte die gleichen Tool-Aufrufe zweimal ausführen, sodass Claude Code die Ausgabe behält, die Claude abgeschlossen hat, und diese Mitteilung anfügt, anstatt den Turn zu verwerfen. Welche Variante Sie sehen, nennt die Ursache:

516 522 

517```text theme={null}523```text theme={null}

518API Error: Server error mid-response. The response above may be incomplete.524API Error: Server error mid-response. The response above may be incomplete.


523API Error: The response stream was malformed. The response above may be incomplete.529API Error: The response stream was malformed. The response above may be incomplete.

524```530```

525 531 

526* `Server error mid-response`: ein Mid-Stream-Overload- oder 5xx-Serverfehler. Diese Variante erfordert Claude Code v2.1.199 oder später; davor verwarf dieser Fall die Teilausgabe und meldete den gesamten Zug als Fehler.532* `Server error mid-response`: ein Overload- oder 5xx-Serverfehler mitten im Stream. Diese Variante erfordert Claude Code v2.1.199 oder später; davor verwarf dieser Fall die Teilausgabe und meldete den gesamten Turn als Fehler.

527* `Connection lost mid-response`: die Verbindung wurde unterbrochen. Sie sehen diese Variante auch, wenn ein Proxy oder Gateway die Antworttexte sauber beendet, bevor die Antwort abgeschlossen ist.533* `Connection lost mid-response`: die Verbindung wurde unterbrochen. Sie sehen diese Variante auch, wenn ein Proxy oder Gateway den Response-Body sauber beendet, bevor die Antwort abgeschlossen ist.

528* `Your computer went to sleep mid-response`: Claude Code hat erkannt, dass Ihr Computer in den Ruhezustand gegangen ist, während die Antwort gestreamt wurde. Sobald Ihr Computer aufwacht, behandelt Claude Code die Verbindung als unterbrochen und stoppt das Lesen von ihr.534* `Your computer went to sleep mid-response`: Claude Code hat erkannt, dass Ihr Computer in den Ruhezustand gegangen ist, während die Antwort gestreamt wurde. Sobald Ihr Computer aufwacht, behandelt Claude Code die Verbindung als unterbrochen und liest nicht mehr von ihr.

529* `Part of the response never arrived`: ein Stream-Ereignis wurde zwischen der API und Claude Code gelöscht, sodass ein späteres Ereignis auf Inhalte verwies, die nie ankamen. Vor v2.1.281 endete dieser Fall den Zug mit `API Error: Content block not found`.535* `Part of the response never arrived`: ein Stream-Ereignis ging zwischen der API und Claude Code verloren, sodass ein späteres Ereignis auf Inhalte verwies, die nie ankamen. Vor v2.1.281 beendete dieser Fall den Turn mit `API Error: Content block not found`.

530* `The response stream was malformed`: ein Ereignis kam für einen Inhaltsblock an, der bereits abgeschlossen war, oder ein Ereignis kam beschädigt an. Ein beschädigtes Ereignis ist eines, dessen Daten kein gültiges JSON sind, dessen Inhalt fehlt oder dessen Inhalt nicht dem Ereignistyp entspricht. Vor v2.1.284 erschien der Fehler des Parsers, wie z. B. einer, der mit `API Error: JSON Parse error` beginnt, stattdessen, wenn ein Ereignis mit ungültigem JSON ankam, nachdem Claude sein Denken, einen Textblock oder einen Toolaufruf abgeschlossen hatte.536* `The response stream was malformed`: ein Ereignis kam für einen Inhaltsblock an, der bereits abgeschlossen war, oder ein Ereignis kam beschädigt an. Ein beschädigtes Ereignis ist eines, dessen Daten kein gültiges JSON sind, dessen Inhalt fehlt oder dessen Inhalt nicht dem Ereignistyp entspricht. Vor v2.1.284 erschien stattdessen der rohe Fehler des Parsers, wie z. B. einer, der mit `API Error: JSON Parse error` beginnt, wenn ein Ereignis mit ungültigem JSON ankam, nachdem Claude sein Thinking, einen Textblock oder einen Tool-Aufruf abgeschlossen hatte. Vor v2.1.287 erschien diese Variante anstelle der Nachricht des Guardrails, wenn ein [Amazon Bedrock Guardrail](/docs/de/amazon-bedrock#aws-guardrails) eine Antwort blockierte, die bereits Thinking und etwas Text gestreamt hatte.

531* `The response stopped arriving`: die Verbindung blieb offen, aber stoppte die Datenlieferung, sodass der Streaming-Idle-Watchdog sie abgebrochen hat. Vor v2.1.222 konnte Claude Code diesen Fehler auch auf [Gateway](/docs/de/gateways)-Verbindungen melden, die über `ANTHROPIC_BASE_URL` oder `ANTHROPIC_AWS_BASE_URL` erreicht wurden, während die Keep-Alive-Pings des Servers noch ankamen, da es dort nur geparste Antwortereignisse zählte; ein Upgrade stoppt diese falschen Zeitüberschreitungen auf diesen Routen. Gateways, die über eine Anbieter-Basis-URL wie `ANTHROPIC_BEDROCK_BASE_URL` erreicht werden, sind nicht vom Byte-Watchdog umhüllt; siehe [Streaming-Idle-Watchdogs](/docs/de/network-config#streaming-idle-watchdogs).537* `The response stopped arriving`: die Verbindung blieb offen, lieferte aber keine Daten mehr, sodass der Streaming-Idle-Watchdog sie abgebrochen hat. Vor v2.1.222 konnte Claude Code diesen Fehler auch bei [Gateway](/docs/de/gateways)-Verbindungen melden, die über `ANTHROPIC_BASE_URL` oder `ANTHROPIC_AWS_BASE_URL` erreicht wurden, während die Keep-Alive-Pings des Servers noch ankamen, da es dort nur geparste Antwortereignisse zählte; ein Upgrade beseitigt diese falschen Zeitüberschreitungen auf diesen Routen. Gateways, die über eine Anbieter-Basis-URL wie `ANTHROPIC_BEDROCK_BASE_URL` erreicht werden, sind nicht vom Byte-Watchdog umhüllt; siehe [Streaming-Idle-Watchdogs](/docs/de/network-config#streaming-idle-watchdogs).

532 538 

533Vor v2.1.227 las `Connection lost mid-response` `Connection closed mid-response` und `The response stopped arriving` las `Response stalled mid-stream`.539Vor v2.1.227 lautete `Connection lost mid-response` noch `Connection closed mid-response` und `The response stopped arriving` noch `Response stalled mid-stream`.

534 540 

535Wenn ein gelöschtes, dupliziertes oder beschädigtes Stream-Ereignis ankommt, bevor Claude mit Text oder Toolaufruf begonnen hat, sehen Sie diese Mitteilung nicht:541Wenn ein verlorenes, dupliziertes oder beschädigtes Stream-Ereignis ankommt, bevor Claude mit Text oder einem Tool-Aufruf begonnen hat, sehen Sie diese Mitteilung nicht:

536 542 

537* Wenn Claude nur sein Denken abgeschlossen hatte, gibt Claude Code die Anfrage erneut aus. Wenn die erneut ausgegebenen Streams auf die gleiche Weise unterbrochen werden, endet der Zug mit `Part of the response never arrived and no response was produced. Try again.` oder `The response stream was malformed and no response was produced. Try again.`543* Wenn Claude nur sein Thinking abgeschlossen hatte, sendet Claude Code die Anfrage erneut. Wenn die erneut gesendeten Streams auf die gleiche Weise abbrechen, endet der Turn mit `Part of the response never arrived and no response was produced. Try again.` oder `The response stream was malformed and no response was produced. Try again.`

538* Wenn nichts abgeschlossen war, sendet Claude Code die Anfrage stattdessen ohne Streaming erneut. Wenn Sie diesen Fallback mit [`CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK`](/docs/de/env-vars) deaktiviert haben, endet der Zug mit `API Error: Content block not found` für ein gelöschtes Ereignis oder `API Error: Content block already closed` für ein dupliziertes. Für ein beschädigtes Ereignis mit deaktiviertem Fallback endet der Zug mit `API Error: Stream event unreadable` oder dem Fehler des Parsers.544* Wenn nichts abgeschlossen war, sendet Claude Code die Anfrage stattdessen ohne Streaming erneut. Wenn Sie diesen Fallback mit [`CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK`](/docs/de/env-vars) deaktiviert haben, endet der Turn mit `API Error: Content block not found` für ein verlorenes Ereignis oder `API Error: Content block already closed` für ein dupliziertes. Für ein beschädigtes Ereignis mit deaktiviertem Fallback endet der Turn mit `API Error: Stream event unreadable` oder dem rohen Fehler des Parsers.

539 545 

540In vier Fällen behandelt Claude Code den Fehler, ohne diese Mitteilung sofort anzuzeigen:546In vier Fällen behandelt Claude Code den Fehler, ohne diese Mitteilung sofort anzuzeigen:

541 547 

542* Früher in der Antwort versucht Claude Code entweder, den Fehler erneut zu versuchen, oder beendet den Zug mit einem anderen Fehler. Siehe [Automatische Wiederholungen](#automatic-retries).548* Früher in der Antwort versucht Claude Code den Fehler entweder erneut oder beendet den Turn mit einem anderen Fehler. Siehe [Automatische Wiederholungen](#automatic-retries).

543* Wenn einer dieser Fehler ankommt, nachdem Claude die Antwort abgeschlossen hat, behält Claude Code die vollständige Antwort und beendet den Zug normal, ohne diese Mitteilung. Vor v2.1.222 zeigte Claude Code diese Mitteilung an, wenn die Verbindung nach Abschluss der Antwort unterbrochen wurde oder stagnierte, und meldete den Zug als Fehler, obwohl die Antwort vollständig war.549* Wenn einer dieser Fehler ankommt, nachdem Claude die Antwort abgeschlossen hat, behält Claude Code die vollständige Antwort und beendet den Turn normal, ohne diese Mitteilung. Vor v2.1.222 zeigte Claude Code diese Mitteilung an, wenn die Verbindung nach Abschluss der Antwort unterbrochen wurde oder stockte, und meldete den Turn als Fehler, obwohl die Antwort vollständig war.

544* In einer [nicht-interaktiven Sitzung](/docs/de/headless), wie z. B. ein `-p`-Lauf, ein [Agent SDK](/docs/de/agent-sdk/overview)-Lauf oder eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web), müssen Sie nicht selbst `continue` senden, wenn die abgeschnittene Antwort in der Hauptkonversation ist und Text, aber keine Toolaufrufe enthält: Claude Code behält die Teilausgabe und fordert Claude auf, von dort aus fortzufahren, wo es gestoppt hat, bis zu dreimal hintereinander. Sie sehen diese Mitteilung für eine solche Antwort nur, wenn Claude Code diese Fortsetzungen aufgebraucht hat. Vor v2.1.246 beendete Claude Code einen nicht-interaktiven Zug mit dieser Mitteilung beim ersten Abschnitt.550* In einer [nicht interaktiven Sitzung](/docs/de/headless), wie z. B. einem `-p`-Lauf, einem [Agent SDK](/docs/de/agent-sdk/overview)-Lauf oder einer [Cloud-Sitzung](/docs/de/claude-code-on-the-web), müssen Sie nicht selbst `continue` senden, wenn die abgeschnittene Antwort in der Hauptkonversation ist und Text, aber keine Tool-Aufrufe enthält: Claude Code behält die Teilausgabe und fordert Claude auf, dort fortzufahren, wo es aufgehört hat, bis zu dreimal hintereinander. Sie sehen diese Mitteilung für eine solche Antwort erst, wenn Claude Code diese Fortsetzungen aufgebraucht hat. Vor v2.1.246 beendete Claude Code einen nicht interaktiven Turn beim ersten Abbruch mit dieser Mitteilung.

545* In einem [Subagenten](/docs/de/sub-agents#api-errors-in-subagents), unabhängig davon, ob die Sitzung interaktiv ist oder nicht: Wenn seine abgeschnittene Antwort Text, aber keine Toolaufrufe enthält, fordert Claude Code den Subagenten auf, fortzufahren. Die Mitteilung wird zur letzten Nachricht des Subagenten erst, wenn diese Fortsetzungen aufgebraucht sind. Vor v2.1.257 zeigte ein Subagent diese Mitteilung beim ersten Abschnitt an.551* In einem [Subagenten](/docs/de/sub-agents#api-errors-in-subagents), unabhängig davon, ob die Sitzung interaktiv ist oder nicht: Wenn seine abgeschnittene Antwort Text, aber keine Tool-Aufrufe enthält, fordert Claude Code den Subagenten auf, fortzufahren. Die Mitteilung wird erst dann zur letzten Nachricht des Subagenten, wenn diese Fortsetzungen aufgebraucht sind. Vor v2.1.257 zeigte ein Subagent diese Mitteilung beim ersten Abbruch an.

546 552 

547**Was zu tun ist:**553**Was zu tun ist:**

548 554 

549* Lesen Sie in einer interaktiven Sitzung die Antwort, die auf dem Bildschirm verbleibt: Claude Code behält jeden Block, den Claude vor dem Fehler abgeschlossen hat, aber verwirft einen unterbrochenen letzten Block, wenn der Zug endet, sodass die letzten Sätze oder Toolaufrufe möglicherweise fehlen. Antworten Sie mit `continue`, damit Claude von seinem letzten abgeschlossenen Block aus fortfährt.555* Lesen Sie in einer interaktiven Sitzung die Antwort, die auf dem Bildschirm verbleibt: Claude Code behält jeden Block, den Claude vor dem Fehler abgeschlossen hat, verwirft aber einen unterbrochenen letzten Block, wenn der Turn endet, sodass die letzten Sätze oder Tool-Aufrufe möglicherweise fehlen. Antworten Sie mit `continue`, damit Claude ab seinem letzten abgeschlossenen Block fortfährt.

550* Im [nicht-interaktiven Modus](/docs/de/headless) (`-p`):556* Im [nicht interaktiven Modus](/docs/de/headless) (`-p`):

551 * Mit der Standard-Textausgabe druckt Claude Code den letzten abgeschlossenen Textblock, den es noch von früher im Zug hält, gefolgt von dieser Nachricht. Wenn es keinen hält, druckt Claude Code diese Nachricht allein, z. B. weil Claude Code die Konversation mitten im Zug komprimiert und diesen Text gelöscht hat. Vor v2.1.219 druckte Claude Code nur diese Nachricht in `-p`-Textausgabe und verwarf die bereits erzeugte Antwort.557 * Mit der Standard-Textausgabe gibt Claude Code den letzten abgeschlossenen Textblock aus, den es noch von früher im Turn vorhält, gefolgt von dieser Nachricht. Wenn es keinen vorhält, gibt Claude Code diese Nachricht allein aus, z. B. weil Claude Code die Konversation mitten im Turn komprimiert und diesen Text entfernt hat. Vor v2.1.219 gab Claude Code in der `-p`-Textausgabe nur diese Nachricht aus und verwarf die bereits erzeugte Antwort.

552 * Mit `--output-format json` oder `stream-json` meldet Claude Code diese Nachricht im `result`-Feld.558 * Mit `--output-format json` oder `stream-json` meldet Claude Code diese Nachricht im `result`-Feld.

553 * Um den Zug fortzusetzen, sobald die Verbindung stabil ist, setzen Sie die Sitzung fort und senden Sie `continue` wie in [Konversationen fortsetzen](/docs/de/headless#continue-conversations) beschrieben.559 * Um den Turn fortzusetzen, sobald die Verbindung stabil ist, setzen Sie die Sitzung fort und senden Sie `continue` wie in [Konversationen fortsetzen](/docs/de/headless#continue-conversations) beschrieben.

554 560 

555<h3 id="auto-mode-cannot-determine-the-safety-of-an-action">561<h3 id="auto-mode-cannot-determine-the-safety-of-an-action">

556 Auto-Modus kann die Sicherheit einer Aktion nicht bestimmen562 Auto-Modus kann die Sicherheit einer Aktion nicht bestimmen

557</h3>563</h3>

558 564 

559Das Modell, das der [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) zum Klassifizieren von Aktionen verwendet, konnte keine Entscheidung treffen, sodass der Auto-Modus die Aktion nicht automatisch genehmigt hat. Die Nachricht, die Sie sehen, hängt davon ab, wie der Klassifizierer fehlgeschlagen ist.565Das Modell, das der [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) zum Klassifizieren von Aktionen verwendet, konnte keine Entscheidung treffen, sodass der Auto-Modus die Aktion nicht automatisch genehmigt hat. Die Nachricht, die Sie sehen, hängt davon ab, wie der Klassifikator fehlgeschlagen ist.

560 566 

561Lesevorgänge, Suchen und Bearbeitungen in Ihrem Arbeitsverzeichnis überspringen den Klassifizierer, sodass sie in all diesen Fällen weiterhin funktionieren.567Lesevorgänge, Suchen und Bearbeitungen in Ihrem Arbeitsverzeichnis überspringen den Klassifikator, sodass sie in all diesen Fällen weiterhin funktionieren.

562 568 

563Wenn das Klassifizierungsmodell nicht verfügbar ist:569Wenn das Klassifikatormodell nicht verfügbar ist:

564 570 

565```text theme={null}571```text theme={null}

566<model> is temporarily unavailable, so auto mode cannot determine the safety of <tool> right now. Wait a moment and then try this action again.572<model> is temporarily unavailable, so auto mode cannot determine the safety of <tool> right now. Wait a moment and then try this action again.

567```573```

568 574 

569Wenn Claude Code die Fehlerkategorie bestimmen kann, nennt es die Kategorie in Klammern nach `temporarily unavailable`, z. B. `<model> is temporarily unavailable (rate-limited), so auto mode cannot determine the safety of <tool> right now`. Die Kategorien sind `(rate-limited)`, `(overloaded)`, `(server error)`, `(timed out)` und `(connection failed)`. Wenn `(timed out)` oder `(connection failed)` sich wiederholt, überprüfen Sie Ihre Verbindung; siehe [Kann keine Verbindung zur API herstellen](#unable-to-connect-to-api). Vor v2.1.229 nannte die Nachricht nie eine Kategorie und las `Wait briefly and then try this action again`.575Wenn Claude Code die Fehlerkategorie bestimmen kann, nennt es die Kategorie in Klammern nach `temporarily unavailable`, z. B. `<model> is temporarily unavailable (rate-limited), so auto mode cannot determine the safety of <tool> right now`. Die Kategorien sind `(rate-limited)`, `(overloaded)`, `(server error)`, `(timed out)` und `(connection failed)`. Wenn sich `(timed out)` oder `(connection failed)` wiederholt, überprüfen Sie Ihre Verbindung; siehe [Kann keine Verbindung zur API herstellen](#unable-to-connect-to-api). Vor v2.1.229 nannte die Nachricht nie eine Kategorie und lautete `Wait briefly and then try this action again`.

570 576 

571Wenn keine Kategorie passt, wird die Nachricht ohne Kategorie in Klammern angezeigt; mehr als ein Fehler erzeugt diese Form. Bei [Amazon Bedrock](/docs/de/amazon-bedrock), einschließlich des [Mantle-Endpunkts](/docs/de/amazon-bedrock#use-the-mantle-endpoint), wird es auch angezeigt, wenn Ihr AWS-Konto das im Fehler genannte Modell nicht aufrufen kann, und dieser Fehler wiederholt sich bei jedem Wiederholungsversuch, bis Ihrem Konto Zugriff auf das Modell gewährt wird.577Wenn keine Kategorie passt, wird die Nachricht ohne Kategorie in Klammern angezeigt; mehr als ein Fehler erzeugt diese Form. Bei [Amazon Bedrock](/docs/de/amazon-bedrock), einschließlich des [Mantle-Endpunkts](/docs/de/amazon-bedrock#use-the-mantle-endpoint), wird sie auch angezeigt, wenn Ihr AWS-Konto das in der Nachricht genannte Modell nicht aufrufen kann, und dieser Fehler wiederholt sich bei jedem Wiederholungsversuch, bis Ihrem Konto Zugriff auf das Modell gewährt wird.

572 578 

573**Was zu tun ist:**579**Was zu tun ist:**

574 580 

575* Versuchen Sie es nach ein paar Sekunden erneut; Claude sieht die gleiche Nachricht und versucht normalerweise automatisch erneut. Ein vorübergehender Fehler ist nicht mit der [Auto-Modus-Berechtigung](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) verbunden; Sie müssen die Einstellungen nicht ändern581* Versuchen Sie es nach ein paar Sekunden erneut; Claude sieht die gleiche Nachricht und versucht es normalerweise selbstständig erneut. Ein vorübergehender Fehler hat nichts mit der [Auto-Modus-Berechtigung](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) zu tun; Sie müssen die Einstellungen nicht ändern

576* Wenn Wiederholungsversuche weiterhin fehlschlagen, fahren Sie mit schreibgeschützten Aufgaben fort und kehren Sie später zur blockierten Aktion zurück582* Wenn Wiederholungsversuche weiterhin fehlschlagen, fahren Sie mit nur lesenden Aufgaben fort und kehren Sie später zur blockierten Aktion zurück

577* Bei Amazon Bedrock, wenn die Nachricht bei jedem Wiederholungsversuch zurückkommt, überprüfen Sie, dass Ihr Konto das im Fehler genannte Modell aufrufen kann: Bestätigen Sie für Standard-Amazon Bedrock-Modelle, dass Ihre [IAM-Richtlinie](/docs/de/amazon-bedrock#iam-configuration) das Aufrufen zulässt; für Mantle-Modell-IDs [kontaktieren Sie Ihr AWS-Kontoteam](/docs/de/amazon-bedrock#mantle-endpoint-errors)583* Wenn die Nachricht bei Amazon Bedrock bei jedem Wiederholungsversuch zurückkommt, überprüfen Sie, dass Ihr Konto das darin genannte Modell aufrufen kann: Bestätigen Sie für Standard-Amazon Bedrock-Modelle, dass Ihre [IAM-Richtlinie](/docs/de/amazon-bedrock#iam-configuration) das Aufrufen zulässt; für Mantle-Modell-IDs [kontaktieren Sie Ihr AWS-Kontoteam](/docs/de/amazon-bedrock#mantle-endpoint-errors)

578 584 

579Wenn eine Klassifiziereranfrage fehlschlägt, weil Ihr OAuth-Token abgelaufen ist oder von einer anderen Sitzung rotiert wurde, aktualisiert Claude Code das Token und versucht die Anfrage einmal erneut, sodass ein routinemäßiger Token-Ablauf nicht als diese Nachricht angezeigt wird. Vor v2.1.216 fehlte jede Klassifiziereranfrage mit einem abgelaufenen oder rotierten Token, und der Auto-Modus verweigerte jede überprüfte Aktion mit dieser Nachricht, bis das Token aktualisiert wurde.585Wenn eine Klassifikatoranfrage fehlschlägt, weil Ihr OAuth-Token abgelaufen ist oder von einer anderen Sitzung rotiert wurde, aktualisiert Claude Code das Token und versucht die Anfrage einmal erneut, sodass ein regulärer Token-Ablauf nicht als diese Nachricht angezeigt wird. Vor v2.1.216 schlug mit einem abgelaufenen oder rotierten Token jede Klassifikatoranfrage fehl, und der Auto-Modus verweigerte jede überprüfte Aktion mit dieser Nachricht, bis das Token aktualisiert wurde.

580 586 

581Wenn der Klassifizierer eine nicht analysierbare Antwort zurückgab:587Wenn der Klassifikator eine nicht analysierbare Antwort zurückgab:

582 588 

583```text theme={null}589```text theme={null}

584Auto mode could not evaluate this action and is blocking it for safety — run with --debug for details590Auto mode could not evaluate this action and is blocking it for safety — run with --debug for details


587**Was zu tun ist:**593**Was zu tun ist:**

588 594 

589* Versuchen Sie die Aktion erneut; dies ist normalerweise beim nächsten Versuch erfolgreich595* Versuchen Sie die Aktion erneut; dies ist normalerweise beim nächsten Versuch erfolgreich

590* Führen Sie `claude --debug` aus und wiederholen Sie die Aktion für Details im Debug-Protokoll596* Führen Sie `claude --debug` aus und wiederholen Sie die Aktion, um Details im Debug-Log zu erhalten

591 597 

592Wenn eine separate API-Sicherheitsprüfung die Klassifiziereranfrage aufgrund früherer Konversationsinhalte blockiert hat:598Wenn eine separate API-Sicherheitsprüfung die Klassifikatoranfrage aufgrund früherer Konversationsinhalte blockiert hat:

593 599 

594```text theme={null}600```text theme={null}

595Auto mode could not evaluate this action and is blocking it for safety — a safety check separate from auto mode blocked this request because of earlier conversation content — it isn't about the action itself — run with --debug for details601Auto mode could not evaluate this action and is blocking it for safety — a safety check separate from auto mode blocked this request because of earlier conversation content — it isn't about the action itself — run with --debug for details

596```602```

597 603 

598Claude Code verweigert die Aktion, teilt Claude aber mit, dass dies keine Beurteilung ist, dass die Aktion unsicher ist, und fordert auf, mit anderen Aufgaben fortzufahren, anstatt zu wiederholen. Diese Verweigerungen zählen nicht zu den [Auto-Modus-Pausenschwellen](/docs/de/permission-modes#when-auto-mode-falls-back). In einem [nicht-interaktiven](/docs/de/headless) `-p`-Lauf stoppt Claude Code den Lauf nicht. Was Claude erhält, hängt davon ab, wo es die Aktion angefordert hat:604Claude Code verweigert die Aktion, teilt Claude aber mit, dass dies keine Beurteilung ist, dass die Aktion unsicher ist, und dass es mit anderen Aufgaben fortfahren soll, anstatt es erneut zu versuchen. Diese Verweigerungen zählen nicht zu den [Pausenschwellen des Auto-Modus](/docs/de/permission-modes#when-auto-mode-falls-back). In einem [nicht interaktiven](/docs/de/headless) `-p`-Lauf stoppt Claude Code den Lauf nicht. Was Claude erhält, hängt davon ab, wo es die Aktion angefordert hat:

599 605 

600* Zu einem [Hintergrund-Subagenten](/docs/de/sub-agents#run-subagents-in-foreground-or-background) in einem `-p`-Lauf ohne `--input-format stream-json` gibt Claude Code ein Fehlerergebnis zurück, das `Agent aborted: auto mode classifier request refused by the safety safeguard in headless mode` enthält606* An einen [Hintergrund-Subagenten](/docs/de/sub-agents#run-subagents-in-foreground-or-background) in einem `-p`-Lauf ohne `--input-format stream-json` gibt Claude Code ein Fehlerergebnis zurück, das `Agent aborted: auto mode classifier request refused by the safety safeguard in headless mode` enthält

601* Überall sonst, einschließlich interaktiver Sitzungen und der Hauptkonversation eines `-p`-Laufs, gibt Claude Code diese Verweigerung an Claude zurück607* Überall sonst, einschließlich interaktiver Sitzungen und der Hauptkonversation eines `-p`-Laufs, gibt Claude Code diese Verweigerung an Claude zurück

602 608 

603Vor v2.1.225 zählte Claude Code diese Verweigerungen zu den Pausenschwellen und gab die gleiche Ablehnungsmeldung wie ein echter Klassifiziererblock zurück.609Vor v2.1.225 zählte Claude Code diese Verweigerungen zu den Pausenschwellen und gab die gleiche Ablehnungsmeldung wie bei einer echten Blockierung durch den Klassifikator zurück.

604 610 

605**Was zu tun ist:**611**Was zu tun ist:**

606 612 

607* Dies ist keine Entscheidung über Ihre Aktion. Inhalte, die bereits in Ihrer Konversation vorhanden sind, haben einen Sicherheitsfilter auf der API ausgelöst, als der Auto-Modus die Konversation an den Klassifizierer sendete613* Dies ist keine Entscheidung über Ihre Aktion. Inhalte, die bereits in Ihrer Konversation vorhanden sind, haben einen Sicherheitsfilter auf der API ausgelöst, als der Auto-Modus die Konversation an den Klassifikator sendete

608* Ein erneuter Versuch hilft nicht; der gleiche Konversationsinhalt wird den Filter erneut auslösen614* Ein erneuter Versuch hilft nicht; der gleiche Konversationsinhalt wird den Filter erneut auslösen

609* Wechseln Sie in einer interaktiven Sitzung zu einem anderen [Berechtigungsmodus](/docs/de/permission-modes), damit Sie die Aktion bei Aufforderung genehmigen können615* Wechseln Sie in einer interaktiven Sitzung zu einem anderen [Berechtigungsmodus](/docs/de/permission-modes), damit Sie die Aktion genehmigen können, wenn Sie gefragt werden

610* Starten Sie eine neue Konversation ohne den auslösenden Inhalt616* Starten Sie eine neue Konversation ohne den auslösenden Inhalt

611 617 

612Wenn die Konversation größer als das Kontextfenster des Klassifizierers geworden ist:618Wenn die Konversation größer als das Kontextfenster des Klassifikators geworden ist:

613 619 

614```text theme={null}620```text theme={null}

615Auto mode classifier transcript exceeded context window — falling back to manual approval (try /compact to reduce conversation size)621Auto mode classifier transcript exceeded context window — falling back to manual approval (try /compact to reduce conversation size)


617 623 

618Was mit der Aktion geschieht, hängt davon ab, wo Claude sie angefordert hat:624Was mit der Aktion geschieht, hängt davon ab, wo Claude sie angefordert hat:

619 625 

620* In einer interaktiven Sitzung fällt der Auto-Modus auf eine normale Berechtigungsaufforderung für diese Aktion zurück, damit Sie sie manuell genehmigen oder ablehnen können626* In einer interaktiven Sitzung fällt der Auto-Modus für diese Aktion auf eine normale Berechtigungsabfrage zurück, damit Sie sie manuell genehmigen oder ablehnen können

621* Zu einem [Hintergrund-Subagenten](/docs/de/sub-agents#run-subagents-in-foreground-or-background) in einem [nicht-interaktiven](/docs/de/headless) `-p`-Lauf ohne `--input-format stream-json` gibt Claude Code ein Fehlerergebnis zurück, das `Agent aborted: auto mode classifier transcript exceeded context window in headless mode` enthält, und der Lauf wird fortgesetzt627* An einen [Hintergrund-Subagenten](/docs/de/sub-agents#run-subagents-in-foreground-or-background) in einem [nicht interaktiven](/docs/de/headless) `-p`-Lauf ohne `--input-format stream-json` gibt Claude Code ein Fehlerergebnis zurück, das `Agent aborted: auto mode classifier transcript exceeded context window in headless mode` enthält, und der Lauf wird fortgesetzt

622* Anderswo in einem `-p`-Lauf ohne [`--permission-prompt-tool`](/docs/de/cli-reference#cli-flags) gibt es keine Aufforderung, auf die zurückgegriffen werden kann, sodass die Aktion nicht ausgeführt wird und der Lauf fortgesetzt wird628* Anderswo in einem `-p`-Lauf ohne [`--permission-prompt-tool`](/docs/de/cli-reference#cli-flags) gibt es keine Abfrage, auf die zurückgefallen werden kann, sodass die Aktion nicht ausgeführt wird und der Lauf fortgesetzt wird

623 629 

624**Was zu tun ist:**630**Was zu tun ist:**

625 631 

626* Genehmigen oder lehnen Sie die Aktion in der angezeigten Aufforderung ab632* Genehmigen oder lehnen Sie die Aktion in einer interaktiven Sitzung in der angezeigten Abfrage ab

627* Führen Sie in einer interaktiven Sitzung `/compact` aus, um die Konversationsgröße zu reduzieren, damit nachfolgende Aktionen wieder in das Klassifizierer-Fenster passen633* Führen Sie in einer interaktiven Sitzung `/compact` aus, um die Konversationsgröße zu reduzieren, damit nachfolgende Aktionen wieder in das Fenster des Klassifikators passen

628 634 

629<h3 id="the-server-returned-no-safety-verdict">635<h3 id="the-server-returned-no-safety-verdict">

630 Der Server hat kein Sicherheitsurteil zurückgegeben636 Der Server hat kein Sicherheitsurteil zurückgegeben

631</h3>637</h3>

632 638 

633Unter [serverseitiger Klassifiziererüberprüfung](/docs/de/permission-modes#server-side-classifier-review) verweigert der Auto-Modus eine Aktion, wenn der Server kein Urteil dafür gibt. Die Verweigerung nennt eine Kategorie in Klammern, wenn Claude Code eine bestimmen kann, wie z. B. `(timed out)`:639Bei der [serverseitigen Klassifikatorprüfung](/docs/de/permission-modes#server-side-classifier-review) verweigert der Auto-Modus eine Aktion, wenn der Server kein Urteil dafür liefert. Die Verweigerung nennt eine Kategorie in Klammern, wenn Claude Code eine bestimmen kann, wie z. B. `(timed out)`:

634 640 

635```text theme={null}641```text theme={null}

636The server-side auto mode classifier gave no verdict (timed out), so auto mode cannot determine the safety of <tool>.642The server-side auto mode classifier gave no verdict (timed out), so auto mode cannot determine the safety of <tool>.

637```643```

638 644 

639Der Rest der Nachricht teilt Claude mit, ob ein Wiederholungsversuch helfen kann. Vor einigen dieser Verweigerungen wartet Claude Code, damit Claudes nächster Versuch nicht sofort folgt. Während des Wartens in einer interaktiven Sitzung zeigt der Spinner `Auto mode check unavailable` mit einem Countdown an, und das Drücken von `Esc` unterbricht den Zug.645Der Rest der Nachricht teilt Claude mit, ob ein Wiederholungsversuch helfen kann. Vor einigen dieser Verweigerungen wartet Claude Code, damit Claudes nächster Versuch nicht sofort folgt. Während des Wartens in einer interaktiven Sitzung zeigt der Spinner `Auto mode check unavailable` mit einem Countdown an, und das Drücken von `Esc` unterbricht den Turn.

640 646 

641Nach zehn Antworten hintereinander ohne Urteil stoppt der Auto-Modus den Zug:647Nach zehn Antworten hintereinander ohne Urteil stoppt der Auto-Modus den Turn:

642 648 

643```text theme={null}649```text theme={null}

644Auto mode is unavailable — the server returned no safety verdict for the last 10 responses, so Claude stopped. Send a message to try again, or switch out of auto mode.650Auto mode is unavailable — the server returned no safety verdict for the last 10 responses, so Claude stopped. Send a message to try again, or switch out of auto mode.

645```651```

646 652 

647Die Stopmeldung wird an einer anderen Stelle in jeder Art von Sitzung angezeigt:653Die Stoppmeldung wird in jeder Art von Sitzung an einer anderen Stelle angezeigt:

648 654 

649* In einer interaktiven Sitzung wird die Nachricht als Warnung im Transkript angezeigt und der Zug endet655* In einer interaktiven Sitzung wird die Nachricht als Warnung im Transkript angezeigt und der Turn endet

650* In einem [nicht-interaktiven](/docs/de/headless) `-p`-Lauf endet der Lauf und meldet einen Ausführungsfehler. Mit der Standard-Textausgabe wird die Nachricht auf stderr gedruckt.656* In einem [nicht interaktiven](/docs/de/headless) `-p`-Lauf endet der Lauf und meldet einen Ausführungsfehler. Mit der Standard-Textausgabe wird die Nachricht auf stderr ausgegeben.

651* Wenn ein [Subagent](/docs/de/sub-agents) das Limit erreicht hat, stoppt der Subagent vor Abschluss, und Claude erhält das, was er mit einer Notiz produziert hat, dass der Auto-Modus ihn gestoppt hat657* Wenn ein [Subagent](/docs/de/sub-agents) das Limit erreicht hat, stoppt der Subagent vor Abschluss, und Claude erhält das, was er bis dahin produziert hat, mit einem Hinweis, dass der Auto-Modus ihn gestoppt hat

652 658 

653**Was zu tun ist:**659**Was zu tun ist:**

654 660 

655* Senden Sie eine weitere Nachricht, damit Claude es erneut versucht. Die Anzahl der Antworten beginnt von vorne.661* Senden Sie eine weitere Nachricht, damit Claude es erneut versucht. Die Zählung der Antworten beginnt von vorne.

656* Wenn der Stopp sich wiederholt und Ihre Anfragen durch ein [LLM-Gateway oder einen Proxy](/docs/de/llm-gateway) gehen, überprüfen Sie, ob dieser Streaming-Antworten kürzt oder umschreibt. [Serverseitige Klassifiziererüberprüfung](/docs/de/permission-modes#server-side-classifier-review) sagt, welches Gateway-Verhalten Verweigerungen verursacht, und der [Gateway-Kompatibilitätsleitfaden](/docs/de/llm-gateway-protocol#feature-pass-through) listet auf, was unverändert durchgeleitet werden muss.662* Wenn sich der Stopp wiederholt und Ihre Anfragen über ein [LLM-Gateway oder einen Proxy](/docs/de/llm-gateway) laufen, überprüfen Sie, ob dieser Streaming-Antworten kürzt oder umschreibt. [Serverseitige Klassifikatorprüfung](/docs/de/permission-modes#server-side-classifier-review) beschreibt, welches Gateway-Verhalten Verweigerungen verursacht, und der [Gateway-Kompatibilitätsleitfaden](/docs/de/llm-gateway-protocol#feature-pass-through) listet auf, was unverändert durchgeleitet werden muss.

657* Setzen Sie `CLAUDE_CODE_AUTO_MODE_SERVER=0`, bevor Sie Claude Code starten, um stattdessen seine eigenen Klassifiziereranfragen zu verwenden. Vor v2.1.281 las Claude Code die Variable nicht bei einer direkten Verbindung zur Anthropic API.663* Setzen Sie `CLAUDE_CODE_AUTO_MODE_SERVER=0`, bevor Sie Claude Code starten, um stattdessen seine eigenen Klassifikatoranfragen zu verwenden. Vor v2.1.281 las Claude Code die Variable bei einer direkten Verbindung zur Anthropic API nicht.

658* Um die Aktionen selbst zu genehmigen, [wechseln Sie aus dem Auto-Modus](/docs/de/permission-modes#switch-permission-modes)664* Um die Aktionen stattdessen selbst zu genehmigen, [wechseln Sie aus dem Auto-Modus](/docs/de/permission-modes#switch-permission-modes)

659 665 

660Vor v2.1.280 verweigerte Claude Code jede Aktion aus einer Antwort ohne Urteil sofort und stoppte den Zug nie.666Vor v2.1.280 verweigerte Claude Code jede Aktion aus einer Antwort ohne Urteil sofort und stoppte den Turn nie.

661 667 

662<h3 id="agent-terminated-early-due-to-an-api-error">668<h3 id="agent-terminated-early-due-to-an-api-error">

663 Agent wurde vorzeitig aufgrund eines API-Fehlers beendet669 Agent wurde vorzeitig aufgrund eines API-Fehlers beendet

664</h3>670</h3>

665 671 

666Eine [Subagenten](/docs/de/sub-agents)-API-Anfrage ist terminal fehlgeschlagen, z. B. weil ein Nutzungslimit erreicht wurde oder Wiederholungsversuche für einen Serverfehler aufgebraucht wurden, sodass der Subagent vor Abschluss seiner Aufgabe gestoppt hat. Diese Nachricht erfordert Claude Code v2.1.199 oder später; davor wurde der API-Fehlertext an Claude zurückgegeben, als wäre er das Ergebnis des Subagenten.672Die API-Anfrage eines [Subagenten](/docs/de/sub-agents) ist endgültig fehlgeschlagen, z. B. weil ein Nutzungslimit erreicht wurde oder die Wiederholungsversuche für einen Serverfehler aufgebraucht waren, sodass der Subagent vor Abschluss seiner Aufgabe gestoppt hat. Diese Nachricht erfordert Claude Code v2.1.199 oder später; davor wurde der API-Fehlertext an Claude zurückgegeben, als wäre er das Ergebnis des Subagenten.

667 673 

668```text theme={null}674```text theme={null}

669Agent terminated early due to an API error: <error detail>675Agent terminated early due to an API error: <error detail>


671 677 

672**Was zu tun ist:**678**Was zu tun ist:**

673 679 

674* Ordnen Sie die Fehlerdetails nach dem Doppelpunkt einem eigenen Abschnitt auf dieser Seite zu, wie z. B. [Nutzungslimits](#usage-limits) oder [Serverfehler](#server-errors), und folgen Sie den Schritten dieses Abschnitts680* Ordnen Sie die Fehlerdetails nach dem Doppelpunkt dem jeweiligen Abschnitt auf dieser Seite zu, wie z. B. [Nutzungslimits](#usage-limits) oder [Serverfehler](#server-errors), und folgen Sie den Schritten dieses Abschnitts

675* Sobald der zugrunde liegende Fehler behoben ist, bitten Sie Claude, die Aufgabe zu wiederholen oder [den Subagenten fortzusetzen](/docs/de/sub-agents#resume-subagents)681* Sobald der zugrunde liegende Fehler behoben ist, bitten Sie Claude, die Aufgabe erneut zu versuchen oder [den Subagenten fortzusetzen](/docs/de/sub-agents#resume-subagents)

676 682 

677Wenn eine Ratenbegrenzung, ein Overload oder ein Serverfehler einen Vordergrund-Subagenten unterbricht, der bereits Textausgabe erzeugt hat, erhält Claude diese Teilausgabe als unvollständig markiert, anstatt diesen Fehler zu erhalten. Ein Subagent, dessen einzige Ausgabe Toolaufrufe waren, erhält auch diesen Fehler; in v2.1.199 gab dies stattdessen ein leeres Teilergebnis zurück. Siehe [API-Fehler in Subagenten](/docs/de/sub-agents#api-errors-in-subagents).683Wenn ein Rate-Limit, ein Overload oder ein Serverfehler einen Vordergrund-Subagenten unterbricht, der bereits Textausgabe erzeugt hat, erhält Claude statt dieses Fehlers diese Teilausgabe als unvollständig markiert. Ein Subagent, dessen einzige Ausgabe Tool-Aufrufe waren, erhält ebenfalls diesen Fehler; in v2.1.199 gab diese Konstellation stattdessen ein leeres Teilergebnis zurück. Siehe [API-Fehler in Subagenten](/docs/de/sub-agents#api-errors-in-subagents).

678 684 

679<h2 id="usage-limits">685<h2 id="usage-limits">

680 Nutzungslimits686 Nutzungslimits


885 Authentifizierungsfehler891 Authentifizierungsfehler

886</h2>892</h2>

887 893 

888Diese Fehler bedeuten, dass Claude Code nicht nachweisen kann, wer Sie gegenüber der API sind. Führen Sie jederzeit `/status` aus, um zu sehen, welche Anmeldedaten derzeit aktiv sind.894Diese Fehler bedeuten, dass Claude Code gegenüber der API nicht nachweisen kann, wer Sie sind. Führen Sie jederzeit `/status` aus, um zu sehen, welche Anmeldedaten gerade aktiv sind.

889 895 

890<h3 id="not-logged-in">896<h3 id="not-logged-in">

891 Nicht angemeldet897 Nicht angemeldet

892</h3>898</h3>

893 899 

894Für diese Sitzung ist keine gültige Anmeldedaten verfügbar.900Für diese Sitzung sind keine gültigen Anmeldedaten verfügbar.

895 901 

896```text theme={null}902```text theme={null}

897Not logged in · Please run /login903Not logged in · Please run /login

898```904```

899 905 

900In einer Sitzung, die die Claude Desktop-App ausführt, z. B. auf der Registerkarte „Code" oder in Cowork, lautet die Meldung `Authentication required · Sign in again to continue`, und Sie melden sich erneut über die App an.906In einer Sitzung, die die Claude Desktop-App ausführt, etwa im Code-Tab oder in Cowork, lautet die Meldung `Authentication required · Sign in again to continue`, und Sie melden sich in der App erneut an.

901 907 

902**Was zu tun ist:**908Wenn Sie sich in einem anderen Claude Code-Fenster, das dasselbe [Konfigurationsverzeichnis](/docs/de/claude-directory) verwendet, mit Ihrem claude.ai-Konto anmelden, verwendet eine interaktive Sitzung, die diese Meldung anzeigt, diese Anmeldung automatisch. Sie müssen sie nicht neu starten.

909 

910Vor v2.1.286 konnte die Sitzung unter macOS die Meldung weiterhin anzeigen, nachdem Sie sich in einem anderen Fenster angemeldet hatten. Starten Sie in diesen Versionen die Sitzung, die die Meldung anzeigt, neu.

903 911 

904* Führen Sie `/login` aus, um sich mit Ihrem Claude-Abonnement oder Ihrem Console-Konto zu authentifizieren912**Was Sie tun können:**

905* Wenn Sie erwartet haben, dass eine Umgebungsvariable Sie authentifiziert, bestätigen Sie, dass `ANTHROPIC_API_KEY` in der Shell, in der Sie `claude` gestartet haben, gesetzt und exportiert ist

906* Für CI oder Automatisierung, bei der interaktive Anmeldung nicht möglich ist, konfigurieren Sie ein [`apiKeyHelper`](/docs/de/settings-reference#apikeyhelper)-Skript, das beim Start einen Schlüssel abruft

907* Siehe [Authentifizierungspriorität](/docs/de/authentication#authentication-precedence), um zu verstehen, welche Anmeldedaten Claude Code verwendet, wenn mehrere vorhanden sind

908 913 

909Wenn Sie wiederholt aufgefordert werden, sich anzumelden, siehe [Nicht angemeldet oder Token abgelaufen](/docs/de/troubleshoot-install#not-logged-in-or-token-expired) für Systemuhr-Überprüfungen und macOS-Wiederherstellungsschritte für die Anmeldedatenverwaltung.914* Führen Sie `/login` aus, um sich mit Ihrem Claude-Abonnement oder Console-Konto zu authentifizieren

915* Wenn Sie erwartet haben, dass eine Umgebungsvariable Sie authentifiziert, prüfen Sie, ob `ANTHROPIC_API_KEY` in der Shell, in der Sie `claude` gestartet haben, gesetzt und exportiert ist

916* Konfigurieren Sie für CI oder Automatisierung, bei der keine interaktive Anmeldung möglich ist, ein [`apiKeyHelper`](/docs/de/settings-reference#apikeyhelper)-Skript, das beim Start einen Schlüssel abruft

917* Unter [Rangfolge der Authentifizierung](/docs/de/authentication#authentication-precedence) erfahren Sie, welche Anmeldedaten Claude Code verwendet, wenn mehrere vorhanden sind

918 

919Wenn Sie wiederholt zur Anmeldung aufgefordert werden, finden Sie unter [Nicht angemeldet oder Token abgelaufen](/docs/de/troubleshoot-install#not-logged-in-or-token-expired) Prüfungen der Systemuhr und Schritte zur Wiederherstellung des Anmeldedatenspeichers unter macOS.

910 920 

911<h3 id="could-not-resolve-authentication-method">921<h3 id="could-not-resolve-authentication-method">

912 Authentifizierungsmethode konnte nicht aufgelöst werden922 Authentifizierungsmethode konnte nicht ermittelt werden

913</h3>923</h3>

914 924 

915Die Sitzung erreichte den API-Client ohne Anmeldedaten. [Hintergrundsitzungen](/docs/de/agent-view) und Cloud-Sitzungen zeigen diese Meldung an, wenn der Worker ohne Anmeldedaten startet. Interaktive, `-p`- und Agent SDK-Ausführungen melden denselben Zustand wie [Nicht angemeldet](#not-logged-in) und schreiben diese Zeichenkette nur in ihr Debug-Protokoll. Wenn Sie sie dort gefunden haben, folgen Sie stattdessen diesem Eintrag.925Die Sitzung hat den API-Client ohne Anmeldedaten erreicht. [Hintergrundsitzungen](/docs/de/agent-view) und Cloud-Sitzungen zeigen diese Meldung an, wenn der Worker ohne Anmeldedaten startet. Interaktive Ausführungen, `-p`-Ausführungen und Agent SDK-Ausführungen melden denselben Zustand als [Nicht angemeldet](#not-logged-in) und schreiben diese Zeichenfolge nur in ihr Debug-Log. Wenn Sie sie dort gefunden haben, folgen Sie stattdessen jenem Eintrag.

916 926 

917```text theme={null}927```text theme={null}

918Could not resolve authentication method. Expected one of apiKey, authToken, credentials, config, or profile to be set. Or for one of the "X-Api-Key" or "Authorization" headers to be explicitly omitted928Could not resolve authentication method. Expected one of apiKey, authToken, credentials, config, or profile to be set. Or for one of the "X-Api-Key" or "Authorization" headers to be explicitly omitted

919```929```

920 930 

921In aktuellen Versionen bedeutet der Fehler, dass dem Worker-Prozess keine Anmeldedaten zur Verfügung standen. Vor v2.1.174 konnte eine Hintergrundsitzung, die einem untätigen vorinitialisiertem Worker zugewiesen war, auf diese Weise fehlschlagen, selbst wenn gültige Anmeldedaten konfiguriert waren. Vor v2.1.176 konnte auch eine Cloud-Sitzung, die untätig war, bevor sie beansprucht wurde, fehlschlagen. Führen Sie ein Upgrade durch, um dies zu beheben.931In aktuellen Versionen bedeutet der Fehler, dass dem Worker-Prozess keine Anmeldedaten zur Verfügung standen. Vor v2.1.174 konnte eine Hintergrundsitzung, die einem inaktiven, vorinitialisierten Worker zugewiesen wurde, auf diese Weise fehlschlagen, auch wenn gültige Anmeldedaten konfiguriert waren. Vor v2.1.176 konnte dies auch bei einer Cloud-Sitzung passieren, die inaktiv war, bevor sie übernommen wurde. Aktualisieren Sie, um das Problem zu beheben.

922 932 

923**Was zu tun ist:**933**Was Sie tun können:**

924 934 

925* Führen Sie ein Upgrade auf v2.1.176 oder später durch, wenn dies in einer Hintergrund- oder Cloud-Sitzung angezeigt wird und Ihre Anmeldedaten bereits konfiguriert sind935* Aktualisieren Sie auf v2.1.176 oder höher, wenn dies in einer Hintergrund- oder Cloud-Sitzung auftritt und Ihre Anmeldedaten bereits konfiguriert sind

926* Bestätigen Sie, dass `ANTHROPIC_API_KEY`, `CLAUDE_CODE_OAUTH_TOKEN` oder Ihre Cloud-Provider-Anmeldedaten in der Umgebung gesetzt sind, die den Worker startet, nicht nur in Ihrer interaktiven Shell936* Prüfen Sie, ob `ANTHROPIC_API_KEY`, `CLAUDE_CODE_OAUTH_TOKEN` oder die Anmeldedaten Ihres Cloud-Anbieters in der Umgebung gesetzt sind, die den Worker startet, und nicht nur in Ihrer interaktiven Shell

927* Für das Agent SDK siehe [Authentifizierungseinrichtung in der Schnellstartanleitung](/docs/de/agent-sdk/quickstart#setup)937* Informationen zum Agent SDK finden Sie unter [Einrichtung der Authentifizierung im Schnellstart](/docs/de/agent-sdk/quickstart#setup)

928* Führen Sie `/status` in einer interaktiven Sitzung in derselben Umgebung aus, um zu bestätigen, welche Anmeldedatenquelle aufgelöst wird938* Führen Sie `/status` in einer interaktiven Sitzung in derselben Umgebung aus, um zu prüfen, welche Quelle für Anmeldedaten ermittelt wird

929 939 

930<h3 id="invalid-api-key">940<h3 id="invalid-api-key">

931 Ungültiger API-Schlüssel941 Ungültiger API-Schlüssel

932</h3>942</h3>

933 943 

934Die Umgebungsvariable `ANTHROPIC_API_KEY` oder das `apiKeyHelper`-Skript hat einen Schlüssel zurückgegeben, den die API abgelehnt hat, oder Claude Code hat einen Schlüssel von `ANTHROPIC_API_KEY` blockiert, bevor er ihn gesendet hat.944Die Umgebungsvariable `ANTHROPIC_API_KEY` oder das `apiKeyHelper`-Skript hat einen Schlüssel geliefert, den die API abgelehnt hat, oder Claude Code hat einen Schlüssel aus `ANTHROPIC_API_KEY` blockiert, bevor er gesendet wurde.

935 945 

936```text theme={null}946```text theme={null}

937Invalid API key · Fix external API key947Invalid API key · Fix external API key

938```948```

939 949 

940Wenn die Meldung nach `Fix external API key` mit einer Beschreibung wie `Invalid X-Api-Key header value from ANTHROPIC_API_KEY: it contains a line break at character 41 (120 characters on 2 lines).` fortgesetzt wird, hat die API den Schlüssel nie gesehen. Claude Code hat ein Zeichen gefunden, das HTTP-Header nicht tragen können, und die Anfrage gestoppt, bevor sie gesendet wurde. Siehe [Ungültiger Anforderungs-Header-Wert](#invalid-request-header-value), um zu erfahren, wie Sie die Beschreibung lesen und den Wert korrigieren.950Wenn die Meldung nach `Fix external API key` mit einer Beschreibung wie `Invalid X-Api-Key header value from ANTHROPIC_API_KEY: it contains a line break at character 41 (120 characters on 2 lines).` weitergeht, hat die API den Schlüssel nie gesehen. Claude Code hat ein Zeichen gefunden, das HTTP-Header nicht übertragen können, und die Anfrage vor dem Senden gestoppt. Unter [Ungültiger Wert im Request-Header](#invalid-request-header-value) erfahren Sie, wie Sie die Beschreibung lesen und den Wert korrigieren.

941 951 

942**Was zu tun ist:**952**Was Sie tun können:**

943 953 

944* Überprüfen Sie auf Tippfehler und bestätigen Sie, dass der Schlüssel nicht in der [Console](https://platform.claude.com/settings/keys) widerrufen wurde954* Prüfen Sie auf Tippfehler und vergewissern Sie sich, dass der Schlüssel in der [Console](https://platform.claude.com/settings/keys) nicht widerrufen wurde

945* Führen Sie in derselben Shell `env | grep ANTHROPIC` aus, oder in PowerShell `Get-ChildItem Env:ANTHROPIC*`. Tools wie direnv, dotenv-Shell-Plugins und IDE-Terminals können einen veralteten Schlüssel aus einer `.env`-Datei in Ihrem Projekt laden, ohne dass Sie ihn explizit setzen955* Führen Sie in derselben Shell `env | grep ANTHROPIC` aus, in PowerShell `Get-ChildItem Env:ANTHROPIC*`. Tools wie direnv, dotenv-Shell-Plugins und IDE-Terminals können einen veralteten Schlüssel aus einer `.env`-Datei in Ihrem Projekt laden, ohne dass Sie ihn explizit setzen.

946* Heben Sie `ANTHROPIC_API_KEY` auf und führen Sie `/login` aus, um stattdessen Abonnement-Authentifizierung zu verwenden956* Heben Sie `ANTHROPIC_API_KEY` auf und führen Sie `/login` aus, um stattdessen die Authentifizierung über Ihr Abonnement zu verwenden

947* Wenn der Schlüssel von einem [`apiKeyHelper`](/docs/de/settings-reference#apikeyhelper)-Skript stammt, führen Sie das Skript direkt aus, um zu bestätigen, dass es einen gültigen Schlüssel auf stdout ausgibt957* Wenn der Schlüssel aus einem [`apiKeyHelper`](/docs/de/settings-reference#apikeyhelper)-Skript stammt, führen Sie das Skript direkt aus, um zu prüfen, ob es einen gültigen Schlüssel auf stdout ausgibt

948* Führen Sie `/status` aus, um zu bestätigen, welche Anmeldedatenquelle Claude Code tatsächlich verwendet958* Führen Sie `/status` aus, um zu prüfen, welche Quelle für Anmeldedaten Claude Code tatsächlich verwendet

949 959 

950<h3 id="your-apikeyhelper-script-is-failing">960<h3 id="your-apikeyhelper-script-is-failing">

951 Ihr apiKeyHelper-Skript schlägt fehl961 Ihr apiKeyHelper-Skript schlägt fehl

952</h3>962</h3>

953 963 

954Claude Code hat den Befehl in Ihrer [`apiKeyHelper`](/docs/de/settings-reference#apikeyhelper)-Einstellung ausgeführt und keinen Schlüssel zurückbekommen. Ohne einen erreicht die Anfrage die API mit einer Platzhalter-Anmeldedaten, und die API lehnt sie mit `401` ab. Das `Authentication`-Panel im Terminal zeigt, welches dieser Ereignisse passiert ist:964Claude Code hat den Befehl in Ihrer Einstellung [`apiKeyHelper`](/docs/de/settings-reference#apikeyhelper) ausgeführt und keinen Schlüssel zurückerhalten. Ohne Schlüssel erreicht die Anfrage die API mit Platzhalter-Anmeldedaten, und die API lehnt sie mit `401` ab. Das `Authentication`-Panel im Terminal zeigt, welcher der folgenden Fälle eingetreten ist:

955 965 

956* Der Befehl ist mit einem Fehler beendet worden oder hat das Zeitlimit überschritten966* Der Befehl wurde mit einem Fehler beendet oder hat eine Zeitüberschreitung erreicht

957* Der Befehl hat nichts auf stdout ausgegeben967* Der Befehl hat nichts auf stdout ausgegeben

958* Der Befehl hat etwas anderes als den Schlüssel ausgegeben, z. B. ein Login-Banner oder eine Protokollzeile. Das Panel zeigt `returned output that cannot be used as an API key` und sagt, was falsch ist, ohne die Ausgabe zu wiederholen. Vor v2.1.227 hat Claude Code das gesendet, was der Befehl ausgegeben hat, nach dem Trimmen von umgebender Leerraum.968* Der Befehl hat etwas anderes als den Schlüssel ausgegeben, etwa ein Login-Banner oder eine Log-Zeile. Das Panel zeigt `returned output that cannot be used as an API key` und beschreibt das Problem, ohne die Ausgabe zu wiederholen. Vor v2.1.227 hat Claude Code alles gesendet, was der Befehl ausgegeben hat, nachdem umgebende Leerzeichen entfernt wurden.

959 969 

960```text theme={null}970```text theme={null}

961Your apiKeyHelper script is failing · This usually means you need to re-authenticate with your provider · Run /status to see the script's error output971Your apiKeyHelper script is failing · This usually means you need to re-authenticate with your provider · Run /status to see the script's error output

962```972```

963 973 

964Im [nicht-interaktiven Modus](/docs/de/headless) trägt stderr auch den spezifischen Grund, mit dem Präfix `apiKeyHelper failed:`.974Im [nicht interaktiven Modus](/docs/de/headless) enthält stderr zusätzlich den konkreten Grund, mit dem Präfix `apiKeyHelper failed:`.

965 975 

966Claude Code führt das Skript erneut aus und versucht die Anfrage bis zu zwei weitere Male, bevor diese Meldung angezeigt wird, sodass der Fehler innerhalb von drei Versuchen auftaucht. Vor v2.1.208 hat Claude Code das vollständige [Wiederholungsbudget](#automatic-retries) aufgewendet, um die Anfrage mit der Platzhalter-Anmeldedaten erneut zu senden, und dann einen generischen `401`-Authentifizierungsfehler statt des Skriptfehlers gemeldet.976Claude Code führt das Skript erneut aus und wiederholt die Anfrage bis zu zwei weitere Male, bevor diese Meldung angezeigt wird, sodass der Fehler innerhalb von drei Versuchen sichtbar wird. Vor v2.1.208 hat Claude Code das gesamte [Kontingent an Wiederholungsversuchen](#automatic-retries) damit verbraucht, die Anfrage mit den Platzhalter-Anmeldedaten erneut zu senden, und dann einen allgemeinen `401`-Authentifizierungsfehler statt des Skriptfehlers gemeldet.

967 977 

968Das Ausführen von `/login` hilft hier nicht: die Ausgabe des Helpers [hat Vorrang](/docs/de/authentication#authentication-precedence) vor einer gespeicherten Anmeldung, solange die Einstellung vorhanden ist.978`/login` hilft hier nicht: Die Ausgabe des Helpers [hat Vorrang](/docs/de/authentication#authentication-precedence) vor einer gespeicherten Anmeldung, solange die Einstellung vorhanden ist.

969 979 

970**Was zu tun ist:**980**Was Sie tun können:**

971 981 

972* Führen Sie den in `apiKeyHelper` konfigurierten Befehl direkt in Ihrer Shell aus, um den Fehler zu reproduzieren982* Führen Sie den in `apiKeyHelper` konfigurierten Befehl direkt in Ihrer Shell aus, um den Fehler zu reproduzieren

973* Wenn der Befehl eine abgelaufene Sitzung meldet, authentifizieren Sie sich erneut bei Ihrem Anmeldedaten-Provider, z. B. durch erneutes Anmelden bei Ihrem SSO oder Ihrem Secrets Vault983* Wenn der Befehl eine abgelaufene Sitzung meldet, authentifizieren Sie sich erneut bei Ihrem Anbieter für Anmeldedaten, zum Beispiel indem Sie sich erneut bei Ihrem SSO oder Secrets-Vault anmelden

974* Korrigieren Sie den Befehl so, dass er nur den Schlüssel auf stdout ausgibt, als ein einzelnes Token aus druckbarem ASCII bis zu 16.384 Zeichen, und mit Code 0 beendet wird. Siehe [Anmeldedaten mit apiKeyHelper rotieren](/docs/de/llm-gateway-connect#rotate-credentials-with-apikeyhelper) für eine funktionierende Einrichtung.984* Korrigieren Sie den Befehl so, dass er nur den Schlüssel auf stdout ausgibt, als einzelnes Token aus druckbaren ASCII-Zeichen mit bis zu 16.384 Zeichen, und mit Exit-Code 0 beendet wird. Eine funktionierende Einrichtung finden Sie unter [Anmeldedaten mit apiKeyHelper rotieren](/docs/de/llm-gateway-connect#rotate-credentials-with-apikeyhelper).

975* Führen Sie `/status` aus, um den Fehler zu sehen und zu bestätigen, dass `apiKeyHelper` die aktive Anmeldedatenquelle ist. Die `apiKeyHelper`-Zeile zeigt `Failing` mit dem Detail des letzten Fehlers, z. B. dem Exit-Code und der Fehlerausgabe des Befehls, und verschwindet nach der nächsten erfolgreichen Ausführung. Vor v2.1.274 zeigte `/status` nur die Anmeldedatenquelle, nicht den Fehler.985* Führen Sie `/status` aus, um den Fehler zu sehen und zu prüfen, ob `apiKeyHelper` die aktive Quelle für Anmeldedaten ist. Die Zeile `apiKeyHelper` zeigt `Failing` mit den Details des letzten Fehlers an, etwa dem Exit-Code und der Fehlerausgabe des Befehls, und verschwindet nach der nächsten erfolgreichen Ausführung. Vor v2.1.274 zeigte `/status` nur die Quelle der Anmeldedaten, nicht den Fehler.

976* Jedes Mal, wenn der Befehl fehlschlägt, erscheinen sein Exit-Code und seine Fehlerausgabe auch in einem `Authentication`-Panel im Terminal. Vor v2.1.212 war das Panel mit `Cloud authentication` betitelt.986* Jedes Mal, wenn der Befehl fehlschlägt, erscheinen sein Exit-Code und seine Fehlerausgabe auch in einem `Authentication`-Panel im Terminal. Vor v2.1.212 hieß das Panel `Cloud authentication`.

977 987 

978<h3 id="invalid-request-header-value">988<h3 id="invalid-request-header-value">

979 Ungültiger Anforderungs-Header-Wert989 Ungültiger Wert im Request-Header

980</h3>990</h3>

981 991 

982Ein Wert, den Claude Code als Anforderungs-Header senden wollte, enthält ein Zeichen, das HTTP-Header nicht tragen können: einen Zeilenumbruch, ein NUL-Byte oder ein Zeichen über `U+00FF`, z. B. ein gekrümmtes Anführungszeichen oder ein Leerzeichen mit Nullbreite. Claude Code stoppt die Anfrage, bevor etwas gesendet wird, und benennt die Variable oder Einstellung, die korrigiert werden muss. Die übliche Ursache ist eine Anmeldedaten, die aus einem Dokument oder Chat eingefügt wurde und ein unsichtbares Zeichen oder einen Zeilenumbruch trug.992Ein Wert, den Claude Code als Request-Header senden wollte, enthält ein Zeichen, das HTTP-Header nicht übertragen können: einen Zeilenumbruch, ein NUL-Byte oder ein Zeichen oberhalb von `U+00FF`, etwa ein typografisches Anführungszeichen oder ein Leerzeichen mit Nullbreite. Claude Code stoppt die Anfrage, bevor etwas gesendet wird, und nennt die zu korrigierende Variable oder Einstellung. Die übliche Ursache sind Anmeldedaten, die aus einem Dokument oder Chat eingefügt wurden und ein unsichtbares Zeichen oder einen versehentlichen Zeilenumbruch enthielten.

983 993 

984Claude Code führt diese Überprüfung durch, wenn es Anfragen direkt an die Claude API oder durch ein [LLM-Gateway](/docs/de/llm-gateway) sendet. Bei einem Cloud-Provider eines Drittanbieters wie [Amazon Bedrock](/docs/de/amazon-bedrock) führt Claude Code dies nicht vor dem Senden durch.994Claude Code führt diese Prüfung durch, wenn es Anfragen direkt oder über ein [LLM-Gateway](/docs/de/llm-gateway) an die Claude API sendet. Bei einem Cloud-Drittanbieter wie [Amazon Bedrock](/docs/de/amazon-bedrock) führt Claude Code sie vor dem Senden nicht durch.

985 995 

986```text theme={null}996```text theme={null}

987Invalid auth token · Fix external auth token997Invalid auth token · Fix external auth token


991 1001 

992Der erste Teil der Meldung hängt davon ab, woher der fehlerhafte Wert stammt:1002Der erste Teil der Meldung hängt davon ab, woher der fehlerhafte Wert stammt:

993 1003 

994* `Invalid auth token`: ein Bearer-Token von [`ANTHROPIC_AUTH_TOKEN`](/docs/de/env-vars) oder [`CLAUDE_CODE_OAUTH_TOKEN`](/docs/de/env-vars)1004* `Invalid auth token`: ein Bearer-Token aus [`ANTHROPIC_AUTH_TOKEN`](/docs/de/env-vars) oder [`CLAUDE_CODE_OAUTH_TOKEN`](/docs/de/env-vars)

995* `Invalid ANTHROPIC_CUSTOM_HEADERS`: ein Header-Name oder -Wert, den Sie in [`ANTHROPIC_CUSTOM_HEADERS`](/docs/de/env-vars) gesetzt haben. Die Beschreibung zählt, welches `Name: Value`-Paar fehlerhaft ist, z. B. `distinct header 2 of 3 parsed from ANTHROPIC_CUSTOM_HEADERS`, ohne den Namen oder Wert zu wiederholen, da Sie beide gewählt haben.1005* `Invalid ANTHROPIC_CUSTOM_HEADERS`: ein Header-Name oder -Wert, den Sie in [`ANTHROPIC_CUSTOM_HEADERS`](/docs/de/env-vars) gesetzt haben. Die Beschreibung gibt an, welches `Name: Value`-Paar fehlerhaft ist, etwa `distinct header 2 of 3 parsed from ANTHROPIC_CUSTOM_HEADERS`, ohne Namen oder Wert zu wiederholen, da Sie beide selbst gewählt haben.

996* `Invalid request header from the environment`: ein Wert, den Claude Code aus einer anderen Umgebungsvariable in einen Anforderungs-Header kopiert, z. B. `CLAUDE_AGENT_SDK_CLIENT_APP`. Die Beschreibung benennt die Variable, die korrigiert werden muss.1006* `Invalid request header from the environment`: ein Wert, den Claude Code aus einer anderen Umgebungsvariable in einen Request-Header kopiert, etwa `CLAUDE_AGENT_SDK_CLIENT_APP`. Die Beschreibung nennt die zu korrigierende Variable.

997 1007 

998Claude Code meldet einen fehlerhaften `ANTHROPIC_API_KEY`, der von dieser Überprüfung erfasst wird, als [Ungültiger API-Schlüssel](#invalid-api-key), mit derselben nachfolgenden Beschreibung. Es meldet eine fehlerhafte gespeicherte `/login`-Anmeldedaten als [Nicht angemeldet](#not-logged-in) statt; führen Sie `/login` aus, um eine neue zu speichern. Die Ausgabe eines [`apiKeyHelper`](/docs/de/settings-reference#apikeyhelper)-Skripts erreicht diese Überprüfung nie: Claude Code validiert sie, wenn das Skript ausgeführt wird, und die Ausgabe, die ein HTTP-Header nicht tragen kann, schlägt mit [Ihr apiKeyHelper-Skript schlägt fehl](#your-apikeyhelper-script-is-failing) fehl.1008Einen fehlerhaften `ANTHROPIC_API_KEY`, den diese Prüfung erkennt, meldet Claude Code als [Ungültiger API-Schlüssel](#invalid-api-key), mit derselben nachgestellten Beschreibung. Fehlerhafte gespeicherte `/login`-Anmeldedaten meldet es stattdessen als [Nicht angemeldet](#not-logged-in); führen Sie `/login` aus, um neue zu speichern. Die Ausgabe eines [`apiKeyHelper`](/docs/de/settings-reference#apikeyhelper)-Skripts erreicht diese Prüfung nie: Claude Code validiert sie bei der Ausführung des Skripts, und eine Ausgabe, die ein HTTP-Header nicht übertragen kann, schlägt mit [Ihr apiKeyHelper-Skript schlägt fehl](#your-apikeyhelper-script-is-failing) fehl.

999 1009 

1000Nach dem zweiten `·` beschreibt die Meldung das Problem, wie in diesem vollständigen Beispiel:1010Nach dem zweiten `·` beschreibt die Meldung das Problem, wie in diesem vollständigen Beispiel:

1001 1011 


1003Invalid auth token · Fix external auth token · Invalid Authorization header value from ANTHROPIC_AUTH_TOKEN: it contains a line break at character 41 (120 characters on 2 lines).1013Invalid auth token · Fix external auth token · Invalid Authorization header value from ANTHROPIC_AUTH_TOKEN: it contains a line break at character 41 (120 characters on 2 lines).

1004```1014```

1005 1015 

1006Positionen zählen Zeichen ab eins. Die Beschreibung wird aus festen Phrasen und Zeichenzählungen erstellt, sodass sie niemals den Wert selbst enthält. Sie benennt das fehlerhafte Zeichen nur, wenn es ein bekanntes unsichtbares oder typografisches Zeichen ist, z. B. eine Byte-Order-Marke, ein Leerzeichen mit Nullbreite oder ein gekrümmtes Anführungszeichen, und meldet alles andere als `a non-ASCII character`.1016Positionen zählen Zeichen beginnend bei eins. Die Beschreibung wird aus festen Formulierungen und Zeichenzahlen zusammengesetzt und enthält daher nie den Wert selbst. Sie nennt das betroffene Zeichen nur, wenn es sich um ein bekanntes unsichtbares oder typografisches Zeichen handelt, etwa eine Byte-Order-Mark, ein Leerzeichen mit Nullbreite oder ein typografisches Anführungszeichen, und meldet alles andere als `a non-ASCII character`.

1007 1017 

1008**Was zu tun ist:**1018**Was Sie tun können:**

1009 1019 

1010* Setzen Sie die Variable oder Einstellung, die die Meldung benennt, neu, indem Sie die Zeichen um die gemeldete Position neu eingeben, anstatt sie aus derselben Quelle erneut einzufügen1020* Setzen Sie die Variable oder Einstellung, die die Meldung nennt, neu und tippen Sie die Zeichen um die gemeldete Position herum neu ein, statt erneut aus derselben Quelle einzufügen

1011* Für `ANTHROPIC_CUSTOM_HEADERS` behalten Sie ein `Name: Value`-Paar pro Zeile und schreiben Sie das Paar neu, das die Meldung zählt1021* Bei `ANTHROPIC_CUSTOM_HEADERS` verwenden Sie ein `Name: Value`-Paar pro Zeile und schreiben das Paar neu, das die Meldung angibt

1012* Führen Sie `/status` aus, um zu bestätigen, welche Anmeldedatenquelle aktiv ist1022* Führen Sie `/status` aus, um zu prüfen, welche Quelle für Anmeldedaten aktiv ist

1013 1023 

1014<h3 id="this-organization-has-been-disabled">1024<h3 id="this-organization-has-been-disabled">

1015 Diese Organisation wurde deaktiviert1025 Diese Organisation wurde deaktiviert

1016</h3>1026</h3>

1017 1027 

1018Claude Code verwendet einen veralteten `ANTHROPIC_API_KEY` von einer deaktivierten Console-Organisation. Wenn Sie eine gespeicherte Abonnement-Anmeldung haben, setzt der Schlüssel diese außer Kraft.1028Claude Code verwendet einen veralteten `ANTHROPIC_API_KEY` aus einer deaktivierten Console-Organisation. Wenn Sie eine gespeicherte Anmeldung über Ihr Abonnement haben, überschreibt der Schlüssel diese.

1019 1029 

1020```text theme={null}1030```text theme={null}

1021Your ANTHROPIC_API_KEY belongs to a disabled organization · Unset the environment variable to use your subscription instead1031Your ANTHROPIC_API_KEY belongs to a disabled organization · Unset the environment variable to use your subscription instead


1023API Error: 400 ... This organization has been disabled.1033API Error: 400 ... This organization has been disabled.

1024```1034```

1025 1035 

1026Der Hinweis nach dem `·` hängt von Ihren gespeicherten Anmeldedaten ab: die erste Form erscheint, wenn eine gespeicherte `/login` übernehmen kann, nachdem Sie den Schlüssel aufgehoben haben, und die zweite, wenn der Schlüssel Ihre einzige Anmeldedaten ist.1036Der Hinweis nach dem `·` hängt von Ihren gespeicherten Anmeldedaten ab: Die erste Form erscheint, wenn eine gespeicherte `/login`-Anmeldung übernehmen kann, nachdem Sie den Schlüssel aufgehoben haben, und die zweite, wenn der Schlüssel Ihre einzigen Anmeldedaten sind.

1027 1037 

1028Umgebungsvariablen haben Vorrang vor `/login`, sodass ein Schlüssel, der in Ihrem Shell-Profil exportiert oder aus einer `.env`-Datei geladen wird, verwendet wird, selbst wenn Sie ein funktionierendes Pro- oder Max-Abonnement haben. Im nicht-interaktiven Modus (`-p`) wird der Schlüssel immer verwendet, wenn er vorhanden ist.1038Umgebungsvariablen haben Vorrang vor `/login`, sodass ein in Ihrem Shell-Profil exportierter oder aus einer `.env`-Datei geladener Schlüssel auch dann verwendet wird, wenn Sie ein funktionierendes Pro- oder Max-Abonnement haben. Im nicht interaktiven Modus (`-p`) wird der Schlüssel immer verwendet, wenn er vorhanden ist.

1029 1039 

1030**Was zu tun ist:**1040**Was Sie tun können:**

1031 1041 

1032* Heben Sie `ANTHROPIC_API_KEY` in der aktuellen Shell auf und entfernen Sie ihn aus Ihrem Shell-Profil, dann starten Sie `claude` neu1042* Heben Sie `ANTHROPIC_API_KEY` in der aktuellen Shell auf, entfernen Sie ihn aus Ihrem Shell-Profil und starten Sie `claude` dann neu

1033* Wenn die Meldung `Update or unset` sagt, haben Sie keine gespeicherte Anmeldung, auf die Sie zurückgreifen können. Heben Sie den Schlüssel auf und führen Sie `/login` aus, oder ersetzen Sie den Schlüssel durch einen von einer aktiven Console-Organisation.1043* Wenn die Meldung `Update or unset` lautet, haben Sie keine gespeicherte Anmeldung, auf die zurückgegriffen werden kann. Heben Sie den Schlüssel auf und führen Sie `/login` aus, oder ersetzen Sie den Schlüssel durch einen aus einer aktiven Console-Organisation.

1034* Führen Sie danach `/status` aus, um zu bestätigen, dass die aktive Anmeldedaten Ihr Abonnement ist1044* Führen Sie anschließend `/status` aus, um zu prüfen, ob Ihr Abonnement die aktiven Anmeldedaten sind

1035* Wenn keine Umgebungsvariable gesetzt ist und der Fehler weiterhin besteht, kontaktieren Sie den Support oder melden Sie sich mit einem anderen Konto an.1045* Wenn keine Umgebungsvariable gesetzt ist und der Fehler weiterhin auftritt, wenden Sie sich an den Support oder melden Sie sich mit einem anderen Konto an.

1036 1046 

1037<h3 id="your-organization-has-disabled-api-key-authentication">1047<h3 id="your-organization-has-disabled-api-key-authentication">

1038 Ihre Organisation hat die API-Schlüssel-Authentifizierung deaktiviert1048 Ihre Organisation hat die Authentifizierung per API-Schlüssel deaktiviert

1039</h3>1049</h3>

1040 1050 

1041Diese Meldung erfordert Claude Code v2.1.169 oder später. Der Administrator Ihrer Console-Organisation hat die API-Schlüssel-Authentifizierung deaktiviert, sodass die API den Schlüssel ablehnt, den Claude Code sendet. Der Wiederherstellungshinweis nach dem `·` variiert je nachdem, woher der Schlüssel stammt:1051Diese Meldung erfordert Claude Code v2.1.169 oder höher. Der Admin Ihrer Console-Organisation hat die Authentifizierung per API-Schlüssel deaktiviert, daher lehnt die API den Schlüssel ab, den Claude Code sendet. Der Hinweis zur Behebung nach dem `·` hängt davon ab, woher der Schlüssel stammt:

1042 1052 

1043```text theme={null}1053```text theme={null}

1044Your organization has disabled API key authentication · Run /login to sign in with your claude.ai account1054Your organization has disabled API key authentication · Run /login to sign in with your claude.ai account


1048Your organization has disabled API key authentication · Sign in again with your claude.ai account1058Your organization has disabled API key authentication · Sign in again with your claude.ai account

1049```1059```

1050 1060 

1051Die letzte Form erscheint in einer Sitzung, die die Claude Desktop-App ausführt, z. B. die Registerkarte „Code" oder Cowork, wo Sie sich erneut über die App anmelden.1061Die letzte Form erscheint in einer Sitzung, die die Claude Desktop-App ausführt, etwa im Code-Tab oder in Cowork, wo Sie sich in der App erneut anmelden.

1052 1062 

1053Umgebungsvariablen und `apiKeyHelper` haben Vorrang vor `/login`, sodass das alleinige Ausführen von `/login` nicht hilft, während einer von ihnen noch einen Schlüssel liefert. Siehe [Authentifizierungspriorität](/docs/de/authentication#authentication-precedence).1063Umgebungsvariablen und `apiKeyHelper` haben Vorrang vor `/login`, daher hilft `/login` allein nicht, solange eines davon noch einen Schlüssel liefert. Siehe [Rangfolge der Authentifizierung](/docs/de/authentication#authentication-precedence).

1054 1064 

1055**Was zu tun ist:**1065**Was Sie tun können:**

1056 1066 

1057* Wenn die Meldung `ANTHROPIC_API_KEY` benennt, heben Sie es in der aktuellen Shell auf und entfernen Sie es aus Ihrem Shell-Profil oder `.env`-Datei, dann starten Sie `claude` neu1067* Wenn die Meldung `ANTHROPIC_API_KEY` nennt, heben Sie die Variable in der aktuellen Shell auf, entfernen Sie sie aus Ihrem Shell-Profil oder Ihrer `.env`-Datei und starten Sie `claude` dann neu

1058* Wenn die Meldung `apiKeyHelper` benennt, entfernen Sie die [`apiKeyHelper`](/docs/de/settings-reference#apikeyhelper)-Einstellung aus Ihrer `settings.json`1068* Wenn die Meldung `apiKeyHelper` nennt, entfernen Sie die Einstellung [`apiKeyHelper`](/docs/de/settings-reference#apikeyhelper) aus Ihrer `settings.json`

1059* Führen Sie `/login` aus, um sich mit Ihrem claude.ai-Konto anzumelden1069* Führen Sie `/login` aus, um sich mit Ihrem claude.ai-Konto anzumelden

1060* Führen Sie danach `/status` aus, um zu bestätigen, dass die aktive Anmeldedaten Ihr Abonnement statt eines API-Schlüssels ist1070* Führen Sie anschließend `/status` aus, um zu prüfen, ob Ihr Abonnement und nicht ein API-Schlüssel die aktiven Anmeldedaten sind

1061* Wenn Sie die API-Schlüssel-Authentifizierung für die Automatisierung benötigen, bitten Sie Ihren Organisations-Administrator, sie in der Console erneut zu aktivieren1071* Wenn Sie die Authentifizierung per API-Schlüssel für die Automatisierung benötigen, bitten Sie den Admin Ihrer Organisation, sie in der Console wieder zu aktivieren

1062 1072 

1063<h3 id="your-organization-has-disabled-claude-subscription-access">1073<h3 id="your-organization-has-disabled-claude-subscription-access">

1064 Ihre Organisation hat den Claude-Abonnement-Zugriff deaktiviert1074 Ihre Organisation hat den Zugriff über Claude-Abonnements deaktiviert

1065</h3>1075</h3>

1066 1076 

1067Ihre Claude-Organisation erlaubt nicht, sich mit einer Abonnement-Anmeldung bei Claude Code anzumelden. Das erneute Ausführen von `/login` mit demselben Konto gibt denselben Fehler zurück.1077Ihre Claude-Organisation erlaubt keine Anmeldung bei Claude Code über ein Abonnement. Wenn Sie `/login` mit demselben Konto erneut ausführen, erhalten Sie denselben Fehler.

1068 1078 

1069```text theme={null}1079```text theme={null}

1070Your organization has disabled Claude subscription access for Claude Code · Use an Anthropic API key instead, or ask your admin to enable access1080Your organization has disabled Claude subscription access for Claude Code · Use an Anthropic API key instead, or ask your admin to enable access

1071```1081```

1072 1082 

1073Dies ist eine serverseitige Organisations-Einstellung, sodass sie nicht durch lokale Einstellungen, Umgebungsvariablen oder CLI-Flags überschrieben werden kann.1083Dies ist eine serverseitige Organisationseinstellung und kann daher nicht über lokale Einstellungen, Umgebungsvariablen oder CLI-Flags überschrieben werden.

1074 1084 

1075Das Agent SDK und der `-p`-nicht-interaktive Modus zeigen dies als den Fehlercode `oauth_org_not_allowed`.1085Das Agent SDK und der nicht interaktive Modus `-p` melden dies als Fehlercode `oauth_org_not_allowed`.

1076 1086 

1077**Was zu tun ist:**1087**Was Sie tun können:**

1078 1088 

1079* Bitten Sie Ihren Administrator, den Claude Code-Zugriff für Ihre Organisation zu aktivieren1089* Bitten Sie Ihren Admin, den Zugriff auf Claude Code für Ihre Organisation zu aktivieren

1080* Authentifizieren Sie sich mit einem Console-API-Schlüssel statt mit Ihrem Abonnement. Siehe [Claude Console-Authentifizierung](/docs/de/authentication#claude-console-authentication) für die Einrichtung.1090* Authentifizieren Sie sich mit einem Console-API-Schlüssel statt mit Ihrem Abonnement. Die Einrichtung ist unter [Authentifizierung über die Claude Console](/docs/de/authentication#claude-console-authentication) beschrieben.

1081* Wenn Sie der Administrator sind und keine Option zum Aktivieren des Zugriffs sehen, kontaktieren Sie den [Anthropic-Support](https://support.claude.com)1091* Wenn Sie der Admin sind und keine Option zum Aktivieren des Zugriffs sehen, wenden Sie sich an den [Anthropic-Support](https://support.claude.com)

1082 1092 

1083<h3 id="routines-are-disabled-by-your-organizations-policy">1093<h3 id="routines-are-disabled-by-your-organizations-policy">

1084 Routinen sind durch die Richtlinie Ihrer Organisation deaktiviert1094 Routinen sind durch die Richtlinie Ihrer Organisation deaktiviert

1085</h3>1095</h3>

1086 1096 

1087Ein Eigentümer in Ihrer Team- oder Enterprise-Organisation hat Routinen auf Organisations-Ebene deaktiviert. Der Fehler erscheint, wenn Sie versuchen, eine Routine zu erstellen oder auszuführen, z. B. über die [Routinen](/docs/de/routines)-Benutzeroberfläche auf claude.ai/code. Auf Claude Code v2.1.227 oder später [verbirgt die gleiche Einstellung auch `/schedule`](/docs/de/routines#troubleshooting) in der CLI.1097Ein Owner in Ihrer Team- oder Enterprise-Organisation hat Routinen auf Organisationsebene deaktiviert. Der Fehler erscheint, wenn Sie versuchen, eine Routine zu erstellen oder auszuführen, zum Beispiel über die [Routinen](/docs/de/routines)-Oberfläche auf claude.ai/code. Ab Claude Code v2.1.227 [blendet](/docs/de/routines#troubleshooting) dieselbe Einstellung auch `/schedule` in der CLI aus.

1088 1098 

1089```text theme={null}1099```text theme={null}

1090Routines are disabled by your organization's policy.1100Routines are disabled by your organization's policy.

1091```1101```

1092 1102 

1093Dies ist eine serverseitige Einstellung, sodass sie nicht durch lokale Einstellungen, Umgebungsvariablen oder CLI-Flags überschrieben werden kann.1103Dies ist eine serverseitige Einstellung und kann daher nicht über lokale Einstellungen, Umgebungsvariablen oder CLI-Flags überschrieben werden.

1094 1104 

1095**Was zu tun ist:**1105**Was Sie tun können:**

1096 1106 

1097* Bitten Sie einen Eigentümer in Ihrer Organisation, den **Routines**-Schalter unter [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code) zu aktivieren1107* Bitten Sie einen Owner in Ihrer Organisation, den Schalter **Routines** unter [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code) zu aktivieren

1098* Für einmalige geplante Arbeiten, die keine Organisations-Ebenen-Routinen erfordern, siehe [geplante Aufgaben](/docs/de/scheduled-tasks)1108* Für einmalige geplante Arbeiten, die keine Routinen auf Organisationsebene erfordern, siehe [geplante Aufgaben](/docs/de/scheduled-tasks)

1099 1109 

1100<h3 id="remote-control-requires-the-anthropic-api">1110<h3 id="remote-control-requires-the-anthropic-api">

1101 Remote Control erfordert die Anthropic API1111 Remote Control erfordert die Anthropic API

1102</h3>1112</h3>

1103 1113 

1104Die Sitzung spricht nicht direkt mit der Anthropic API, was [Remote Control](/docs/de/remote-control) erfordert.1114Die Sitzung kommuniziert nicht direkt mit der Anthropic API, was [Remote Control](/docs/de/remote-control) voraussetzt.

1105 1115 

1106```text theme={null}1116```text theme={null}

1107Remote Control is only available when using Claude via api.anthropic.com. CLAUDE_CODE_USE_BEDROCK is set, so this session is using Amazon Bedrock — unset it (or run in a shell without it) to use Remote Control.1117Remote Control is only available when using Claude via api.anthropic.com. CLAUDE_CODE_USE_BEDROCK is set, so this session is using Amazon Bedrock — unset it (or run in a shell without it) to use Remote Control.

1108```1118```

1109 1119 

1110Ein zweiter Satz erklärt, was die Sitzung von der Anthropic API weg geleitet hat; vor v2.1.219 war die Meldung nur der erste Satz. Je nach Ursache benennt die Meldung:1120Ein zweiter Satz erklärt, wodurch die Sitzung von der Anthropic API weggeleitet wurde; vor v2.1.219 bestand die Meldung nur aus dem ersten Satz. Je nach Ursache nennt die Meldung:

1111 1121 

1112* Eine `CLAUDE_CODE_USE_*`-Provider-Variable, z. B. `CLAUDE_CODE_USE_BEDROCK` für [Amazon Bedrock](/docs/de/amazon-bedrock) oder `CLAUDE_CODE_USE_VERTEX` für [Google Cloud's Agent Platform](/docs/de/google-vertex-ai)1122* Eine `CLAUDE_CODE_USE_*`-Anbietervariable, etwa `CLAUDE_CODE_USE_BEDROCK` für [Amazon Bedrock](/docs/de/amazon-bedrock) oder `CLAUDE_CODE_USE_VERTEX` für [Google Cloud's Agent Platform](/docs/de/google-vertex-ai)

1113* [`ANTHROPIC_BASE_URL`](/docs/de/env-vars), das auf einen anderen Host als `api.anthropic.com` zeigt, z. B. ein [LLM-Gateway](/docs/de/llm-gateway) oder Proxy, selbst wenn Sie sich mit claude.ai anmelden; vor v2.1.196 blockierte eine benutzerdefinierte Basis-URL Remote Control nicht1123* [`ANTHROPIC_BASE_URL`](/docs/de/env-vars), das auf einen anderen Host als `api.anthropic.com` verweist, etwa ein [LLM-Gateway](/docs/de/llm-gateway) oder einen Proxy, auch wenn Sie sich mit claude.ai anmelden; vor v2.1.196 hat eine benutzerdefinierte Basis-URL Remote Control nicht blockiert

1114* `ANTHROPIC_UNIX_SOCKET` gesetzt, sodass die Sitzung ihre Anfragen durch einen lokalen Socket statt an `api.anthropic.com` sendet1124* `ANTHROPIC_UNIX_SOCKET` ist gesetzt, sodass die Sitzung ihre Anfragen über einen lokalen Socket statt an `api.anthropic.com` sendet

1115* Eine Enterprise-[Cloud-Gateway](/docs/de/claude-apps-gateway)-Anmeldung, die über `/login` erfolgt ist, die Remote Control nicht unterstützt und keine Variable zum Aufheben hat1125* Eine Anmeldung bei einem Enterprise-[Cloud-Gateway](/docs/de/claude-apps-gateway) über `/login`, die Remote Control nicht unterstützt und keine Variable hat, die aufgehoben werden könnte

1116 1126 

1117**Was zu tun ist:**1127**Was Sie tun können:**

1118 1128 

1119* Heben Sie die Variable auf, die die Meldung benennt, z. B. `CLAUDE_CODE_USE_BEDROCK` oder `ANTHROPIC_BASE_URL`, und starten Sie die Sitzung neu, oder starten Sie Remote Control von einer Sitzung aus, die direkt mit der Anthropic API spricht1129* Heben Sie die Variable auf, die die Meldung nennt, etwa `CLAUDE_CODE_USE_BEDROCK` oder `ANTHROPIC_BASE_URL`, und starten Sie die Sitzung neu, oder starten Sie Remote Control aus einer Sitzung, die direkt mit der Anthropic API kommuniziert

1120* Wenn die Variable nicht in Ihrer Shell gesetzt ist, überprüfen Sie den `env`-Schlüssel in Ihren [Einstellungsdateien](/docs/de/settings#where-settings-live), die Umgebungsvariablen auf jede Sitzung anwenden1130* Wenn die Variable in Ihrer Shell nicht gesetzt ist, prüfen Sie den Schlüssel `env` in Ihren [Einstellungsdateien](/docs/de/settings#where-settings-live), der Umgebungsvariablen auf jede Sitzung anwendet

1121* Für diese und die anderen Remote Control-Startup-Meldungen siehe [Remote Control beheben](/docs/de/remote-control#troubleshooting)1131* Für diese und die anderen Startmeldungen von Remote Control siehe [Fehlerbehebung für Remote Control](/docs/de/remote-control#troubleshooting)

1122 1132 

1123<h3 id="remote-control-couldnt-refresh-your-login">1133<h3 id="remote-control-couldnt-refresh-your-login">

1124 Remote Control konnte Ihre Anmeldung nicht aktualisieren1134 Remote Control konnte Ihre Anmeldung nicht erneuern

1125</h3>1135</h3>

1126 1136 

1127Claude Code führt eine Live-[Remote Control](/docs/de/remote-control)-Verbindung auf kurzlebigen Anmeldedaten aus, die es mit Ihrer gespeicherten claude.ai-Anmeldung erhält und erneuert. Wenn claude.ai diese Anmeldung nicht mehr akzeptiert oder Claude Code keine gespeicherte Anmeldung mehr hat, stoppt Claude Code Remote Control und benötigt Sie, um sich erneut anzumelden. Jeder Fehler kann auftreten, während Claude Code noch verbunden wird, oder später, wenn es die Anmeldedaten erneuert.1137Claude Code betreibt eine aktive [Remote Control](/docs/de/remote-control)-Verbindung mit kurzlebigen Anmeldedaten, die es mithilfe Ihrer gespeicherten claude.ai-Anmeldung abruft und erneuert. Wenn claude.ai diese Anmeldung nicht mehr akzeptiert oder Claude Code keine gespeicherte Anmeldung mehr hat, beendet Claude Code Remote Control, und Sie müssen sich erneut anmelden. Beide Fehler können auftreten, während Claude Code noch die Verbindung herstellt, oder später, wenn es die Anmeldedaten erneuert.

1128 1138 

1129Wenn Claude Code den Login-Service auffordert, Ihre gespeicherte Anmeldung zu aktualisieren, und keine Antwort erhält, behält es Remote Control am Laufen und versucht die Aktualisierung erneut, während die Anmeldedaten der Verbindung noch gültig sind. Eine Aktualisierung erhält keine Antwort, wenn Claude Code den Login-Service nicht erreichen kann, die Anfrage das Zeitlimit überschreitet oder der Service fehlschlägt, ohne Ihre Anmeldung abzulehnen. Wenn der Login-Service immer noch nicht antwortet, wenn diese Anmeldedaten ablaufen, stoppt Claude Code Remote Control und meldet `OAuth token refresh failed`.1139Wenn Claude Code den Anmeldedienst auffordert, Ihre gespeicherte Anmeldung zu erneuern, und keine Antwort erhält, lässt es Remote Control weiterlaufen und versucht die Erneuerung erneut, solange die aktuellen Anmeldedaten der Verbindung noch gültig sind. Eine Erneuerung erhält keine Antwort, wenn Claude Code den Anmeldedienst nicht erreichen kann, die Anfrage eine Zeitüberschreitung erreicht oder der Dienst fehlschlägt, ohne Ihre Anmeldung abzulehnen. Wenn der Anmeldedienst beim Ablauf dieser Anmeldedaten immer noch nicht antwortet, beendet Claude Code Remote Control und meldet `OAuth token refresh failed`.

1130 1140 

1131Wenn Claude Code Remote Control stoppt, zeigt es den Grund in einer Warnung und in einer Transkriptzeile an, die mit `Remote Control disconnected` beginnt. Ihre lokale Sitzung läuft ohne Remote Control weiter. Dieser Abschnitt behandelt diese Zeilen:1141Wenn Claude Code Remote Control beendet, zeigt es den Grund in einer Warnung und in einer Transkriptzeile an, die mit `Remote Control disconnected` beginnt. Ihre lokale Sitzung läuft ohne Remote Control weiter. Dieser Abschnitt behandelt diese Zeilen:

1132 1142 

1133```text theme={null}1143```text theme={null}

1134Remote Control disconnected — Claude.ai login expired — run /login to restore Remote Control1144Remote Control disconnected — Claude.ai login expired — run /login to restore Remote Control


1140Remote Control disconnected — Signed out of Claude — run /login, then /remote-control1150Remote Control disconnected — Signed out of Claude — run /login, then /remote-control

1141```1151```

1142 1152 

1143Claude Code benennt die Ursache in der Mitte der Meldung:1153Claude Code nennt die Ursache im mittleren Teil der Meldung:

1144 1154 

1145* `Claude.ai login expired` und `Claude.ai login was rejected`: claude.ai akzeptiert Ihren gespeicherten Login-Token nicht mehr, weil er abgelaufen oder widerrufen wurde1155* `Claude.ai login expired` und `Claude.ai login was rejected`: claude.ai akzeptiert Ihr gespeichertes Anmelde-Token nicht mehr, weil es abgelaufen ist oder widerrufen wurde

1146* `OAuth token unavailable`: Claude Code hatte keinen gespeicherten Login-Token, als die Anmeldedaten der Verbindung zur Erneuerung fällig wurden1156* `OAuth token unavailable`: Claude Code hatte kein gespeichertes Anmelde-Token, als die Anmeldedaten der Verbindung erneuert werden mussten

1147* `OAuth token refresh failed`: claude.ai lehnte Ihren gespeicherten Login-Token ab, während Claude Code sich erneut verbunden hat, und das Aktualisieren des Tokens hat keinen neuen erzeugt1157* `OAuth token refresh failed`: claude.ai hat Ihr gespeichertes Anmelde-Token abgelehnt, während Claude Code die Verbindung wiederherstellte, und die Erneuerung des Tokens hat kein neues geliefert

1148* `JWT refresh failed: no OAuth token`: Claude Code hat keinen gespeicherten Login-Token zum Erneuern gefunden1158* `JWT refresh failed: no OAuth token`: Claude Code hat kein gespeichertes Anmelde-Token zum Erneuern gefunden

1149* `Signed out of Claude`: Sie haben sich auf dieser Maschine abgemeldet, z. B. durch Ausführung von `/logout` in einem anderen Terminal, sodass Claude Code keine gespeicherte Anmeldung mehr hat, um die Verbindung zu erneuern1159* `Signed out of Claude`: Sie haben sich auf diesem Rechner abgemeldet, zum Beispiel durch Ausführen von `/logout` in einem anderen Terminal, sodass Claude Code keine gespeicherte Anmeldung mehr hat, mit der es die Verbindung erneuern kann

1150 1160 

1151**Was zu tun ist:**1161**Was Sie tun können:**

1152 1162 

1153* Führen Sie `/login` aus, um sich erneut anzumelden1163* Führen Sie `/login` aus, um sich erneut anzumelden

1154* Führen Sie `/remote-control` aus, um die Sitzung erneut zu verbinden. Meldungen, die mit `run /login to restore Remote Control` enden, benötigen diesen Schritt nicht: Claude Code verbindet sich automatisch erneut, sobald Sie sich anmelden.1164* Führen Sie `/remote-control` aus, um die Sitzung wieder zu verbinden. Meldungen, die mit `run /login to restore Remote Control` enden, benötigen diesen Schritt nicht: Claude Code verbindet sich nach Ihrer Anmeldung automatisch wieder.

1155 1165 

1156Vor v2.1.224 las `OAuth token refresh failed — run /login to re-authenticate` `OAuth token refresh failed — re-authenticate, then re-enable Remote Control`, und `JWT refresh failed: no OAuth token — run /login` las `no OAuth token available for recovery (code <N>)`. Die Meldungen `Claude.ai login expired`, `Claude.ai login was rejected` und `OAuth token unavailable` wurden in v2.1.225 hinzugefügt.1166Vor v2.1.224 lautete `OAuth token refresh failed — run /login to re-authenticate` noch `OAuth token refresh failed — re-authenticate, then re-enable Remote Control`, und `JWT refresh failed: no OAuth token — run /login` lautete `no OAuth token available for recovery (code <N>)`. Die Meldungen `Claude.ai login expired`, `Claude.ai login was rejected` und `OAuth token unavailable` wurden in v2.1.225 hinzugefügt.

1157 1167 

1158Vor v2.1.238 meldete Claude Code die Fälle, die jetzt `Signed out of Claude` sagen, als `JWT refresh failed: no OAuth token — run /login`, und stoppt Remote Control mit `Claude.ai login expired — run /login to restore Remote Control`, sobald eine Login-Aktualisierung keine Antwort erhielt.1168Vor v2.1.238 meldete Claude Code die Fälle, die jetzt `Signed out of Claude` lauten, als `JWT refresh failed: no OAuth token — run /login` und beendete Remote Control mit `Claude.ai login expired — run /login to restore Remote Control`, sobald eine Erneuerung der Anmeldung keine Antwort erhielt.

1159 1169 

1160<h3 id="remote-control-stopped-because-the-signed-in-account-changed">1170<h3 id="remote-control-stopped-because-the-signed-in-account-changed">

1161 Remote Control wurde gestoppt, weil sich das angemeldete Konto geändert hat1171 Remote Control wurde beendet, weil sich das angemeldete Konto geändert hat

1162</h3>1172</h3>

1163 1173 

1164Claude Code zeigt diese Zeile während einer [Remote Control](/docs/de/remote-control)-Sitzung an, wenn Sie sich auf dieser Maschine bei einem anderen claude.ai-Konto oder einer anderen Organisation anmelden. Sie haben den Wechsel außerhalb der Claude Code-Sitzung vorgenommen, z. B. durch Ausführung von `/login` in einem anderen Terminal.1174Claude Code zeigt diese Zeile während einer [Remote Control](/docs/de/remote-control)-Sitzung an, wenn Sie sich auf diesem Rechner bei einem anderen claude.ai-Konto oder einer anderen Organisation anmelden. Sie haben den Wechsel außerhalb der Claude Code-Sitzung vorgenommen, zum Beispiel durch Ausführen von `/login` in einem anderen Terminal.

1165 1175 

1166Eine Remote Control-Sitzung, die Sie gestartet haben, während Sie über `/login` angemeldet waren, gehört zum claude.ai-Konto und zur Organisation, die zum Zeitpunkt des Starts angemeldet waren.1176Eine Remote-Control-Sitzung, die Sie gestartet haben, während Sie über `/login` angemeldet waren, gehört zu dem claude.ai-Konto und der Organisation, die zu diesem Zeitpunkt angemeldet waren.

1167 1177 

1168```text theme={null}1178```text theme={null}

1169Remote Control disconnected — signed-in claude.ai account or organization changed on this machine — run /remote-control to start a session for the current account, or /login to switch back, then /remote-control1179Remote Control disconnected — signed-in claude.ai account or organization changed on this machine — run /remote-control to start a session for the current account, or /login to switch back, then /remote-control

1170```1180```

1171 1181 

1172Claude Code stoppt die Remote Control-Sitzung, sobald claude.ai bestätigt, dass sich das Konto oder die Organisation geändert hat. Ihre lokale Sitzung läuft ohne Remote Control weiter.1182Claude Code beendet die Remote-Control-Sitzung, sobald claude.ai bestätigt, dass sich das Konto oder die Organisation geändert hat. Ihre lokale Sitzung läuft ohne Remote Control weiter.

1173 1183 

1174**Was zu tun ist:**1184**Was Sie tun können:**

1175 1185 

1176* Führen Sie `/remote-control` aus, um eine neue Remote Control-Sitzung unter dem aktuellen Konto oder der aktuellen Organisation zu starten1186* Führen Sie `/remote-control` aus, um eine neue Remote-Control-Sitzung unter dem aktuellen Konto oder der aktuellen Organisation zu starten

1177* Um zurückzuwechseln, führen Sie `/login` aus und melden Sie sich erneut bei dem vorherigen Konto oder der vorherigen Organisation an. Dann führen Sie `/remote-control` aus.1187* Um zurückzuwechseln, führen Sie `/login` aus und melden Sie sich erneut beim vorherigen Konto oder der vorherigen Organisation an. Führen Sie dann `/remote-control` aus.

1178 1188 

1179Vor v2.1.234 bemerkte Claude Code nicht, wenn Sie sich außerhalb der Claude Code-Sitzung bei einem anderen Konto oder einer anderen Organisation anmeldeten. Claude Code behielt die Remote Control-Sitzung verbunden, bis eine spätere Anfrage an den Remote Control-Server mit `Remote Control server rejected the request (HTTP 404)` fehlschlug. Dieser Fehler konnte Stunden nach dem Wechsel auftreten.1189Vor v2.1.234 hat Claude Code nicht bemerkt, wenn Sie außerhalb der Claude Code-Sitzung zu einem anderen Konto oder einer anderen Organisation gewechselt sind. Claude Code hielt die Remote-Control-Sitzung verbunden, bis eine spätere Anfrage an den Remote-Control-Server mit `Remote Control server rejected the request (HTTP 404)` fehlschlug. Dieser Fehler konnte Stunden nach dem Wechsel auftreten.

1180 1190 

1181<h3 id="remote-control-stopped-because-the-app-running-the-session-signed-out-or-switched-accounts">1191<h3 id="remote-control-stopped-because-the-app-running-the-session-signed-out-or-switched-accounts">

1182 Remote Control wurde gestoppt, weil sich die App, die die Sitzung ausführt, abgemeldet oder Konten gewechselt hat1192 Remote Control wurde beendet, weil sich die App, die die Sitzung ausführt, abgemeldet oder das Konto gewechselt hat

1183</h3>1193</h3>

1184 1194 

1185Wenn die Claude Desktop-App oder eine IDE Ihre Sitzung hostet, erhält Claude Code seinen Login-Token von dieser App statt von `/login`. Wenn claude.ai diesen Token ablehnt, fragt Claude Code die App nach einem neuen. Wenn die App antwortet, dass sie abgemeldet ist, oder dass sie jetzt bei einem anderen Claude-Konto angemeldet ist, beendet Claude Code die [Remote Control](/docs/de/remote-control)-Sitzung und sendet der App eine dieser Zeilen:1195Wenn die Claude Desktop-App oder eine IDE Ihre Sitzung hostet, erhält Claude Code sein Anmelde-Token von dieser App statt von `/login`. Wenn claude.ai dieses Token ablehnt, fordert Claude Code bei der App ein neues an. Wenn die App antwortet, dass sie abgemeldet ist oder jetzt bei einem anderen Claude-Konto angemeldet ist, beendet Claude Code die [Remote Control](/docs/de/remote-control)-Sitzung und sendet der App eine dieser Zeilen:

1186 1196 

1187```text theme={null}1197```text theme={null}

1188Remote Control stopped — the app running this session is now signed in to a different Claude account1198Remote Control stopped — the app running this session is now signed in to a different Claude account


1191 1201 

1192Ihre lokale Sitzung läuft ohne Remote Control weiter.1202Ihre lokale Sitzung läuft ohne Remote Control weiter.

1193 1203 

1194**Was zu tun ist:**1204**Was Sie tun können:**

1195 1205 

1196* Wenn die App abgemeldet ist, melden Sie sich erneut an und schalten Sie Remote Control in der App wieder ein1206* Wenn die App abgemeldet ist, melden Sie sich erneut bei ihr an und schalten Sie Remote Control dann in der App wieder ein

1197* Wenn die App Konten gewechselt hat, kann Claude Code die beendete Sitzung unter dem neuen Konto nicht fortsetzen. Starten Sie eine neue Remote Control-Sitzung unter diesem Konto.1207* Wenn die App das Konto gewechselt hat, kann Claude Code die beendete Sitzung nicht unter dem neuen Konto fortsetzen. Starten Sie eine neue Remote-Control-Sitzung unter diesem Konto.

1198 1208 

1199Vor v2.1.238 sendete Claude Code der App die unter [Remote Control konnte Ihre Anmeldung nicht aktualisieren](#remote-control-couldnt-refresh-your-login) aufgelisteten `run /login`-Meldungen in beiden Fällen.1209Vor v2.1.238 hat Claude Code der App in beiden Fällen die `run /login`-Meldungen gesendet, die unter [Remote Control konnte Ihre Anmeldung nicht erneuern](#remote-control-couldnt-refresh-your-login) aufgeführt sind.

1200 1210 

1201<h3 id="oauth-token-revoked-or-expired">1211<h3 id="oauth-token-revoked-or-expired">

1202 OAuth-Token widerrufen oder abgelaufen1212 OAuth-Token widerrufen oder abgelaufen

1203</h3>1213</h3>

1204 1214 

1205Ihre gespeicherte Anmeldung ist nicht mehr gültig. Ein widerrufener Token bedeutet, dass Sie sich überall abgemeldet haben oder ein Administrator den Zugriff entfernt hat; ein abgelaufener Token bedeutet, dass die automatische Aktualisierung während der Sitzung fehlgeschlagen ist.1215Ihre gespeicherte Anmeldung ist nicht mehr gültig. Ein widerrufenes Token bedeutet, dass Sie sich überall abgemeldet haben oder ein Admin den Zugriff entzogen hat; ein abgelaufenes Token bedeutet, dass die automatische Erneuerung während der Sitzung fehlgeschlagen ist.

1206 1216 

1207Beide Meldungen melden eine Ablehnung, die die API für eine Anfrage zurückgegeben hat, die Claude Code gesendet hat. Wenn die gespeicherte Anmeldung nach einer fehlgeschlagenen Aktualisierung bereits gelöscht wurde, sehen Sie stattdessen [Anmeldung abgelaufen](#login-expired). Wenn Sie sich mit einem langlebigen Token in [`CLAUDE_CODE_OAUTH_TOKEN`](/docs/de/env-vars) authentifizieren, sehen Sie die gleichen Meldungen, wenn dieser Token abläuft oder widerrufen wird.1217Beide Meldungen melden eine Ablehnung, die die API für eine von Claude Code gesendete Anfrage zurückgegeben hat. Wenn die gespeicherte Anmeldung nach einer fehlgeschlagenen Erneuerung bereits gelöscht wurde, sehen Sie stattdessen [Anmeldung abgelaufen](#login-expired). Wenn Sie sich mit einem langlebigen Token in [`CLAUDE_CODE_OAUTH_TOKEN`](/docs/de/env-vars) authentifizieren, sehen Sie dieselben Meldungen, wenn dieses Token abläuft oder widerrufen wird.

1208 1218 

1209```text theme={null}1219```text theme={null}

1210OAuth token revoked · Please run /login1220OAuth token revoked · Please run /login

1211Please run /login · API Error: 401 OAuth token has expired ...1221Please run /login · API Error: 401 OAuth token has expired ...

1212```1222```

1213 1223 

1214**Was zu tun ist:**1224**Was Sie tun können:**

1215 1225 

1216* Führen Sie `/login` aus, um sich erneut anzumelden1226* Führen Sie `/login` aus, um sich erneut anzumelden

1217* Wenn Sie sich mit der Umgebungsvariable `CLAUDE_CODE_OAUTH_TOKEN` authentifizieren, sendet Claude Code weiterhin den Wert, den Sie gesetzt haben, nachdem eine Anfrage mit einem 401 fehlschlägt, anstatt zu einem Token einer gespeicherten Anmeldung zu wechseln. [`/status`](/docs/de/commands) zeigt diese Anmeldedaten als eine `Auth token`-Zeile an, die `CLAUDE_CODE_OAUTH_TOKEN` liest. Generieren Sie einen neuen Token mit [`claude setup-token`](/docs/de/authentication#generate-a-long-lived-token) und starten Sie damit neu, oder heben Sie die Variable auf und führen Sie `/login` aus. Vor v2.1.225 konnte Claude Code den Wert der Variablen während der Sitzung durch den kurzlebigen Zugriffs-Token aus einer gespeicherten Anmeldung ersetzen, und die Sitzung schlägt erneut mit 401-Fehlern fehl, sobald dieser Token abläuft.1227* Wenn Sie sich mit der Umgebungsvariable `CLAUDE_CODE_OAUTH_TOKEN` authentifizieren, sendet Claude Code nach einer mit 401 fehlgeschlagenen Anfrage weiterhin den von Ihnen gesetzten Wert, statt zum Token einer gespeicherten Anmeldung zu wechseln. [`/status`](/docs/de/commands) zeigt diese Anmeldedaten als Zeile `Auth token` mit dem Wert `CLAUDE_CODE_OAUTH_TOKEN`. Erzeugen Sie mit [`claude setup-token`](/docs/de/authentication#generate-a-long-lived-token) ein neues Token und starten Sie damit neu, oder heben Sie die Variable auf und führen Sie `/login` aus. Vor v2.1.225 konnte Claude Code den Wert der Variable während der Sitzung durch das kurzlebige Zugriffstoken einer gespeicherten Anmeldung ersetzen, und die Sitzung schlug erneut mit 401-Fehlern fehl, sobald dieses Token abgelaufen war.

1218* Für wiederholte Aufforderungen zum Anmelden über Starts hinweg siehe die Systemuhr-Überprüfungen und macOS-Wiederherstellungsschritte für die Anmeldedatenverwaltung in [Fehlerbehebung](/docs/de/troubleshoot-install#not-logged-in-or-token-expired)1228* Bei wiederholten Aufforderungen zur Anmeldung über mehrere Starts hinweg finden Sie unter [Fehlerbehebung](/docs/de/troubleshoot-install#not-logged-in-or-token-expired) Prüfungen der Systemuhr und Schritte zur Wiederherstellung des Anmeldedatenspeichers unter macOS

1219* Für andere Fehler, einschließlich `403 Forbidden` und OAuth-Browser-Probleme, siehe [Anmeldung und Authentifizierung](/docs/de/troubleshoot-install#login-and-authentication)1229* Für andere Fehler, einschließlich `403 Forbidden` und Problemen mit dem OAuth-Browser, siehe [Anmeldung und Authentifizierung](/docs/de/troubleshoot-install#login-and-authentication)

1220 1230 

1221<h3 id="api-error-401-invalid-authentication-credentials">1231<h3 id="api-error-401-invalid-authentication-credentials">

1222 API-Fehler: 401 Ungültige Authentifizierungsanmeldedaten1232 API Error: 401 Invalid authentication credentials

1223</h3>1233</h3>

1224 1234 

1225Die API erkannte das Format Ihrer Anmeldedaten, lehnte aber das Konto oder die Organisation dahinter ab. Anthropic gibt diese Meldung zurück, wenn eine Anmeldedaten kürzlich widerrufen wurde, wenn eine Organisation deaktiviert wurde oder Ihren Zugriff entfernt hat, oder wenn das Konto selbst deaktiviert wurde, sodass ein abgelaufener Token nicht die Ursache ist. Die Anmeldedaten können Ihre gespeicherte Anmeldung oder ein genehmigter `ANTHROPIC_API_KEY` sein, und die Behebung unterscheidet sich, also beginnen Sie mit dem Ausführen von `/status`, um zu sehen, welche aktiv ist.1235Die API hat das Format Ihrer Anmeldedaten erkannt, aber das dahinterstehende Konto oder die Organisation abgelehnt. Anthropic gibt diese Meldung zurück, wenn Anmeldedaten kürzlich widerrufen wurden, wenn eine Organisation deaktiviert wurde oder Ihren Zugriff entfernt hat oder wenn das Konto selbst deaktiviert wurde; ein abgelaufenes Token ist also nicht die Ursache. Die Anmeldedaten können Ihre gespeicherte Anmeldung oder ein genehmigter `ANTHROPIC_API_KEY` sein, und die Behebung unterscheidet sich. Führen Sie daher zuerst `/status` aus, um zu sehen, welche davon aktiv sind.

1226 1236 

1227```text theme={null}1237```text theme={null}

1228Please run /login · API Error: 401 Invalid authentication credentials1238Please run /login · API Error: 401 Invalid authentication credentials

1229```1239```

1230 1240 

1231**Was zu tun ist:**1241**Was Sie tun können:**

1232 1242 

1233* Wenn `/status` eine `API key`-Zeile zeigt, die nicht als nicht in Verwendung markiert ist, ist ein genehmigter [`ANTHROPIC_API_KEY`](/docs/de/authentication#authentication-precedence) die aktive Anmeldedaten und hat Vorrang vor Ihrer Anmeldung, sodass `/login` ihn nicht ersetzt. Rotieren Sie den Schlüssel in der Claude Console, oder greifen Sie auf Ihr Abonnement zurück, indem Sie `unset ANTHROPIC_API_KEY` ausführen, oder in PowerShell `Remove-Item Env:ANTHROPIC_API_KEY`.1243* Wenn `/status` eine Zeile `API key` anzeigt, die nicht als nicht verwendet markiert ist, ist ein genehmigter [`ANTHROPIC_API_KEY`](/docs/de/authentication#authentication-precedence) die aktive Anmeldedatenquelle und hat Vorrang vor Ihrer Anmeldung, sodass `/login` ihn nicht ersetzt. Rotieren Sie den Schlüssel in der Claude Console oder greifen Sie auf Ihr Abonnement zurück, indem Sie `unset ANTHROPIC_API_KEY` ausführen, in PowerShell `Remove-Item Env:ANTHROPIC_API_KEY`.

1234* Wenn `/status` nur Ihre Anmeldung zeigt, führen Sie `/login` einmal aus. Wenn die Anmeldedaten widerrufen wurden, ersetzt eine neue Anmeldung sie.1244* Wenn `/status` nur Ihre Anmeldung anzeigt, führen Sie einmal `/login` aus. Wenn die Anmeldedaten widerrufen wurden, ersetzt eine neue Anmeldung sie.

1235* Wenn die gleiche Meldung für das gleiche Anmeldekonto zurückkommt, ist das Konto oder die Organisation nicht mehr aktiv. Überprüfen Sie das Konto und die Organisation, die `/status` meldet, und bitten Sie Ihren Organisations-Administrator, den Zugriff wiederherzustellen.1245* Wenn dieselbe Meldung für dasselbe Anmeldekonto erneut erscheint, ist das Konto oder die Organisation nicht mehr aktiv. Prüfen Sie das Konto und die Organisation, die `/status` meldet, und bitten Sie den Admin Ihrer Organisation, den Zugriff wiederherzustellen.

1236* Wenn [`ANTHROPIC_BASE_URL`](/docs/de/env-vars) auf ein [LLM-Gateway](/docs/de/llm-gateway) zeigt, ist der Text nach `401` die Meldung Ihres Gateways statt Anthropic's, und `/login` ändert ihn nicht. Beheben Sie stattdessen die Anmeldedaten, die Ihr Gateway erwartet.1246* Wenn [`ANTHROPIC_BASE_URL`](/docs/de/env-vars) auf ein [LLM-Gateway](/docs/de/llm-gateway) verweist, ist der Text nach `401` die Meldung Ihres Gateways und nicht die von Anthropic, und `/login` ändert daran nichts. Korrigieren Sie stattdessen die Anmeldedaten, die Ihr Gateway erwartet.

1237 1247 

1238<h3 id="login-expired">1248<h3 id="login-expired">

1239 Anmeldung abgelaufen1249 Anmeldung abgelaufen

1240</h3>1250</h3>

1241 1251 

1242Claude Code versuchte, Ihre gespeicherte claude.ai-Anmeldung zu erneuern, und der OAuth-Service lehnte den gespeicherten Aktualisierungs-Token ab, sodass Claude Code die gespeicherten Anmeldedaten gelöscht hat. Danach stoppt jede Modellanfrage lokal mit dieser Meldung, bevor sie die API erreicht, weil nur `/login` neue Anmeldedaten erstellen kann.1252Claude Code hat versucht, Ihre gespeicherte claude.ai-Anmeldung zu erneuern, und der OAuth-Dienst hat das gespeicherte Refresh-Token abgelehnt, daher hat Claude Code die gespeicherten Anmeldedaten gelöscht. Danach stoppt jede Modellanfrage lokal mit dieser Meldung, bevor sie die API erreicht, da nur `/login` neue Anmeldedaten erstellen kann.

1243 1253 

1244Vor v2.1.206 hat Claude Code die Modellanfrage trotzdem mit allen verbleibenden Anmeldedaten in der Umgebung gesendet, und jedes Modell ist dann mit [Es gibt ein Problem mit dem ausgewählten Modell](#theres-an-issue-with-the-selected-model) oder einem 401 statt einer Aufforderung zum Anmelden fehlgeschlagen.1254Vor v2.1.206 hat Claude Code die Modellanfrage trotzdem mit den in der Umgebung verbliebenen Anmeldedaten gesendet, und jedes Modell schlug dann mit [Es gibt ein Problem mit dem ausgewählten Modell](#theres-an-issue-with-the-selected-model) oder einem 401 fehl, statt zur Anmeldung aufzufordern.

1245 1255 

1246```text theme={null}1256```text theme={null}

1247Login expired · Please run /login1257Login expired · Please run /login

1248```1258```

1249 1259 

1250Im [nicht-interaktiven Modus](/docs/de/headless) (`-p`) und dem [Agent SDK](/docs/de/agent-sdk/overview) lautet die Meldung wie folgt, und der strukturierte Fehlercode ist `authentication_failed`:1260Im [nicht interaktiven Modus](/docs/de/headless) (`-p`) und im [Agent SDK](/docs/de/agent-sdk/overview) lautet die Meldung wie folgt, und der strukturierte Fehlercode ist `authentication_failed`:

1251 1261 

1252```text theme={null}1262```text theme={null}

1253Failed to authenticate: OAuth session expired and could not be refreshed1263Failed to authenticate: OAuth session expired and could not be refreshed

1254```1264```

1255 1265 

1256Dies ist nicht der gleiche Zustand wie [OAuth-Token widerrufen oder abgelaufen](#oauth-token-revoked-or-expired). Diese Meldungen melden eine Ablehnung, die die API zurückgegeben hat. Claude Code selbst erzeugt `Login expired` für eine Anmeldung, die es bereits nicht erneuern konnte, sodass es keine Anfrage sendet. Wenn die Erneuerung fehlschlägt, weil das Konto selbst ausgesetzt ist, statt dass die Anmeldung veraltet ist, zeigt Claude Code stattdessen [Ihr Konto ist gesperrt](#your-account-is-on-hold).1266Dies ist nicht derselbe Zustand wie [OAuth-Token widerrufen oder abgelaufen](#oauth-token-revoked-or-expired). Jene Meldungen melden eine Ablehnung, die die API zurückgegeben hat. `Login expired` erzeugt Claude Code selbst für eine Anmeldung, deren Erneuerung bereits fehlgeschlagen ist, daher sendet es keine Anfrage. Wenn die Erneuerung fehlschlägt, weil das Konto selbst gesperrt ist und nicht die Anmeldung veraltet ist, zeigt Claude Code stattdessen [Ihr Konto ist gesperrt](#your-account-is-on-hold) an.

1257 1267 

1258Sitzungen, die mit einem API-Schlüssel, [`CLAUDE_CODE_OAUTH_TOKEN`](/docs/de/env-vars) oder einem Drittanbieter-Provider authentifiziert sind, verwenden die gespeicherte Anmeldung nicht und sehen diese Meldung nie.1268Sitzungen, die mit einem API-Schlüssel, [`CLAUDE_CODE_OAUTH_TOKEN`](/docs/de/env-vars) oder einem Drittanbieter authentifiziert sind, verwenden die gespeicherte Anmeldung nicht und sehen diese Meldung nie.

1259 1269 

1260Sie können diesen Zustand vor einem Anfragefehler überprüfen: [`/status`](/docs/de/commands) zeigt eine `Login`-Zeile an, die `Expired — log in again` liest, plus die Organisation und E-Mail, die sie für die abgelaufene Anmeldung gespeichert hat. Die Zeile erscheint nur, wenn die gespeicherte Anmeldung Ihre aktive Anmeldedaten ist und nicht mehr erneuert werden kann. Sitzungen, die sich auf andere Weise authentifizieren, zeigen die Zeile nicht, selbst wenn eine abgelaufene Anmeldung gespeichert bleibt. Vor v2.1.210 gab `/status` in diesem Zustand keinen Hinweis darauf, dass eine Anmeldung jemals existiert hatte, weil die gelöschte Anmeldedaten ihr nichts zum Melden ließ.1270Sie können diesen Zustand prüfen, bevor eine Anfrage fehlschlägt: [`/status`](/docs/de/commands) zeigt eine Zeile `Login` mit dem Wert `Expired — log in again` sowie die Organisation und E-Mail-Adresse, die für die abgelaufene Anmeldung gespeichert sind. Die Zeile erscheint nur, wenn die gespeicherte Anmeldung Ihre aktiven Anmeldedaten sind und nicht mehr erneuert werden kann. Auf andere Weise authentifizierte Sitzungen zeigen die Zeile nicht an, auch wenn eine abgelaufene Anmeldung gespeichert bleibt. Vor v2.1.210 gab `/status` in diesem Zustand keinen Hinweis darauf, dass jemals eine Anmeldung existiert hatte, da die gelöschten Anmeldedaten nichts zu melden hinterließen.

1261 1271 

1262**Was zu tun ist:**1272**Was Sie tun können:**

1263 1273 

1264* Führen Sie `/login` aus, um sich erneut anzumelden. Das Wiederholen ohne Anmeldung zeigt die gleiche Meldung bei jeder Anfrage.1274* Führen Sie `/login` aus, um sich erneut anzumelden. Erneute Versuche ohne Anmeldung zeigen bei jeder Anfrage dieselbe Meldung.

1265* Im nicht-interaktiven Modus führen Sie `claude` in der gleichen Umgebung aus, führen Sie `/login` aus, dann führen Sie Ihren Befehl erneut aus. Für die Automatisierung, die sich nicht interaktiv anmelden kann, authentifizieren Sie sich mit `ANTHROPIC_API_KEY` oder [generieren Sie einen langlebigen Token mit `claude setup-token`](/docs/de/authentication#generate-a-long-lived-token).1275* Wenn Sie sich in einem anderen Claude Code-Fenster mit Ihrem claude.ai-Konto anmelden, erfahren Sie unter [Nicht angemeldet](#not-logged-in), wann diese Sitzung diese Anmeldung automatisch verwendet.

1266* Wenn das Anmelden weiterhin fehlschlägt, siehe [Anmeldung und Authentifizierung](/docs/de/troubleshoot-install#login-and-authentication)1276* Führen Sie im nicht interaktiven Modus `claude` in derselben Umgebung aus, schließen Sie `/login` ab und führen Sie dann Ihren Befehl erneut aus. Für Automatisierung, die sich nicht interaktiv anmelden kann, authentifizieren Sie sich mit `ANTHROPIC_API_KEY` oder [erzeugen Sie ein langlebiges Token mit `claude setup-token`](/docs/de/authentication#generate-a-long-lived-token).

1277* Wenn die Anmeldung weiterhin fehlschlägt, siehe [Anmeldung und Authentifizierung](/docs/de/troubleshoot-install#login-and-authentication)

1267 1278 

1268<h3 id="could-not-refresh-your-login">1279<h3 id="could-not-refresh-your-login">

1269 Ihre Anmeldung konnte nicht aktualisiert werden, weil ein anderer Claude Code-Prozess sie aktualisiert1280 Ihre Anmeldung konnte nicht erneuert werden, weil ein anderer Claude Code-Prozess sie erneuert

1270</h3>1281</h3>

1271 1282 

1272Diese Meldung bedeutet nicht, dass Ihre Anmeldung abgelehnt wurde. Ihre gespeicherte claude.ai-Anmeldung war abgelaufen und musste erneuert werden. Ein anderer Claude Code-Prozess auf der gleichen Maschine hielt die gemeinsame Aktualisierungs-Sperre, oder verließ sie und ließ sie zurück, und die Aktualisierung machte keinen Fortschritt, während diese Sitzung wartete. Claude Code stoppt die Anfrage, bevor sie gesendet wird:1283Diese Meldung bedeutet nicht, dass Ihre Anmeldung abgelehnt wurde. Ihre gespeicherte claude.ai-Anmeldung war abgelaufen und musste erneuert werden. Ein anderer Claude Code-Prozess auf demselben Rechner hielt die gemeinsame Erneuerungssperre oder wurde beendet und hat sie zurückgelassen, und die Erneuerung machte keinen Fortschritt, während diese Sitzung wartete. Claude Code stoppt die Anfrage vor dem Senden:

1273 1284 

1274```text theme={null}1285```text theme={null}

1275Could not refresh your login because another Claude Code process is refreshing it (or exited mid-refresh) · Try again in a minute; if it keeps happening, close other Claude Code windows or sign in again with /login1286Could not refresh your login because another Claude Code process is refreshing it (or exited mid-refresh) · Try again in a minute; if it keeps happening, close other Claude Code windows or sign in again with /login

1276```1287```

1277 1288 

1278Im [nicht-interaktiven Modus](/docs/de/headless) (`-p`) und dem [Agent SDK](/docs/de/agent-sdk/overview) lautet die Meldung wie folgt, und der strukturierte Fehlercode ist `server_error`:1289Im [nicht interaktiven Modus](/docs/de/headless) (`-p`) und im [Agent SDK](/docs/de/agent-sdk/overview) lautet die Meldung wie folgt, und der strukturierte Fehlercode ist `server_error`:

1279 1290 

1280```text theme={null}1291```text theme={null}

1281Failed to refresh OAuth token: another Claude Code process is refreshing it or exited mid-refresh. This is usually transient; retry in a minute, and if it persists close other Claude Code processes or sign in again1292Failed to refresh OAuth token: another Claude Code process is refreshing it or exited mid-refresh. This is usually transient; retry in a minute, and if it persists close other Claude Code processes or sign in again

1282```1293```

1283 1294 

1284Sitzungen, die mit einem API-Schlüssel, [`CLAUDE_CODE_OAUTH_TOKEN`](/docs/de/env-vars) oder einem Drittanbieter-Provider authentifiziert sind, verwenden die gespeicherte Anmeldung nicht und sehen diese Meldung nie.1295Sitzungen, die mit einem API-Schlüssel, [`CLAUDE_CODE_OAUTH_TOKEN`](/docs/de/env-vars) oder einem Drittanbieter authentifiziert sind, verwenden die gespeicherte Anmeldung nicht und sehen diese Meldung nie.

1285 1296 

1286**Was zu tun ist:**1297**Was Sie tun können:**

1287 1298 

1288* Versuchen Sie es in einer Minute erneut. Wenn ein anderer Prozess die Aktualisierung zuerst abschließt, verwendet diese Sitzung die erneuerte Anmeldung.1299* Versuchen Sie es in einer Minute erneut. Wenn ein anderer Prozess die Erneuerung zuerst abschließt, verwendet diese Sitzung die erneuerte Anmeldung.

1289* Wenn die Meldung weiterhin zurückkommt, schließen Sie andere Claude Code-Fenster und -Prozesse, dann versuchen Sie es erneut.1300* Wenn die Meldung immer wieder erscheint, schließen Sie andere Claude Code-Fenster und -Prozesse und versuchen Sie es dann erneut.

1290* Wenn es mit keinem anderen Claude Code-Prozess zurückkommt, führen Sie `/login` aus. Das erneute Anmelden wartet nicht auf die Aktualisierungs-Sperre.1301* Wenn sie erscheint, obwohl kein anderer Claude Code-Prozess läuft, führen Sie `/login` aus. Eine erneute Anmeldung wartet nicht auf die Erneuerungssperre.

1291 1302 

1292<h3 id="couldnt-save-your-login">1303<h3 id="couldnt-save-your-login">

1293 Ihre Anmeldung konnte nicht gespeichert werden1304 Ihre Anmeldung konnte nicht gespeichert werden

1294</h3>1305</h3>

1295 1306 

1296Sie haben sich mit claude.ai angemeldet, aber Claude Code konnte die Anmeldung nicht in seinem Anmeldedaten-Speicher speichern, sodass die Anmeldung nicht abgeschlossen wurde. Auf macOS kann dies passieren, wenn der Anmeldungs-Schlüsselbund sperrt, z. B. beim Ruhezustand oder bei Untätigkeit, nachdem Claude Code bereits Anmeldedaten darin während der gleichen Sitzung gelesen oder gespeichert hat.1307Sie haben sich mit claude.ai angemeldet, aber Claude Code konnte die Anmeldung nicht in seinem Anmeldedatenspeicher speichern, daher wurde die Anmeldung nicht abgeschlossen. Unter macOS kann dies passieren, wenn der Anmeldeschlüsselbund gesperrt wird, zum Beispiel im Ruhezustand oder bei Inaktivität, nachdem Claude Code während derselben Sitzung bereits Anmeldedaten darin gelesen oder gespeichert hat.

1297 1308 

1298```text theme={null}1309```text theme={null}

1299Couldn't save your login. If your Mac's keychain is locked, unlock it and log in again.1310Couldn't save your login. If your Mac's keychain is locked, unlock it and log in again.

1300Couldn't save your login. Try logging in again.1311Couldn't save your login. Try logging in again.

1301```1312```

1302 1313 

1303Die erste Form erscheint auf macOS und die zweite überall sonst. Ein vorübergehender Anmeldedaten-Speicher-Fehler, z. B. ein Timeout oder ein unlesbarer Speicher, erzeugt die gleiche Meldung.1314Die erste Form erscheint unter macOS, die zweite überall sonst. Ein vorübergehender Fehler des Anmeldedatenspeichers, etwa eine Zeitüberschreitung oder ein nicht lesbarer Speicher, erzeugt dieselbe Meldung.

1304 1315 

1305**Was zu tun ist:**1316**Was Sie tun können:**

1306 1317 

1307* Auf macOS entsperren Sie den Anmeldungs-Schlüsselbund, dann führen Sie `/login` erneut aus1318* Entsperren Sie unter macOS den Anmeldeschlüsselbund und führen Sie dann `/login` erneut aus

1308* Auf anderen Plattformen führen Sie `/login` erneut aus1319* Führen Sie auf anderen Plattformen `/login` erneut aus

1309* Wenn die Anmeldung immer noch nicht gespeichert wird, siehe [Nicht angemeldet oder Token abgelaufen](/docs/de/troubleshoot-install#not-logged-in-or-token-expired) für den Schlüsselbund-Entsperr-Befehl und andere Wiederherstellungsschritte für die Anmeldedaten-Verwaltung1320* Wenn die Anmeldung weiterhin nicht gespeichert wird, finden Sie unter [Nicht angemeldet oder Token abgelaufen](/docs/de/troubleshoot-install#not-logged-in-or-token-expired) den Befehl zum Entsperren des Schlüsselbunds und weitere Schritte zur Wiederherstellung des Anmeldedatenspeichers

1310 1321 

1311<h3 id="failed-to-start-oauth-callback-server">1322<h3 id="failed-to-start-oauth-callback-server">

1312 OAuth-Callback-Server konnte nicht gestartet werden1323 OAuth-Callback-Server konnte nicht gestartet werden

1313</h3>1324</h3>

1314 1325 

1315Wenn `/login`, `claude auth login` oder `claude setup-token` Sie durch den Browser anmeldet, öffnet Claude Code einen Listening-Port auf `127.0.0.1`, damit Ihr Browser das Anmeldeergebnis dorthin zurückgeben kann. Diese Meldung bedeutet, dass Claude Code diesen Port nicht öffnen konnte, und die Anmeldung stoppt, bevor ein Browser-Fenster oder eine Anmelde-URL erscheint:1326Wenn `/login`, `claude auth login` oder `claude setup-token` Sie über den Browser anmeldet, öffnet Claude Code einen Port auf `127.0.0.1`, damit Ihr Browser das Anmeldeergebnis an Claude Code zurückgeben kann. Diese Meldung bedeutet, dass Claude Code diesen Port nicht öffnen konnte, und die Anmeldung stoppt, bevor ein Browserfenster oder eine Anmelde-URL erscheint:

1316 1327 

1317```text theme={null}1328```text theme={null}

1318Failed to start OAuth callback server: Failed to start server. Is port 0 in use?1329Failed to start OAuth callback server: Failed to start server. Is port 0 in use?

1319```1330```

1320 1331 

1321Wenn Ihre Meldung mit `Is port 0 in use?` endet, ist der Versuch, auf der IPv4-Loopback-Adresse `127.0.0.1` zu lauschen, sofort fehlgeschlagen. Weil der Fehler passiert, bevor eine Anmelde-URL existiert, ist der `Paste code here if prompted`-Fluss nicht als Workaround verfügbar.1332Wenn Ihre Meldung mit `Is port 0 in use?` endet, ist der Versuch, auf der IPv4-Loopback-Adresse `127.0.0.1` zu lauschen, vollständig fehlgeschlagen. Da der Fehler auftritt, bevor eine Anmelde-URL existiert, steht der Ablauf `Paste code here if prompted` als Umgehung nicht zur Verfügung.

1322 1333 

1323**Was zu tun ist:**1334**Was Sie tun können:**

1324 1335 

1325* Um sich sofort ohne den lokalen Listener anzumelden: Wenn Sie ein claude.ai-Abonnement verwenden, führen Sie [`claude setup-token`](/docs/de/authentication#generate-a-long-lived-token) auf einer Maschine aus, wo die Anmeldung funktioniert, und setzen Sie den Token, den es ausgibt, als `CLAUDE_CODE_OAUTH_TOKEN` auf dieser Maschine. Andernfalls setzen Sie `ANTHROPIC_API_KEY` auf einen Schlüssel aus der [Claude Console](https://platform.claude.com/settings/keys). [Authentifizierungspriorität](/docs/de/authentication#authentication-precedence) erklärt, wie Claude Code zwischen Anmeldedaten wählt.1336* Um sich sofort ohne den lokalen Listener anzumelden: Wenn Sie ein claude.ai-Abonnement verwenden, führen Sie [`claude setup-token`](/docs/de/authentication#generate-a-long-lived-token) auf einem Rechner aus, auf dem die Anmeldung funktioniert, und setzen Sie das ausgegebene Token auf diesem Rechner als `CLAUDE_CODE_OAUTH_TOKEN`. Andernfalls setzen Sie `ANTHROPIC_API_KEY` auf einen Schlüssel aus der [Claude Console](https://platform.claude.com/settings/keys). [Rangfolge der Authentifizierung](/docs/de/authentication#authentication-precedence) erklärt, wie Claude Code zwischen Anmeldedaten wählt.

1326* Um stattdessen Browser-Anmeldung auf dieser Maschine zu verwenden, muss Claude Code auf `127.0.0.1` lauschen können. Wenn es in einer Sandbox läuft, überprüfen Sie, dass die Sandbox-Richtlinie das Lauschen auf lokalen Ports erlaubt, dann führen Sie `/login` erneut aus. Wenn es sollte und immer noch fehlschlägt, führen Sie `/feedback` aus, damit der Bericht Ihre Umgebungsdetails enthält.1337* Um stattdessen auf diesem Rechner die Anmeldung über den Browser zu verwenden, muss Claude Code auf `127.0.0.1` lauschen können. Wenn es in einer Sandbox läuft, prüfen Sie, ob die Richtlinie der Sandbox das Lauschen auf lokalen Ports erlaubt, und führen Sie dann `/login` erneut aus. Wenn es lauschen können sollte und trotzdem fehlschlägt, führen Sie `/feedback` aus, damit der Bericht Ihre Umgebungsdetails enthält.

1327 1338 

1328<h3 id="claude-login-not-accepted">1339<h3 id="claude-login-not-accepted">

1329 Claude-Anmeldung nicht akzeptiert1340 Claude-Anmeldung nicht akzeptiert

1330</h3>1341</h3>

1331 1342 

1332Sie versuchten, eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web) zu starten, und der Server weigerte sich, sie mit einem 401 zu erstellen: er akzeptierte die Claude-Anmeldung, die diese Maschine gesendet hat, nicht, normalerweise weil die Anmeldung abgelaufen oder widerrufen wurde.1343Sie haben versucht, eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web) zu starten, und der Server hat die Erstellung mit einem 401 verweigert: Er hat die Claude-Anmeldung, die dieser Rechner gesendet hat, nicht akzeptiert, meist weil die Anmeldung abgelaufen ist oder widerrufen wurde.

1333 1344 

1334Der erste Teil der Zeile ist der eigene Grund des Servers, wenn er einen gibt. Andernfalls lautet die Zeile:1345Der erste Teil der Zeile ist der eigene Grund des Servers, sofern er einen angibt. Andernfalls lautet die Zeile:

1335 1346 

1336```text theme={null}1347```text theme={null}

1337Claude login not accepted · Run /login, then try again1348Claude login not accepted · Run /login, then try again

1338```1349```

1339 1350 

1340**Was zu tun ist:**1351**Was Sie tun können:**

1341 1352 

1342* Führen Sie `/login` aus, schließen Sie die Anmeldung ab, dann starten Sie die Sitzung erneut1353* Führen Sie `/login` aus, schließen Sie die Anmeldung ab und starten Sie die Sitzung dann erneut

1343 1354 

1344<h3 id="artifacts-need-a-claude-ai-login">1355<h3 id="artifacts-need-a-claude-ai-login">

1345 Artefakte benötigen eine claude.ai-Anmeldung1356 Artefakte erfordern eine claude.ai-Anmeldung

1346</h3>1357</h3>

1347 1358 

1348Claude Code weigerte sich, ein [Artefakt](/docs/de/artifacts) zu veröffentlichen oder zu lesen, weil die Sitzung keine claude.ai-Anmeldung hat, die sie für Artefakte verwenden kann.1359Claude Code hat das Veröffentlichen oder Lesen eines [Artefakts](/docs/de/artifacts) verweigert, weil die Sitzung keine claude.ai-Anmeldung hat, die sie für Artefakte verwenden kann.

1349 1360 

1350Jede Form der Meldung beginnt mit den gleichen Worten, gefolgt von einem Mittel, das davon abhängt, wie sich Ihre Sitzung authentifiziert. Ohne konkurrierende Anmeldedaten lautet sie:1361Jede Form der Meldung beginnt mit denselben Worten, gefolgt von einer Abhilfe, die davon abhängt, wie sich Ihre Sitzung authentifiziert. Ohne konkurrierende Anmeldedaten lautet sie:

1351 1362 

1352```text theme={null}1363```text theme={null}

1353Artifacts need a claude.ai login. Run /login and select "Claude account with subscription", then retry — the "Anthropic Console account" option does not provide claude.ai credentials.1364Artifacts need a claude.ai login. Run /login and select "Claude account with subscription", then retry — the "Anthropic Console account" option does not provide claude.ai credentials.

1354```1365```

1355 1366 

1356**Was zu tun ist:**1367**Was Sie tun können:**

1357 1368 

1358* Führen Sie `/login` aus und wählen Sie **Claude account with subscription**. Die Option **Anthropic Console account** bietet keine claude.ai-Anmeldedaten.1369* Führen Sie `/login` aus und wählen Sie **Claude account with subscription**. Die Option **Anthropic Console account** stellt keine claude.ai-Anmeldedaten bereit.

1359* Wenn die Meldung eine Anmeldedaten benennt, die Vorrang hat, z. B. `ANTHROPIC_API_KEY`, eine `apiKeyHelper`-Einstellung oder einen Console-Schlüssel, der von einem vorherigen `/login` gespeichert wurde, entfernen Sie ihn wie die Meldung sagt, dann führen Sie `/login` aus1370* Wenn die Meldung Anmeldedaten nennt, die Vorrang haben, etwa `ANTHROPIC_API_KEY`, eine `apiKeyHelper`-Einstellung oder einen durch ein früheres `/login` gespeicherten Console-Schlüssel, entfernen Sie diese wie in der Meldung beschrieben und führen Sie dann `/login` aus

1360* Wenn die Meldung sagt, dass sich diese Remote-Sitzung durch die Maschine authentifiziert, die sie gestartet hat, melden Sie sich auf dieser Maschine bei claude.ai an, dann verbinden Sie die Sitzung erneut1371* Wenn die Meldung besagt, dass sich diese Remote-Sitzung über den Rechner authentifiziert, der sie gestartet hat, melden Sie sich auf diesem Rechner bei claude.ai an und verbinden Sie die Sitzung dann erneut

1361* Wenn die Meldung sagt, dass die Anmeldedaten von der Sitzungs-Host-Umgebung injiziert werden, können Sie sie in dieser Sitzung nicht ändern; starten Sie eine Sitzung, die bei claude.ai angemeldet ist1372* Wenn die Meldung besagt, dass die Anmeldedaten von der Host-Umgebung der Sitzung bereitgestellt werden, können Sie sie in dieser Sitzung nicht ändern; starten Sie eine Sitzung, die bei claude.ai angemeldet ist

1362* Siehe [Verfügbarkeit](/docs/de/artifacts#availability) für die anderen Anforderungen, die Artefakte haben, z. B. Plan, Modell-Provider und Organisations-Richtlinie1373* Unter [Verfügbarkeit](/docs/de/artifacts#availability) finden Sie die weiteren Voraussetzungen für Artefakte, etwa Plan, Modellanbieter und Organisationsrichtlinie

1363 1374 

1364<h3 id="administrator-policy-requires-a-cloud-gateway-sign-in">1375<h3 id="administrator-policy-requires-a-cloud-gateway-sign-in">

1365 Administrator-Richtlinie erfordert eine Cloud-Gateway-Anmeldung1376 Administratorrichtlinie erfordert eine Cloud-Gateway-Anmeldung

1366</h3>1377</h3>

1367 1378 

1368Die [verwalteten Einstellungen](/docs/de/managed-settings) eines Administrators auf dieser Maschine setzen [`forceLoginMethod`](/docs/de/settings-reference#forceloginmethod) auf `"gateway"` oder setzen [`forceLoginGatewayUrl`](/docs/de/settings-reference#forcelogingatewayurl). Sofern Sie keinen Cloud-Provider durch eine Variable wie `CLAUDE_CODE_USE_BEDROCK` auswählen, akzeptiert Claude Code dann nur die [Claude apps gateway](/docs/de/claude-apps-gateway)-Anmeldung. Sie sehen eine von zwei Meldungen:1379Die [verwalteten Einstellungen](/docs/de/managed-settings) eines Administrators auf diesem Rechner setzen [`forceLoginMethod`](/docs/de/settings-reference#forceloginmethod) auf `"gateway"` oder setzen [`forceLoginGatewayUrl`](/docs/de/settings-reference#forcelogingatewayurl). Sofern Sie nicht über eine Variable wie `CLAUDE_CODE_USE_BEDROCK` einen Cloud-Anbieter auswählen, akzeptiert Claude Code dann nur die Anmeldung über das [Claude Apps Gateway](/docs/de/claude-apps-gateway). Sie sehen eine von zwei Meldungen:

1369 1380 

1370```text theme={null}1381```text theme={null}

1371Not signed in to the Cloud gateway — run /login.1382Not signed in to the Cloud gateway — run /login.

1372```1383```

1373 1384 

1374Modellanfragen schlagen mit dieser Meldung fehl, wenn die Sitzung keine Gateway-Anmeldung hat, z. B. weil Sie `/login` nicht seit der Ankunft der Richtlinie auf der Maschine ausgeführt haben.1385Modellanfragen schlagen mit dieser Meldung fehl, wenn die Sitzung keine Gateway-Anmeldung hat, zum Beispiel weil Sie `/login` nicht ausgeführt haben, seit die Richtlinie den Rechner erreicht hat.

1375 1386 

1376Wenn die Maschine auch eine von Anthropic ausgegebene Anmeldedaten hält und die verwalteten Einstellungen `forceLoginMethod` oder `forceLoginOrgUUID` setzen, beendet Claude Code stattdessen beim Start. Diese Anmeldedaten kann eine `ANTHROPIC_API_KEY`- oder `ANTHROPIC_AUTH_TOKEN`-Variable, eine `apiKeyHelper`-Einstellung oder ein API-Schlüssel sein, der von einer früheren Claude Console-Anmeldung gespeichert wurde. Die Meldung beginnt:1387Wenn der Rechner außerdem von Anthropic ausgestellte Anmeldedaten enthält und die verwalteten Einstellungen `forceLoginMethod` oder `forceLoginOrgUUID` setzen, wird Claude Code stattdessen beim Start beendet. Diese Anmeldedaten können eine Variable `ANTHROPIC_API_KEY` oder `ANTHROPIC_AUTH_TOKEN`, eine `apiKeyHelper`-Einstellung oder ein API-Schlüssel sein, der durch eine frühere Anmeldung über die Claude Console gespeichert wurde. Die Meldung beginnt mit:

1377 1388 

1378```text theme={null}1389```text theme={null}

1379Administrator policy requires a Cloud gateway sign-in on this machine; the1390Administrator policy requires a Cloud gateway sign-in on this machine; the


1381ANTHROPIC_AUTH_TOKEN, or apiKeyHelper) is not used.1392ANTHROPIC_AUTH_TOKEN, or apiKeyHelper) is not used.

1382```1393```

1383 1394 

1384**Was zu tun ist:**1395**Was Sie tun können:**

1385 1396 

1386* Führen Sie `/login` aus und schließen Sie die Anmeldung auf dem **Cloud gateway**-Bildschirm ab1397* Führen Sie `/login` aus und schließen Sie die Anmeldung auf dem Bildschirm **Cloud gateway** ab

1387* Für die Startup-Meldung entfernen Sie die `ANTHROPIC_API_KEY`-, `ANTHROPIC_AUTH_TOKEN`- oder `apiKeyHelper`-Einstellung, die Sie konfiguriert haben. Um einen gespeicherten Console-API-Schlüssel zu entfernen, führen Sie `claude auth logout` aus, das auch eine gespeicherte claude.ai-Anmeldung entfernt. Wenn Sie einen Cloud-Provider mit `CLAUDE_CODE_USE_*` auswählen, startet die Sitzung dann ohne Anmeldung. Andernfalls starten Sie `claude` und führen Sie `/login` aus1398* Bei der Startmeldung entfernen Sie die von Ihnen konfigurierte Einstellung `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` oder `apiKeyHelper`. Um einen gespeicherten Console-API-Schlüssel zu entfernen, führen Sie `claude auth logout` aus, wodurch auch eine gespeicherte claude.ai-Anmeldung entfernt wird. Wenn Sie mit `CLAUDE_CODE_USE_*` einen Cloud-Anbieter auswählen, startet die Sitzung dann ohne Anmeldung. Andernfalls starten Sie `claude` und führen `/login` aus

1388* Wenn Sie glauben, dass die Maschine das Gateway nicht erfordern sollte, bitten Sie den Administrator, der sie verwaltet, `forceLoginMethod` und `forceLoginGatewayUrl` aus ihren verwalteten Einstellungen zu entfernen1399* Wenn Sie der Meinung sind, dass der Rechner das Gateway nicht erfordern sollte, bitten Sie den Administrator, der ihn verwaltet, `forceLoginMethod` und `forceLoginGatewayUrl` aus seinen verwalteten Einstellungen zu entfernen

1389 1400 

1390Auf v2.1.265 zeigte eine Regression auch die erste Meldung in einigen LLM-Gateway- und Proxy-Konfigurationen, die sich mit einem API-Schlüssel, `apiKeyHelper` oder benutzerdefinierten Headern authentifizieren, selbst ohne Administrator-Anforderung auf der Maschine. Aktualisieren Sie auf v2.1.266 oder später. Sie müssen Ihre Konfiguration nicht ändern.1401In v2.1.265 hat eine Regression die erste Meldung auch in einigen LLM-Gateway- und Proxy-Konfigurationen angezeigt, die sich mit einem API-Schlüssel, `apiKeyHelper` oder benutzerdefinierten Headern authentifizieren, selbst ohne Administratorvorgabe auf dem Rechner. Aktualisieren Sie auf v2.1.266 oder höher. Sie müssen Ihre Konfiguration nicht ändern.

1391 1402 

1392Vor v2.1.261 verwendete Claude Code auf Maschinen, die `forceLoginMethod` auf `"gateway"` setzen, eine verbleibende gespeicherte Anmeldung statt Modellanfragen fehlschlagen zu lassen, und meldete eine konfigurierte Umgebungs-Anmeldedaten mit `This machine's managed settings require a first-party login` statt der Startup-Meldung. Vor v2.1.265 erforderte eine Maschine, deren verwaltete Einstellungen nur `forceLoginGatewayUrl` setzen, nicht die Gateway-Anmeldung, und Claude Code verwendete eine verbleibende Anmeldedaten dort.1403Vor v2.1.261 hat Claude Code auf Rechnern, die `forceLoginMethod` auf `"gateway"` setzen, eine verbliebene gespeicherte Anmeldung verwendet, statt Modellanfragen fehlschlagen zu lassen, und konfigurierte Anmeldedaten aus der Umgebung mit `This machine's managed settings require a first-party login` statt mit der Startmeldung gemeldet. Vor v2.1.265 hat ein Rechner, dessen verwaltete Einstellungen nur `forceLoginGatewayUrl` setzen, die Gateway-Anmeldung nicht erfordert, und Claude Code hat dort verbliebene Anmeldedaten verwendet.

1393 1404 

1394<h3 id="your-account-is-on-hold">1405<h3 id="your-account-is-on-hold">

1395 Ihr Konto ist gesperrt1406 Ihr Konto ist gesperrt

1396</h3>1407</h3>

1397 1408 

1398Das Claude-Konto hinter Ihrer Anmeldung wurde ausgesetzt. Claude Code zeigt die erste Meldung, wenn es versucht, Ihre gespeicherte Anmeldung zu erneuern und von der Sperrung erfährt, und die zweite, wenn eine Anmeldung, die Sie im Browser abschließen, sie meldet:1409Das Claude-Konto hinter Ihrer Anmeldung wurde gesperrt. Claude Code zeigt die erste Meldung, wenn es versucht, Ihre gespeicherte Anmeldung zu erneuern, und dabei von der Sperre erfährt, und die zweite, wenn eine im Browser abgeschlossene Anmeldung sie meldet:

1399 1410 

1400```text theme={null}1411```text theme={null}

1401Your account is on hold and can't use Claude Code. View details or appeal: https://claude.ai/restricted1412Your account is on hold and can't use Claude Code. View details or appeal: https://claude.ai/restricted

1402Your account is on hold and can't sign in to Claude Code. View details or appeal: https://claude.ai/restricted1413Your account is on hold and can't sign in to Claude Code. View details or appeal: https://claude.ai/restricted

1403```1414```

1404 1415 

1405Das erneute Anmelden mit dem gleichen Konto löscht die Meldung nicht, weil die Sperrung auf dem Konto statt auf der Anmeldung ist. Im [nicht-interaktiven Modus](/docs/de/headless) (`-p`) und dem [Agent SDK](/docs/de/agent-sdk/overview) ist der strukturierte Fehlercode `account_on_hold`. Vor v2.1.235 meldete Claude Code ein gesperrtes Konto als [Anmeldung abgelaufen · Bitte führen Sie /login aus](#login-expired), dessen Wiederherstellungsschritte eine Sperrung nicht löschen können.1416Eine erneute Anmeldung mit demselben Konto beseitigt die Meldung nicht, da die Sperre für das Konto und nicht für die Anmeldung gilt. Im [nicht interaktiven Modus](/docs/de/headless) (`-p`) und im [Agent SDK](/docs/de/agent-sdk/overview) ist der strukturierte Fehlercode `account_on_hold`. Vor v2.1.235 hat Claude Code ein gesperrtes Konto als [Login expired · Please run /login](#login-expired) gemeldet, dessen Schritte zur Behebung eine Sperre nicht aufheben können.

1406 1417 

1407**Was zu tun ist:**1418**Was Sie tun können:**

1408 1419 

1409* Öffnen Sie den Link in der Meldung, um die Details der Sperrung anzusehen oder dagegen Einspruch zu erheben1420* Öffnen Sie den Link in der Meldung, um die Details der Sperre anzuzeigen oder Einspruch einzulegen

1410* Wenn Sie ein anderes Claude-Konto oder einen API-Schlüssel haben, der von der Sperrung nicht betroffen ist, können Sie weiterarbeiten, während die Sperrung gelöst wird: führen Sie `/login` mit diesem Konto aus, oder setzen Sie den Schlüssel mit `ANTHROPIC_API_KEY`1421* Wenn Sie ein anderes Claude-Konto oder einen API-Schlüssel haben, der nicht von der Sperre betroffen ist, können Sie weiterarbeiten, während die Sperre geklärt wird: Führen Sie `/login` mit diesem Konto aus oder setzen Sie den Schlüssel mit `ANTHROPIC_API_KEY`

1411 1422 

1412<h3 id="anthropic-profile-login-expired">1423<h3 id="anthropic-profile-login-expired">

1413 Anthropic-Profil-Anmeldung abgelaufen1424 Anmeldung des Anthropic-Profils abgelaufen

1414</h3>1425</h3>

1415 1426 

1416Claude Code authentifiziert sich durch ein Anthropic-Anmeldedaten-Profil, dessen gespeicherte Anmeldungs-Anmeldedaten abgelaufen ist, und das Profil hält keine Aktualisierungs-Anmeldedaten, die Claude Code zum Erneuern verwenden kann. Claude Code stoppt jede Anfrage lokal ohne Wiederholung, weil eine Wiederholung die gleiche abgelaufene Anmeldedaten lesen würde.1427Claude Code authentifiziert sich über ein Anthropic-Anmeldedatenprofil, dessen gespeicherte Anmeldedaten abgelaufen sind, und das Profil enthält keine Refresh-Anmeldedaten, mit denen Claude Code sie erneuern könnte. Claude Code stoppt jede Anfrage lokal, ohne sie erneut zu versuchen, da ein erneuter Versuch dieselben abgelaufenen Anmeldedaten lesen würde.

1417 1428 

1418```text theme={null}1429```text theme={null}

1419Anthropic profile login expired · Re-authenticate your Anthropic profile1430Anthropic profile login expired · Re-authenticate your Anthropic profile

1420Anthropic profile login expired · Run /login to use your claude.ai account instead, or re-authenticate the profile1431Anthropic profile login expired · Run /login to use your claude.ai account instead, or re-authenticate the profile

1421```1432```

1422 1433 

1423Dies erscheint nur, wenn die aktive Anmeldedaten von einem Anthropic-Anmeldedaten-Profil stammt, einem, das Sie mit der Umgebungsvariable `ANTHROPIC_PROFILE` auswählen, das Claude Code als das aktive Profil in Ihrem Anthropic-Konfigurationsverzeichnis entdeckt, oder das Claude Code schrieb, als Sie sich [ohne API-Schlüssel anmeldeten](/docs/de/authentication#sign-in-without-an-api-key). Sitzungen, die sich mit einem API-Schlüssel, einem Bearer-Token wie `ANTHROPIC_AUTH_TOKEN` oder einem Drittanbieter-Provider authentifizieren, sehen diese Meldung nie.1434Dies erscheint nur, wenn die aktiven Anmeldedaten aus einem Anthropic-Anmeldedatenprofil stammen, das Sie mit der Umgebungsvariable `ANTHROPIC_PROFILE` auswählen, das Claude Code als aktives Profil in Ihrem Anthropic-Konfigurationsverzeichnis erkennt oder das Claude Code geschrieben hat, als Sie sich [ohne API-Schlüssel angemeldet](/docs/de/authentication#sign-in-without-an-api-key) haben. Sitzungen, die sich mit einem API-Schlüssel, einem Bearer-Token wie `ANTHROPIC_AUTH_TOKEN` oder einem Drittanbieter authentifizieren, sehen diese Meldung nie.

1424 1435 

1425Auf einer Maschine, die [die schlüssellose Anmeldung anbietet](/docs/de/authentication#sign-in-without-an-api-key), führen Sie `/login` aus, wählen Sie das Anthropic Console-Konto, und melden Sie sich erneut an, um ein Profil zu erneuern, das die schlüssellose Console-Anmeldung oder die Claude Platform CLI's `ant auth login` schrieb. Claude Code ersetzt die abgelaufene Anmeldedaten in diesem Profil. Für ein Verbund-Profil oder eines, das ein anderes Tool erstellt hat, erneuert `/login` die Anmeldedaten nicht. Welche Form Sie sehen, hängt davon ab, ob Sie das Profil ausgewählt haben oder Claude Code es entdeckt hat:1436Auf einem Rechner, der [die schlüssellose Anmeldung anbietet](/docs/de/authentication#sign-in-without-an-api-key), führen Sie `/login` aus, wählen das Anthropic Console-Konto und melden sich erneut an, um ein Profil zu erneuern, das die schlüssellose Console-Anmeldung oder `ant auth login` der Claude Platform CLI geschrieben hat. Claude Code ersetzt die abgelaufenen Anmeldedaten in diesem Profil. Bei einem Federation-Profil oder einem Profil, das ein anderes Tool erstellt hat, erneuert `/login` die Anmeldedaten nicht. Welche Form Sie sehen, hängt davon ab, ob Sie das Profil ausgewählt haben oder Claude Code es erkannt hat:

1426 1437 

1427* Wenn Sie `ANTHROPIC_PROFILE` explizit setzen, endet die Meldung mit `Re-authenticate your Anthropic profile`.1438* Wenn Sie `ANTHROPIC_PROFILE` explizit setzen, endet die Meldung mit `Re-authenticate your Anthropic profile`.

1428* Wenn Claude Code das Profil aus Ihrem Konfigurationsverzeichnis entdeckt hat, bietet die Meldung `/login` an, weil Claude Code einer funktionierenden `/login` Vorrang vor dem entdeckten Profil gibt und sich dann stattdessen mit Ihrem claude.ai- oder Console-Konto authentifiziert. Vor v2.1.234 zeigte Claude Code in diesem Fall auch die `Re-authenticate your Anthropic profile`-Form.1439* Wenn Claude Code das Profil aus Ihrem Konfigurationsverzeichnis erkannt hat, bietet die Meldung `/login` an, da Claude Code einem funktionierenden `/login` Vorrang vor dem erkannten Profil gibt und sich dann stattdessen mit Ihrem claude.ai- oder Console-Konto authentifiziert. Vor v2.1.234 zeigte Claude Code auch in diesem Fall die Form `Re-authenticate your Anthropic profile`.

1429 1440 

1430**Was zu tun ist:**1441**Was Sie tun können:**

1431 1442 

1432* Melden Sie sich erneut bei dem Profil an, dann versuchen Sie es erneut: auf einer Maschine, die [die schlüssellose Anmeldung anbietet](/docs/de/authentication#sign-in-without-an-api-key), führen Sie `/login` aus und wählen Sie das Anthropic Console-Konto für ein Profil, das die schlüssellose Console-Anmeldung oder die Claude Platform CLI's `ant auth login` schrieb; für andere Profile verwenden Sie das Tool, das sie erstellt hat1443* Melden Sie sich erneut beim Profil an und versuchen Sie es dann erneut: Auf einem Rechner, der [die schlüssellose Anmeldung anbietet](/docs/de/authentication#sign-in-without-an-api-key), führen Sie `/login` aus und wählen das Anthropic Console-Konto für ein Profil, das die schlüssellose Console-Anmeldung oder `ant auth login` der Claude Platform CLI geschrieben hat; für andere Profile verwenden Sie das Tool, das sie erstellt hat

1433* Wenn ein Administrator das Profil-Anmeldedaten bereitgestellt hat, bitten Sie ihn, ein neues auszugeben1444* Wenn ein Administrator die Anmeldedaten des Profils bereitgestellt hat, bitten Sie ihn, neue auszustellen

1434* Führen Sie `/status` aus, um die aktive Anmeldedatenquelle und den Profilnamen zu bestätigen1445* Führen Sie `/status` aus, um die aktive Quelle für Anmeldedaten und den Profilnamen zu prüfen

1435* Um die Verwendung des Profils zu beenden, heben Sie `ANTHROPIC_PROFILE` auf, wenn Sie es setzen, dann authentifizieren Sie sich auf andere Weise, z. B. `/login` oder `ANTHROPIC_API_KEY`1446* Um das Profil nicht mehr zu verwenden, heben Sie `ANTHROPIC_PROFILE` auf, falls Sie es gesetzt haben, und authentifizieren Sie sich dann auf andere Weise, etwa mit `/login` oder `ANTHROPIC_API_KEY`

1436 1447 

1437<h3 id="oauth-scope-requirement">1448<h3 id="oauth-scope-requirement">

1438 OAuth-Bereichs-Anforderung1449 OAuth-Scope-Anforderung

1439</h3>1450</h3>

1440 1451 

1441Das gespeicherte Token stammt aus einer Zeit vor einem Berechtigungs-Bereich, den ein neueres Feature benötigt:1452Das gespeicherte Token ist älter als ein Berechtigungs-Scope, den eine neuere Funktion benötigt:

1442 1453 

1443```text theme={null}1454```text theme={null}

1444OAuth token does not meet scope requirement: user:profile1455OAuth token does not meet scope requirement: user:profile

1445```1456```

1446 1457 

1447**Was zu tun ist:**1458**Was Sie tun können:**

1448 1459 

1449* Führen Sie `/login` aus, um einen neuen Token mit den aktuellen Bereichen zu erhalten. Sie müssen sich nicht zuerst abmelden.1460* Führen Sie `/login` aus, um ein neues Token mit den aktuellen Scopes zu erhalten. Sie müssen sich vorher nicht abmelden.

1450 1461 

1451<h3 id="claude-ai-rejected-the-session-token">1462<h3 id="claude-ai-rejected-the-session-token">

1452 claude.ai lehnte den Sitzungs-Token ab1463 claude.ai hat das Sitzungs-Token abgelehnt

1453</h3>1464</h3>

1454 1465 

1455Eine [claude.ai-Connector](/docs/de/mcp#use-mcp-servers-from-claude-ai)-Anfrage schlägt fehl, weil claude.ai den Token von Ihrer Claude Code-Anmeldung ablehnt. Der abgelehnte Token ist Ihre Anmeldung, nicht die eigene Autorisierung des Connectors in claude.ai, sodass das erneute Autorisieren des Connectors es nicht behebt. In `/mcp` zeigt der Connector `session token rejected` an, und seine Detailansicht liest:1466Eine Anfrage eines [claude.ai-Konnektors](/docs/de/mcp#use-mcp-servers-from-claude-ai) ist fehlgeschlagen, weil claude.ai das Token aus Ihrer Claude Code-Anmeldung abgelehnt hat. Das abgelehnte Token ist Ihre Anmeldung, nicht die eigene Autorisierung des Konnektors in claude.ai, daher behebt eine erneute Autorisierung des Konnektors das Problem nicht. In `/mcp` wird der Konnektor als `session token rejected` angezeigt, und seine Detailansicht lautet:

1456 1467 

1457```text theme={null}1468```text theme={null}

1458claude.ai rejected the session token. Run /login, then reconnect.1469claude.ai rejected the session token. Run /login, then reconnect.

1459```1470```

1460 1471 

1461**Was zu tun ist:**1472**Was Sie tun können:**

1462 1473 

1463* Führen Sie `/login` aus, um sich erneut anzumelden1474* Führen Sie `/login` aus, um sich erneut anzumelden

1464* Verbinden Sie den Connector von `/mcp` erneut, oder führen Sie `/mcp reconnect <server>` aus. Das erneute Verbinden, bevor Sie sich erneut anmelden, lässt den Connector im gleichen Zustand. Die **Reconnect**-Option des `/mcp`-Panels meldet `your claude.ai session token was rejected`; die eingegebene `/mcp reconnect <server>`-Form meldet eine erfolgreiche Wiederverbindung, obwohl der Token immer noch abgelehnt wird.1475* Verbinden Sie den Konnektor über `/mcp` erneut oder führen Sie `/mcp reconnect <server>` aus. Eine erneute Verbindung vor der erneuten Anmeldung lässt den Konnektor im selben Zustand. Die Option **Reconnect** im `/mcp`-Panel meldet `your claude.ai session token was rejected`; die eingetippte Form `/mcp reconnect <server>` meldet eine erfolgreiche Wiederverbindung, obwohl das Token weiterhin abgelehnt wird.

1465 1476 

1466Vor v2.1.222 markierte Claude Code den Connector als Authentifizierung benötigend statt, was Sie auf den Authentifizierungs-Fluss des Connectors hinwies, obwohl das Abschließen ihn nicht behebt.1477Vor v2.1.222 hat Claude Code den Konnektor stattdessen als authentifizierungsbedürftig markiert, was Sie zum Autorisierungsablauf des Konnektors geführt hat, obwohl dessen Abschluss den Zustand nicht behoben hat.

1467 1478 

1468<h3 id="mcp-server-needs-you-to-sign-in-again">1479<h3 id="mcp-server-needs-you-to-sign-in-again">

1469 MCP-Server benötigt Sie, um sich erneut anzumelden1480 MCP-Server erfordert eine erneute Anmeldung

1470</h3>1481</h3>

1471 1482 

1472Ein Remote-[MCP-Server](/docs/de/mcp) lehnte die Anmeldedaten bei einem Tool-Aufruf während der Sitzung ab, normalerweise weil eine Anmeldung oder ein Token abgelaufen ist oder weil der Token eine Berechtigung fehlt, die das Tool benötigt. Der Tool-Aufruf schlägt fehl, und `/mcp` markiert den Server als [Authentifizierung benötigend](/docs/de/mcp#authenticate-with-remote-mcp-servers).1483Ein Remote-[MCP-Server](/docs/de/mcp) hat die Anmeldedaten bei einem Tool-Aufruf während der Sitzung abgelehnt, meist weil eine Anmeldung oder ein Token abgelaufen ist oder weil dem Token eine Berechtigung fehlt, die das Tool benötigt. Der Tool-Aufruf schlägt fehl, und `/mcp` markiert den Server als [authentifizierungsbedürftig](/docs/de/mcp#authenticate-with-remote-mcp-servers).

1473 1484 

1474Für einen Server, bei dem Sie sich von Claude Code aus anmelden, einschließlich eines claude.ai-Connectors, ist die Anmeldung abgelaufen oder wurde widerrufen:1485Bei einem Server, bei dem Sie sich über Claude Code anmelden, einschließlich eines claude.ai-Konnektors, ist die Anmeldung abgelaufen oder wurde widerrufen:

1475 1486 

1476```text theme={null}1487```text theme={null}

1477MCP server "<name>" needs you to sign in again (run /mcp to re-authenticate)1488MCP server "<name>" needs you to sign in again (run /mcp to re-authenticate)

1478```1489```

1479 1490 

1480Führen Sie `/mcp` aus, wählen Sie den Server, und melden Sie sich erneut von seinem Menü an.1491Führen Sie `/mcp` aus, wählen Sie den Server aus und melden Sie sich über sein Menü erneut an.

1481 1492 

1482Für einen Server, der mit einem [`headersHelper`](/docs/de/mcp#use-dynamic-headers-for-custom-authentication)-Skript konfiguriert ist, hat Claude Code das Helper bereits erneut ausgeführt und den Aufruf einmal erneut versucht, bevor dies angezeigt wird:1493Bei einem Server, der mit einem [`headersHelper`](/docs/de/mcp#use-dynamic-headers-for-custom-authentication)-Skript konfiguriert ist, hat Claude Code den Helper bereits erneut ausgeführt und den Aufruf einmal wiederholt, bevor diese Meldung angezeigt wird:

1483 1494 

1484```text theme={null}1495```text theme={null}

1485MCP server "<name>" rejected the credential from its headersHelper (check the helper and run /mcp to reconnect, or to authenticate if the server also uses OAuth)1496MCP server "<name>" rejected the credential from its headersHelper (check the helper and run /mcp to reconnect, or to authenticate if the server also uses OAuth)

1486```1497```

1487 1498 

1488Überprüfen Sie, dass der Helper eine Anmeldedaten zurückgibt, die der Server akzeptiert, dann verbinden Sie von `/mcp` erneut, das den Helper erneut ausführt.1499Prüfen Sie, ob der Helper Anmeldedaten zurückgibt, die der Server akzeptiert, und verbinden Sie sich dann über `/mcp` erneut, wodurch der Helper erneut ausgeführt wird.

1489 1500 

1490Für einen Server mit einem statischen `Authorization`-Header in seiner Konfiguration:1501Bei einem Server mit einem statischen `Authorization`-Header in seiner Konfiguration:

1491 1502 

1492```text theme={null}1503```text theme={null}

1493MCP server "<name>" rejected the Authorization header in its config (update it, then run /mcp to reconnect)1504MCP server "<name>" rejected the Authorization header in its config (update it, then run /mcp to reconnect)

1494```1505```

1495 1506 

1496Aktualisieren Sie den Header-Wert, wo der Server konfiguriert ist, dann verbinden Sie von `/mcp` erneut.1507Aktualisieren Sie den Header-Wert dort, wo der Server konfiguriert ist, und verbinden Sie sich dann über `/mcp` erneut.

1497 1508 

1498Vor v2.1.273 zeigten die abgelaufene Anmeldung, `headersHelper` und `Authorization`-Header-Fälle alle `MCP server "<name>" requires re-authorization (token expired)`.1509Vor v2.1.273 zeigten die Fälle mit abgelaufener Anmeldung, `headersHelper` und `Authorization`-Header alle `MCP server "<name>" requires re-authorization (token expired)` an.

1499 1510 

1500Ein Server kann auch einen Tool-Aufruf mit HTTP 403 `insufficient_scope` ablehnen, um Sie aufzufordern, einen Bereich zu autorisieren, manchmal einen, den Ihr Token bereits auflistet. Die Meldung benennt diesen Bereich:1511Ein Server kann einen Tool-Aufruf auch mit HTTP 403 `insufficient_scope` ablehnen, um Sie aufzufordern, einen Scope zu autorisieren, manchmal einen, den Ihr Token bereits enthält. Die Meldung nennt diesen Scope:

1501 1512 

1502```text theme={null}1513```text theme={null}

1503MCP server "<name>" needs additional permissions (scope: "<scope>") — run /mcp to re-authenticate1514MCP server "<name>" needs additional permissions (scope: "<scope>") — run /mcp to re-authenticate

1504```1515```

1505 1516 

1506Führen Sie `/mcp` aus, wählen Sie den Server, und authentifizieren Sie sich erneut von seinem Menü.1517Führen Sie `/mcp` aus, wählen Sie den Server aus und authentifizieren Sie sich über sein Menü erneut.

1507 1518 

1508Wenn die Konfiguration des Servers weder [`oauth.scopes`](/docs/de/mcp#restrict-oauth-scopes) noch [`authServerMetadataUrl`](/docs/de/mcp#override-oauth-metadata-discovery) setzt, fordert Claude Code den Bereich an, den der Server benannt hat. Mit einer der beiden Einstellungen fordert Claude Code stattdessen die Bereiche dieser Einstellung an. Wenn Sie `oauth.scopes` angeheftet haben, fügen Sie den fehlenden Bereich zu dieser Liste hinzu, bevor Sie sich erneut authentifizieren.1519Wenn die Konfiguration des Servers weder [`oauth.scopes`](/docs/de/mcp#restrict-oauth-scopes) noch [`authServerMetadataUrl`](/docs/de/mcp#override-oauth-metadata-discovery) setzt, fordert Claude Code den Scope an, den der Server genannt hat. Ist eine dieser Einstellungen gesetzt, fordert Claude Code stattdessen die Scopes dieser Einstellung an. Wenn Sie `oauth.scopes` festgelegt haben, fügen Sie den fehlenden Scope zu dieser Liste hinzu, bevor Sie sich erneut authentifizieren.

1509 1520 

1510Vor v2.1.274 zeigte dieser Fall die `needs you to sign in again`-Meldung, und vor v2.1.273 zeigte er `requires re-authorization (token expired)` wie die anderen Fälle.1521Vor v2.1.274 zeigte dieser Fall die Meldung `needs you to sign in again` an, und vor v2.1.273 zeigte er wie die anderen Fälle `requires re-authorization (token expired)` an.

1511 1522 

1512<h3 id="mcp-server-url-is-missing-or-not-a-valid-url">1523<h3 id="mcp-server-url-is-missing-or-not-a-valid-url">

1513 MCP-Server-URL fehlt oder ist keine gültige URL1524 MCP-Server-URL fehlt oder ist keine gültige URL

1514</h3>1525</h3>

1515 1526 

1516Claude Code weigerte sich, eine OAuth-Anmeldung für einen Remote-MCP-Server zu starten, weil die konfigurierte `url` des Servers nicht als URL analysiert wird. Sofern Claude Code kein spezifischeres Konfigurationsproblem für den Server zu melden hat, gibt das Ausführen von [`claude mcp login <name>`](/docs/de/mcp#authenticate-from-the-command-line) in Ihrer Shell die Ablehnung aus als:1527Claude Code hat es abgelehnt, eine OAuth-Anmeldung für einen Remote-MCP-Server zu starten, weil die konfigurierte `url` des Servers nicht als URL geparst werden kann. Sofern Claude Code für den Server kein spezifischeres Konfigurationsproblem zu melden hat, gibt [`claude mcp login <name>`](/docs/de/mcp#authenticate-from-the-command-line) in Ihrer Shell die Ablehnung wie folgt aus:

1517 1528 

1518```text theme={null}1529```text theme={null}

1519Couldn't complete authentication for "<name>": This server's URL is missing or not a valid URL, so sign-in can't start. Fix the URL in its MCP config (or set the environment variable it uses) and try again.1530Couldn't complete authentication for "<name>": This server's URL is missing or not a valid URL, so sign-in can't start. Fix the URL in its MCP config (or set the environment variable it uses) and try again.

1520```1531```

1521 1532 

1522**Was zu tun ist:**1533**Was Sie tun können:**

1523 1534 

1524* Setzen Sie den Eintrag's `url` auf den echten Endpunkt des Servers, wo der Server konfiguriert ist, oder setzen Sie die Umgebungsvariable, die sein [`${VAR}`-Verweis](/docs/de/mcp#environment-variable-expansion-in-mcp-json) benennt, dann führen Sie die Anmeldung erneut aus.1535* Setzen Sie die `url` des Eintrags dort, wo der Server konfiguriert ist, auf den tatsächlichen Endpunkt des Servers, oder setzen Sie die Umgebungsvariable, die seine [`${VAR}`-Referenz](/docs/de/mcp#environment-variable-expansion-in-mcp-json) nennt, und führen Sie die Anmeldung dann erneut aus.

1525 1536 

1526<h3 id="issuer-mismatch-in-authorization-response">1537<h3 id="issuer-mismatch-in-authorization-response">

1527 Aussteller-Nichtübereinstimmung in Autorisierungs-Antwort1538 Issuer stimmt in der Autorisierungsantwort nicht überein

1528</h3>1539</h3>

1529 1540 

1530Während einer [MCP OAuth-Anmeldung](/docs/de/mcp#authenticate-with-remote-mcp-servers) leitete der Autorisierungs-Server zu Claude Code mit einem `iss`-Parameter um, der nicht den Aussteller benennt, den Claude Code von den OAuth-Metadaten des Servers erwartet. Ein falscher Aussteller in diesem Schritt ist, wie ein Autorisierungs-Server-Mix-up-Angriff aussieht, sodass Claude Code die Anmeldung fehlschlägt, statt den Autorisierungs-Code auszutauschen. Claude Code zeigt den Fehler im `/mcp`-Server-Menü nach der Browser-Anmeldung:1541Während einer [MCP-OAuth-Anmeldung](/docs/de/mcp#authenticate-with-remote-mcp-servers) hat der Autorisierungsserver mit einem `iss`-Parameter zu Claude Code zurückgeleitet, der nicht den Issuer nennt, den Claude Code aus den OAuth-Metadaten des Servers erwartet hat. Ein falscher Issuer in diesem Schritt ist das Erscheinungsbild eines Mix-up-Angriffs auf den Autorisierungsserver, daher lässt Claude Code die Anmeldung fehlschlagen, statt den Autorisierungscode einzutauschen. Claude Code zeigt den Fehler nach der Browseranmeldung im Servermenü von `/mcp` an:

1531 1542 

1532```text theme={null}1543```text theme={null}

1533Issuer mismatch in authorization response (RFC 9207): expected "https://auth.example.com", received "https://other.example.com"1544Issuer mismatch in authorization response (RFC 9207): expected "https://auth.example.com", received "https://other.example.com"

1534```1545```

1535 1546 

1536`expected` ist der Aussteller aus den OAuth-Metadaten des Servers, und `received` ist der `iss`-Wert, den die Umleitung trug. Eine Anmeldung, deren Umleitung keinen `iss`-Parameter trägt, besteht die Überprüfung, es sei denn, die Metadaten des Servers setzen `authorization_response_iss_parameter_supported`, in welchem Fall Claude Code die Anmeldung fehlschlägt.1547`expected` ist der Issuer aus den OAuth-Metadaten des Servers, und `received` ist der `iss`-Wert, den die Weiterleitung enthielt. Eine Anmeldung, deren Weiterleitung keinen `iss`-Parameter enthält, besteht die Prüfung, es sei denn, die Metadaten des Servers setzen `authorization_response_iss_parameter_supported`; in diesem Fall lässt Claude Code die Anmeldung fehlschlagen.

1537 1548 

1538**Was zu tun ist:**1549**Was Sie tun können:**

1539 1550 

1540* Versuchen Sie die Anmeldung erneut von `/mcp`1551* Versuchen Sie die Anmeldung über `/mcp` erneut

1541* Wenn der Fehler wiederholt wird, melden Sie ihn dem Server-Betreiber. Die Behebung ist serverseitig: der Autorisierungs-Server muss den gleichen Aussteller im `iss`-Parameter zurückgeben, den er in seinen Metadaten bewirbt1552* Wenn der Fehler erneut auftritt, melden Sie ihn dem Betreiber des Servers. Die Behebung erfolgt serverseitig: Der Autorisierungsserver muss im `iss`-Parameter denselben Issuer zurückgeben, den er in seinen Metadaten angibt

1542* Um eine Verbindung herzustellen, während der Server behoben wird, starten Sie Claude Code mit [`MCP_SDK_GENERATION=v1`](/docs/de/env-vars), dessen [Runtime](/docs/de/mcp#mcp-client-runtimes) diese Überprüfung nicht ausführt. Dies entfernt einen Schutz vor Mix-up-Angriffen, daher bevorzugen Sie die serverseitige Behebung1553* Um eine Verbindung herzustellen, während der Server korrigiert wird, starten Sie Claude Code mit [`MCP_SDK_GENERATION=v1`](/docs/de/env-vars), dessen [Runtime](/docs/de/mcp#mcp-client-runtimes) diese Prüfung nicht durchführt. Dadurch entfällt ein Schutz vor Mix-up-Angriffen, daher ist die serverseitige Behebung vorzuziehen

1543 1554 

1544Vor v2.1.232 verwendete Claude Code die v2-Runtime nur in einem schrittweisen Rollout oder wenn Sie `MCP_SDK_GENERATION=v2` setzen.1555Vor v2.1.232 hat Claude Code die v2-Runtime nur im Rahmen eines schrittweisen Rollouts oder dann verwendet, wenn Sie `MCP_SDK_GENERATION=v2` gesetzt haben.

1545 1556 

1546<h3 id="refusing-to-send-credentials-to-non-https-token-endpoint">1557<h3 id="refusing-to-send-credentials-to-non-https-token-endpoint">

1547 Weigern, Anmeldedaten an einen nicht-HTTPS-Token-Endpunkt zu senden1558 Senden von Anmeldedaten an Token-Endpunkt ohne HTTPS verweigert

1548</h3>1559</h3>

1549 1560 

1550Auf der [v2-Runtime](/docs/de/mcp#mcp-client-runtimes) sendet Claude Code eine [MCP OAuth](/docs/de/mcp#authenticate-with-remote-mcp-servers)-Token-Anfrage nur an einen Token-Endpunkt, der über HTTPS oder bei `localhost`, `127.0.0.1` oder `::1` bereitgestellt wird. Diese Meldung bedeutet, dass der Token-Endpunkt des Servers keiner von beiden ist, sodass Claude Code gestoppt hat, bevor die Anfrage gesendet wurde. Das passiert nach der Browser-Anmeldung, sodass der Browser-Schritt zuerst erfolgreich ist, und erneut, wenn Claude Code das Token des Servers aktualisiert.1561In der [v2-Runtime](/docs/de/mcp#mcp-client-runtimes) sendet Claude Code eine [MCP-OAuth](/docs/de/mcp#authenticate-with-remote-mcp-servers)-Token-Anfrage nur an einen Token-Endpunkt, der über HTTPS oder unter `localhost`, `127.0.0.1` oder `::1` bereitgestellt wird. Diese Meldung bedeutet, dass der Token-Endpunkt des Servers keines von beidem ist, daher hat Claude Code vor dem Senden der Anfrage gestoppt. Das geschieht nach der Browseranmeldung, sodass der Browserschritt zunächst erfolgreich ist, und erneut jedes Mal, wenn Claude Code das Token des Servers erneuert.

1551 1562 

1552In seiner vollständigen Form kommt die Meldung vom MCP SDK und zitiert den Token-Endpunkt, den es ablehnte. Im Debug-Protokoll folgt es `Error during auth completion:` für eine Anmeldung oder `Token refresh failed:` für eine Aktualisierung. In Ihrer Shell gibt `claude mcp login <name>` es nach `Couldn't complete authentication for "<name>":` aus, und in einer Sitzung zeigt `/mcp` es unter dem Server-Menü:1563In ihrer vollständigen Form stammt die Meldung aus dem MCP SDK und zitiert den abgelehnten Token-Endpunkt. Im Debug-Log folgt sie bei einer Anmeldung auf `Error during auth completion:` und bei einer Erneuerung auf `Token refresh failed:`. In Ihrer Shell gibt `claude mcp login <name>` sie nach `Couldn't complete authentication for "<name>":` aus, und in einer Sitzung zeigt `/mcp` sie im Menü des Servers an:

1553 1564 

1554```text theme={null}1565```text theme={null}

1555Refusing to send credentials to non-https token endpoint 'http://192.168.1.50:8123/oauth/token'. OAuth token requests MUST use TLS (localhost / 127.0.0.1 / ::1 are exempt).1566Refusing to send credentials to non-https token endpoint 'http://192.168.1.50:8123/oauth/token'. OAuth token requests MUST use TLS (localhost / 127.0.0.1 / ::1 are exempt).

1556```1567```

1557 1568 

1558Claude Code behandelt eine Server-URL, die eine Abfrage-Zeichenkette oder ein langes zufälliges Pfad-Segment hat, als möglicherweise geheim. Für einen solchen Server redaktioniert es die Anmeldungs-Fehler, die das MCP SDK auslöst, bevor es sie zeigt oder protokolliert. Dieser Fehler liest sich dann als ein kurzer Name, der sich zwischen Versionen ändern kann, z. B. `io`, gefolgt von `from the MCP SDK for` und der redaktionierten Server-URL. Andere Fehler vom MCP SDK nehmen die gleiche Form dort an. Die redaktionierte Meldung kann dieser Fehler nur sein, wenn der Token-Endpunkt des Servers einfaches `http://` bei einer Adresse außer `localhost`, `127.0.0.1` oder `::1` ist.1569Claude Code behandelt eine Server-URL mit Query-String oder einem langen, zufällig aussehenden Pfadsegment als möglicherweise geheim. Bei einem solchen Server schwärzt es die Anmeldefehler, die das MCP SDK auslöst, bevor es sie anzeigt oder protokolliert. Dieser Fehler erscheint dann als kurzer Name, der sich zwischen Releases ändern kann, etwa `io`, gefolgt von `from the MCP SDK for` und der geschwärzten Server-URL. Andere Fehler aus dem MCP SDK haben dort dieselbe Form. Die geschwärzte Meldung kann nur dann dieser Fehler sein, wenn der Token-Endpunkt des Servers ein einfaches `http://` unter einer anderen Adresse als `localhost`, `127.0.0.1` oder `::1` ist.

1559 1570 

1560**Was zu tun ist:**1571**Was Sie tun können:**

1561 1572 

1562* Stellen Sie diesen Token-Endpunkt über HTTPS bereit, z. B. durch Platzierung des Servers hinter einem Reverse-Proxy oder Tunnel, der TLS beendet, und Konfiguration des Servers, um die `https://`-Adresse zu bewerben1573* Stellen Sie diesen Token-Endpunkt über HTTPS bereit, zum Beispiel indem Sie den Server hinter einen Reverse-Proxy oder Tunnel stellen, der TLS terminiert, und den Server so konfigurieren, dass er die `https://`-Adresse angibt

1563* Um eine Verbindung herzustellen, ohne den Server zu ändern, starten Sie Claude Code mit [`MCP_SDK_GENERATION=v1`](/docs/de/env-vars), dessen [Runtime](/docs/de/mcp#mcp-client-runtimes) diese Regel nicht anwendet und die Token-Anfrage über einfaches HTTP sendet. Diese Wahl dauert bis zum Beenden und gilt für jeden Server. Die v1-Runtime überspringt auch die [Aussteller-Überprüfung](#issuer-mismatch-in-authorization-response), daher bevorzugen Sie die Bereitstellung des Endpunkts über HTTPS1574* Um eine Verbindung herzustellen, ohne den Server zu ändern, starten Sie Claude Code mit [`MCP_SDK_GENERATION=v1`](/docs/de/env-vars), dessen [Runtime](/docs/de/mcp#mcp-client-runtimes) diese Regel nicht anwendet und die Token-Anfrage über einfaches HTTP sendet. Diese Wahl gilt, bis Sie Claude Code beenden, und betrifft jeden Server. Die v1-Runtime überspringt außerdem die [Issuer-Prüfung](#issuer-mismatch-in-authorization-response), daher ist die Bereitstellung des Endpunkts über HTTPS vorzuziehen

1564 1575 

1565<h3 id="aws-credentials-expired-or-invalid">1576<h3 id="aws-credentials-expired-or-invalid">

1566 AWS-Anmeldedaten abgelaufen oder ungültig1577 AWS-Anmeldedaten abgelaufen oder ungültig

1567</h3>1578</h3>

1568 1579 

1569Ihr AWS-Sitzungs-Token ist abgelaufen oder wurde abgelehnt. Diese Meldung erscheint bei einem 401 von [Claude Platform on AWS](/docs/de/claude-platform-on-aws) oder dem [Mantle-Endpunkt](/docs/de/amazon-bedrock#use-the-mantle-endpoint), wie diese Provider ein abgelaufenes Sicherheits-Token melden.1580Ihr AWS-Sitzungs-Token ist abgelaufen oder wurde abgelehnt. Diese Meldung erscheint bei einem 401 von [Claude Platform on AWS](/docs/de/claude-platform-on-aws) oder dem [Mantle-Endpunkt](/docs/de/amazon-bedrock#use-the-mantle-endpoint); auf diese Weise melden diese Anbieter ein abgelaufenes Sicherheits-Token.

1570 1581 

1571Der Aktions-Hinweis in der Mitte variiert mit Ihrer Einrichtung. Der stabile Teil ist das führende `AWS credentials expired or invalid`:1582Der Handlungshinweis in der Mitte variiert je nach Ihrer Einrichtung. Der feste Teil ist das vorangestellte `AWS credentials expired or invalid`:

1572 1583 

1573```text theme={null}1584```text theme={null}

1574AWS credentials expired or invalid · run /login and select "Claude Platform on AWS · refresh credentials", or run `aws sso login --profile myprofile` in another terminal · API Error: 401 ...1585AWS credentials expired or invalid · run /login and select "Claude Platform on AWS · refresh credentials", or run `aws sso login --profile myprofile` in another terminal · API Error: 401 ...


1576 1587 

1577Vor v2.1.273 erschien diese Meldung nur, wenn `awsAuthRefresh` konfiguriert war.1588Vor v2.1.273 erschien diese Meldung nur, wenn `awsAuthRefresh` konfiguriert war.

1578 1589 

1579**Was zu tun ist:**1590**Was Sie tun können:**

1580 1591 

1581* Wenn der Hinweis sagt, dass Anmeldedaten von dieser Umgebung verwaltet werden, besitzt die App, die Claude Code gestartet hat, die Anmeldedaten, und die anderen Schritte hier gelten nicht: versuchen Sie es erneut, oder kontaktieren Sie Ihren Administrator1592* Wenn der Hinweis besagt, dass die Anmeldedaten von dieser Umgebung verwaltet werden, verwaltet die App, die Claude Code gestartet hat, die Anmeldedaten, und die anderen Schritte hier gelten nicht: Versuchen Sie es erneut oder wenden Sie sich an Ihren Administrator

1582* Wenn [`awsAuthRefresh`](/docs/de/amazon-bedrock#advanced-credential-configuration) gesetzt ist, führen Sie den in der Meldung benannten Befehl aus, z. B. `aws sso login --profile myprofile`, in einem anderen Terminal aus und schließen Sie die Browser-Anmeldung ab, dann versuchen Sie es erneut. Andernfalls aktualisieren Sie die AWS-Anmeldedaten, die Sie selbst verwenden: Ihre SSO-Anmeldung, Zugriffs-Schlüssel, API-Schlüssel oder Proxy-Token1593* Wenn [`awsAuthRefresh`](/docs/de/amazon-bedrock#advanced-credential-configuration) gesetzt ist, führen Sie den in der Meldung genannten Befehl, etwa `aws sso login --profile myprofile`, in einem anderen Terminal aus, schließen Sie die Browseranmeldung ab und versuchen Sie es dann erneut. Andernfalls erneuern Sie die von Ihnen verwendeten AWS-Anmeldedaten selbst: Ihre SSO-Anmeldung, Zugriffsschlüssel, Ihren API-Schlüssel oder Ihr Proxy-Token

1583* Mit `awsAuthRefresh` in einer interaktiven Sitzung können Sie stattdessen `/login` ausführen, **3rd-party platform** wählen, dann **Claude Platform on AWS · refresh credentials** unter **Using 3rd-party platforms** wählen, um den gleichen Befehl auszuführen, ohne Claude Code neu zu starten. Siehe [AWS-Anmeldedaten konfigurieren](/docs/de/claude-platform-on-aws#1-configure-aws-credentials)1594* Wenn `awsAuthRefresh` in einer interaktiven Sitzung gesetzt ist, können Sie stattdessen `/login` ausführen, **3rd-party platform** wählen und dann unter **Using 3rd-party platforms** die Option **Claude Platform on AWS · refresh credentials** auswählen, um denselben Befehl auszuführen, ohne Claude Code neu zu starten. Siehe [AWS-Anmeldedaten konfigurieren](/docs/de/claude-platform-on-aws#1-configure-aws-credentials)

1584* Wenn der Fehler nach dem erfolgreichen Aktualisierungs-Befehl wiederholt wird, bestätigen Sie, dass die Identität außerhalb von Claude Code mit `aws sts get-caller-identity` in der gleichen Shell und dem gleichen Profil gültig ist1595* Wenn der Fehler erneut auftritt, nachdem der Erneuerungsbefehl erfolgreich war, prüfen Sie mit `aws sts get-caller-identity` in derselben Shell und mit demselben Profil, ob die Identität außerhalb von Claude Code gültig ist

1585 1596 

1586<h3 id="aws-authentication-failed">1597<h3 id="aws-authentication-failed">

1587 AWS-Authentifizierung fehlgeschlagen1598 AWS-Authentifizierung fehlgeschlagen

1588</h3>1599</h3>

1589 1600 

1590Ihr AWS-Provider hat einen 403 zurückgegeben, oder [Amazon Bedrock](/docs/de/amazon-bedrock) hat einen 401 zurückgegeben.1601Ihr AWS-Anbieter hat einen 403 zurückgegeben, oder [Amazon Bedrock](/docs/de/amazon-bedrock) hat einen 401 zurückgegeben.

1591 1602 

1592Amazon Bedrock meldet ein abgelaufenes Sicherheits-Token als 403, aber ein 403 ist auch, wie es eine Autorisierungs-Ablehnung meldet, z. B. eine `AccessDeniedException` von einer fehlenden IAM-Berechtigung. Claude Code kann diese beiden Ursachen nicht unterscheiden.1603Amazon Bedrock meldet ein abgelaufenes Sicherheits-Token als 403, aber ein 403 ist auch die Art, wie es eine Autorisierungsverweigerung meldet, etwa eine `AccessDeniedException` aufgrund einer fehlenden IAM-Berechtigung. Claude Code kann diese beiden Ursachen nicht unterscheiden.

1593 1604 

1594Ein 401 von Amazon Bedrock landet auch hier statt unter [AWS-Anmeldedaten abgelaufen oder ungültig](#aws-credentials-expired-or-invalid), weil Amazon Bedrock ein abgelaufenes Token nicht als 401 meldet. Ein 401 von diesem Endpunkt kommt normalerweise von etwas anderem im Anfrage-Pfad, z. B. einem Unternehmens-Proxy.1605Ein 401 von Amazon Bedrock landet ebenfalls hier und nicht unter [AWS-Anmeldedaten abgelaufen oder ungültig](#aws-credentials-expired-or-invalid), da Amazon Bedrock ein abgelaufenes Token nicht als 401 meldet. Ein 401 von diesem Endpunkt stammt in der Regel von etwas anderem im Anfragepfad, etwa einem Unternehmens-Proxy.

1595 1606 

1596Eine Anmeldedaten-Aktualisierung behebt ein abgelaufenes Token und kann die anderen Ursachen nicht beheben, sodass die Meldung beide anbietet:1607Eine Erneuerung der Anmeldedaten behebt ein abgelaufenes Token, kann aber die anderen Ursachen nicht beheben, daher bietet die Meldung beides an:

1597 1608 

1598```text theme={null}1609```text theme={null}

1599AWS authentication failed · run /login and select "Claude Platform on AWS · refresh credentials", or run `aws sso login --profile myprofile` in another terminal · if credentials are current, check AWS permissions and model access · API Error: 403 ...1610AWS authentication failed · run /login and select "Claude Platform on AWS · refresh credentials", or run `aws sso login --profile myprofile` in another terminal · if credentials are current, check AWS permissions and model access · API Error: 403 ...

1600```1611```

1601 1612 

1602Der Aktions-Hinweis in der Mitte variiert mit Ihrer Einrichtung. Der stabile Teil ist das führende `AWS authentication failed`.1613Der Handlungshinweis in der Mitte variiert je nach Ihrer Einrichtung. Der feste Teil ist das vorangestellte `AWS authentication failed`.

1603 1614 

1604Wenn der 403 Amazon Bedrock's Antwort ist, dass Sie keinen Zugriff auf das Modell mit der angegebenen Modell-ID haben, sagt der Hinweis stattdessen, dass Sie das Modell für Ihr Konto und Ihre Region in der Amazon Bedrock-Konsole aktivieren.1615Wenn der 403 die Antwort von Amazon Bedrock ist, dass Sie keinen Zugriff auf das Modell mit der angegebenen Modell-ID haben, fordert der Hinweis Sie stattdessen auf, das Modell für Ihr Konto und Ihre Region in der Amazon Bedrock-Konsole zu aktivieren.

1605 1616 

1606Vor v2.1.273 erschien diese Meldung nur, wenn `awsAuthRefresh` konfiguriert war.1617Vor v2.1.273 erschien diese Meldung nur, wenn `awsAuthRefresh` konfiguriert war.

1607 1618 

1608**Was zu tun ist:**1619**Was Sie tun können:**

1609 1620 

1610* Wenn der Hinweis sagt, dass Anmeldedaten von dieser Umgebung verwaltet werden, besitzt die App, die Claude Code gestartet hat, die Anmeldedaten, und die anderen Schritte hier gelten nicht: versuchen Sie es erneut, oder kontaktieren Sie Ihren Administrator1621* Wenn der Hinweis besagt, dass die Anmeldedaten von dieser Umgebung verwaltet werden, verwaltet die App, die Claude Code gestartet hat, die Anmeldedaten, und die anderen Schritte hier gelten nicht: Versuchen Sie es erneut oder wenden Sie sich an Ihren Administrator

1611* Aktualisieren Sie Ihre AWS-Anmeldedaten für den Fall, dass ein abgelaufenes Anmeldedaten die Ursache ist: führen Sie den [`awsAuthRefresh`](/docs/de/amazon-bedrock#advanced-credential-configuration)-Befehl aus, der in der Meldung benannt wird, wenn einer gesetzt ist, oder aktualisieren Sie Ihre SSO-Anmeldung, Zugriffs-Schlüssel, API-Schlüssel oder Proxy-Token selbst1622* Erneuern Sie Ihre AWS-Anmeldedaten für den Fall, dass abgelaufene Anmeldedaten die Ursache sind: Führen Sie den in der Meldung genannten [`awsAuthRefresh`](/docs/de/amazon-bedrock#advanced-credential-configuration)-Befehl aus, sofern einer gesetzt ist, oder erneuern Sie Ihre SSO-Anmeldung, Zugriffsschlüssel, Ihren API-Schlüssel oder Ihr Proxy-Token selbst

1612* Wenn Ihre Anmeldedaten aktuell sind, bestätigen Sie die IAM-Berechtigungen in [IAM-Konfiguration](/docs/de/amazon-bedrock#iam-configuration), die an die Identität angehängt sind, die Sie verwenden, und dass das ausgewählte Modell für Ihr Konto und Ihre Region aktiviert ist1623* Wenn Ihre Anmeldedaten aktuell sind, prüfen Sie, ob die IAM-Berechtigungen aus der [IAM-Konfiguration](/docs/de/amazon-bedrock#iam-configuration) der von Ihnen verwendeten Identität zugewiesen sind und ob das ausgewählte Modell für Ihr Konto und Ihre Region aktiviert ist

1613* Führen Sie `aws sts get-caller-identity` aus, um zu bestätigen, welche Identität Ihre Anfragen verwenden1624* Führen Sie `aws sts get-caller-identity` aus, um zu prüfen, welche Identität Ihre Anfragen verwenden

1614 1625 

1615<h3 id="google-cloud-credentials-expired-or-invalid">1626<h3 id="google-cloud-credentials-expired-or-invalid">

1616 Google Cloud-Anmeldedaten abgelaufen oder ungültig1627 Google Cloud-Anmeldedaten abgelaufen oder ungültig

1617</h3>1628</h3>

1618 1629 

1619Ihre Google Cloud-Anmeldedaten für [Google Cloud's Agent Platform](/docs/de/google-vertex-ai) sind abgelaufen oder wurden abgelehnt: die Anfrage hat einen 401 zurückgegeben, wie Agent Platform Anmeldedaten-Ablauf meldet.1630Ihre Google Cloud-Anmeldedaten für [Google Cloud's Agent Platform](/docs/de/google-vertex-ai) sind abgelaufen oder wurden abgelehnt: Die Anfrage hat einen 401 zurückgegeben; auf diese Weise meldet Agent Platform abgelaufene Anmeldedaten.

1620 1631 

1621Der Aktions-Hinweis in der Mitte variiert mit Ihrer Einrichtung. Der stabile Teil ist das führende `Google Cloud credentials expired or invalid`:1632Der Handlungshinweis in der Mitte variiert je nach Ihrer Einrichtung. Der feste Teil ist das vorangestellte `Google Cloud credentials expired or invalid`:

1622 1633 

1623```text theme={null}1634```text theme={null}

1624Google Cloud credentials expired or invalid · refresh your Google Cloud credentials (application default sign-in, or the key file in GOOGLE_APPLICATION_CREDENTIALS) and retry · API Error: 401 ...1635Google Cloud credentials expired or invalid · refresh your Google Cloud credentials (application default sign-in, or the key file in GOOGLE_APPLICATION_CREDENTIALS) and retry · API Error: 401 ...

1625```1636```

1626 1637 

1627**Was zu tun ist:**1638**Was Sie tun können:**

1628 1639 

1629* Wenn der Hinweis sagt, dass Anmeldedaten von dieser Umgebung verwaltet werden, besitzt die App, die Claude Code gestartet hat, die Anmeldedaten, und die anderen Schritte hier gelten nicht: versuchen Sie es erneut, oder kontaktieren Sie Ihren Administrator1640* Wenn der Hinweis besagt, dass die Anmeldedaten von dieser Umgebung verwaltet werden, verwaltet die App, die Claude Code gestartet hat, die Anmeldedaten, und die anderen Schritte hier gelten nicht: Versuchen Sie es erneut oder wenden Sie sich an Ihren Administrator

1630* Wenn Sie sich mit Standard-Anwendungs-Anmeldedaten authentifizieren, führen Sie den [`gcpAuthRefresh`](/docs/de/google-vertex-ai#advanced-credential-configuration)-Befehl aus, der in der Meldung benannt wird, oder `gcloud auth application-default login`, und schließen Sie die Anmeldung ab, dann versuchen Sie es erneut1641* Wenn Sie sich mit Application Default Credentials authentifizieren, führen Sie den in der Meldung genannten [`gcpAuthRefresh`](/docs/de/google-vertex-ai#advanced-credential-configuration)-Befehl oder `gcloud auth application-default login` aus, schließen Sie die Anmeldung ab und versuchen Sie es dann erneut

1631* Wenn Sie durch ein [LLM-Gateway](/docs/de/llm-gateway) mit `CLAUDE_CODE_SKIP_VERTEX_AUTH` gesetzt leiten, aktualisieren Sie das Gateway-Token in `ANTHROPIC_AUTH_TOKEN` oder `ANTHROPIC_CUSTOM_HEADERS`, dann versuchen Sie es erneut1642* Wenn Sie über ein [LLM-Gateway](/docs/de/llm-gateway) mit gesetztem `CLAUDE_CODE_SKIP_VERTEX_AUTH` routen, erneuern Sie das Gateway-Token in `ANTHROPIC_AUTH_TOKEN` oder `ANTHROPIC_CUSTOM_HEADERS` und versuchen Sie es dann erneut

1632* Wenn Sie sich mit einer Service-Account-Schlüsseldatei authentifizieren, bestätigen Sie, dass `GOOGLE_APPLICATION_CREDENTIALS` auf einen gültigen Schlüssel zeigt. Siehe [GCP-Anmeldedaten konfigurieren](/docs/de/google-vertex-ai#3-configure-gcp-credentials)1643* Wenn Sie sich mit einer Schlüsseldatei eines Dienstkontos authentifizieren, prüfen Sie, ob `GOOGLE_APPLICATION_CREDENTIALS` auf einen gültigen Schlüssel verweist. Siehe [GCP-Anmeldedaten konfigurieren](/docs/de/google-vertex-ai#3-configure-gcp-credentials)

1633* Wenn der Fehler nach einer Aktualisierung wiederholt wird, bestätigen Sie, dass die Identität außerhalb von Claude Code mit `gcloud auth application-default print-access-token` in der gleichen Shell funktioniert1644* Wenn der Fehler nach einer Erneuerung erneut auftritt, prüfen Sie mit `gcloud auth application-default print-access-token` in derselben Shell, ob die Identität außerhalb von Claude Code funktioniert

1634 1645 

1635Vor v2.1.273 zeigte ein 401 von Agent Platform die generische `Please run /login`- oder `Failed to authenticate`-Meldung statt, die Google Cloud-Anmeldedaten nicht aktualisieren kann.1646Vor v2.1.273 zeigte ein 401 von Agent Platform stattdessen die allgemeine Meldung `Please run /login` oder `Failed to authenticate` an, mit der sich Google Cloud-Anmeldedaten nicht erneuern lassen.

1636 1647 

1637<h3 id="google-cloud-authentication-failed">1648<h3 id="google-cloud-authentication-failed">

1638 Google Cloud-Authentifizierung fehlgeschlagen1649 Google Cloud-Authentifizierung fehlgeschlagen

1639</h3>1650</h3>

1640 1651 

1641[Google Cloud's Agent Platform](/docs/de/google-vertex-ai) hat einen 403 zurückgegeben, den es für Autorisierungs-Ablehnungen statt abgelaufener Anmeldedaten verwendet. Normalerweise fehlt der Identität, mit der Sie sich authentifizieren, eine IAM-Berechtigung, oder das Modell ist nicht für Ihr Projekt aktiviert.1652[Google Cloud's Agent Platform](/docs/de/google-vertex-ai) hat einen 403 zurückgegeben, den es für Autorisierungsverweigerungen und nicht für abgelaufene Anmeldedaten verwendet. In der Regel fehlt der Identität, mit der Sie sich authentifizieren, eine IAM-Berechtigung, oder das Modell ist für Ihr Projekt nicht aktiviert.

1642 1653 

1643Der Aktions-Hinweis in der Mitte variiert mit Ihrer Einrichtung. Der stabile Teil ist das führende `Google Cloud authentication failed`:1654Der Handlungshinweis in der Mitte variiert je nach Ihrer Einrichtung. Der feste Teil ist das vorangestellte `Google Cloud authentication failed`:

1644 1655 

1645```text theme={null}1656```text theme={null}

1646Google Cloud authentication failed · refresh your Google Cloud credentials (application default sign-in, or the key file in GOOGLE_APPLICATION_CREDENTIALS) and retry · if credentials are current, check GCP IAM permissions and Vertex AI model access · API Error: 403 ...1657Google Cloud authentication failed · refresh your Google Cloud credentials (application default sign-in, or the key file in GOOGLE_APPLICATION_CREDENTIALS) and retry · if credentials are current, check GCP IAM permissions and Vertex AI model access · API Error: 403 ...

1647```1658```

1648 1659 

1649**Was zu tun ist:**1660**Was Sie tun können:**

1650 1661 

1651* Wenn der Hinweis sagt, dass Anmeldedaten von dieser Umgebung verwaltet werden, besitzt die App, die Claude Code gestartet hat, die Anmeldedaten, und die anderen Schritte hier gelten nicht: versuchen Sie es erneut, oder kontaktieren Sie Ihren Administrator1662* Wenn der Hinweis besagt, dass die Anmeldedaten von dieser Umgebung verwaltet werden, verwaltet die App, die Claude Code gestartet hat, die Anmeldedaten, und die anderen Schritte hier gelten nicht: Versuchen Sie es erneut oder wenden Sie sich an Ihren Administrator

1652* Bestätigen Sie, dass die Rollen in [IAM-Konfiguration](/docs/de/google-vertex-ai#iam-configuration) der Identität gewährt sind, mit der Sie sich authentifizieren1663* Prüfen Sie, ob die Rollen aus der [IAM-Konfiguration](/docs/de/google-vertex-ai#iam-configuration) der Identität zugewiesen sind, mit der Sie sich authentifizieren

1653* Bestätigen Sie, dass das Modell für Ihr Projekt aktiviert ist. Siehe [Modell-Zugriff anfordern](/docs/de/google-vertex-ai#2-request-model-access)1664* Prüfen Sie, ob das Modell für Ihr Projekt aktiviert ist. Siehe [Modellzugriff anfordern](/docs/de/google-vertex-ai#2-request-model-access)

1654 1665 

1655Vor v2.1.273 zeigte ein 403 von Agent Platform die generische `Please run /login`- oder `Failed to authenticate`-Meldung statt, die Google Cloud-Anmeldedaten nicht aktualisieren kann.1666Vor v2.1.273 zeigte ein 403 von Agent Platform stattdessen die allgemeine Meldung `Please run /login` oder `Failed to authenticate` an, mit der sich Google Cloud-Anmeldedaten nicht erneuern lassen.

1656 1667 

1657<h3 id="microsoft-foundry-authentication-failed">1668<h3 id="microsoft-foundry-authentication-failed">

1658 Microsoft Foundry-Authentifizierung fehlgeschlagen1669 Microsoft Foundry authentication failed

1659</h3>1670</h3>

1660 1671 

1661[Microsoft Foundry](/docs/de/microsoft-foundry) hat einen 401 oder 403 zurückgegeben: die Azure-Anmeldedaten in der Anfrage wurden abgelehnt, oder die Identität dahinter hat keinen Zugriff auf die Foundry-Ressource. `/login` kann keine Azure-Anmeldedaten prägen. Der Aktions-Hinweis in der Mitte variiert mit Ihrer Einrichtung. Der stabile Teil ist das führende `Microsoft Foundry authentication failed`:1672[Microsoft Foundry](/docs/de/microsoft-foundry) hat einen 401 oder 403 zurückgegeben: Die Azure-Anmeldedaten in der Anfrage wurden abgelehnt, oder die dahinterstehende Identität hat keinen Zugriff auf die Foundry-Ressource. `/login` kann keine Azure-Anmeldedaten erzeugen. Der Handlungshinweis in der Mitte variiert je nach Ihrer Konfiguration. Der stabile Teil ist das einleitende `Microsoft Foundry authentication failed`:

1662 1673 

1663```text theme={null}1674```text theme={null}

1664Microsoft Foundry authentication failed · refresh your Foundry credential (ANTHROPIC_FOUNDRY_AUTH_TOKEN, ANTHROPIC_FOUNDRY_API_KEY, Azure sign-in for Entra, or your proxy token) and retry · if credentials are current, check access to the Foundry resource · API Error: 401 ...1675Microsoft Foundry authentication failed · refresh your Foundry credential (ANTHROPIC_FOUNDRY_AUTH_TOKEN, ANTHROPIC_FOUNDRY_API_KEY, Azure sign-in for Entra, or your proxy token) and retry · if credentials are current, check access to the Foundry resource · API Error: 401 ...


1666 1677 

1667**Was zu tun ist:**1678**Was zu tun ist:**

1668 1679 

1669* Wenn der Hinweis sagt, dass Anmeldedaten von dieser Umgebung verwaltet werden, besitzt die App, die Claude Code gestartet hat, die Anmeldedaten, und die anderen Schritte hier gelten nicht: versuchen Sie es erneut, oder kontaktieren Sie Ihren Administrator1680* Wenn der Hinweis besagt, dass die Anmeldedaten von dieser Umgebung verwaltet werden, ist die Anwendung, die Claude Code gestartet hat, für die Anmeldedaten zuständig, und die anderen Schritte hier gelten nicht: Versuchen Sie es erneut, oder wenden Sie sich an Ihren Administrator

1670* Aktualisieren Sie die Anmeldedaten, die Sie in [Azure-Anmeldedaten konfigurieren](/docs/de/microsoft-foundry#2-configure-azure-credentials) konfiguriert haben: rotieren Sie `ANTHROPIC_FOUNDRY_API_KEY`, prägen Sie ein neues `ANTHROPIC_FOUNDRY_AUTH_TOKEN`, oder führen Sie `az login` aus, damit die Standard-Microsoft Entra-Anmeldedaten-Kette sich erneut anmelden kann1681* Aktualisieren Sie die Anmeldedaten, die Sie unter [Azure-Anmeldedaten konfigurieren](/docs/de/microsoft-foundry#2-configure-azure-credentials) eingerichtet haben: Rotieren Sie `ANTHROPIC_FOUNDRY_API_KEY`, erzeugen Sie ein neues `ANTHROPIC_FOUNDRY_AUTH_TOKEN`, oder führen Sie `az login` aus, damit sich die standardmäßige Microsoft-Entra-Anmeldedatenkette erneut anmelden kann

1671* Wenn die Anmeldedaten aktuell sind, bestätigen Sie, dass die Identität Zugriff auf die Foundry-Ressource hat. Siehe [Azure RBAC-Konfiguration](/docs/de/microsoft-foundry#azure-rbac-configuration)1682* Wenn die Anmeldedaten aktuell sind, prüfen Sie, ob die Identität Zugriff auf die Foundry-Ressource hat. Siehe [Azure-RBAC-Konfiguration](/docs/de/microsoft-foundry#azure-rbac-configuration)

1672 1683 

1673Vor v2.1.273 zeigte ein 401 oder 403 von Microsoft Foundry die generische `Please run /login`- oder `Failed to authenticate`-Meldung statt, die Azure-Anmeldedaten nicht aktualisieren kann.1684Vor v2.1.273 zeigte ein 401 oder 403 von Microsoft Foundry stattdessen die allgemeine Meldung `Please run /login` oder `Failed to authenticate` an, mit der sich Azure-Anmeldedaten nicht aktualisieren lassen.

1674 1685 

1675<h3 id="could-not-load-aws-or-google-cloud-credentials">1686<h3 id="could-not-load-aws-or-google-cloud-credentials">

1676 AWS- oder Google Cloud-Anmeldedaten konnten nicht geladen werden1687 Could not load AWS or Google Cloud credentials

1677</h3>1688</h3>

1678 1689 

1679Claude Code konnte keine verwendbaren Anmeldedaten von der AWS-Anmeldedaten-Provider-Kette oder von Ihren Google-Standard-Anwendungs-Anmeldedaten auf der Maschine, auf der es läuft, erhalten, sodass keine Anfrage Ihren Cloud-Provider erreichte. Claude Code löscht seine zwischengespeicherten Anmeldedaten und versucht zweimal erneut, bevor diese Meldung angezeigt wird. Das Detail nach dem `·` benennt die spezifische Ursache, z. B. eine abgelaufene SSO-Sitzung, fehlende Standard-Anwendungs-Anmeldedaten, die als `Could not load the default credentials` gemeldet werden, oder eine widerrufene Anmeldung, die als `invalid_grant` gemeldet wird:1690Claude Code konnte auf dem Rechner, auf dem es läuft, keine verwendbaren Anmeldedaten aus der AWS-Anmeldedaten-Anbieterkette oder aus Ihren Google Application Default Credentials beziehen, sodass keine Anfrage Ihren Cloud-Anbieter erreicht hat. Claude Code leert seine zwischengespeicherten Anmeldedaten und versucht es zweimal erneut, bevor diese Meldung angezeigt wird. Das Detail nach dem `·` nennt die konkrete Ursache, etwa eine abgelaufene SSO-Sitzung, fehlende Application Default Credentials, gemeldet als `Could not load the default credentials`, oder eine widerrufene Anmeldung, gemeldet als `invalid_grant`:

1680 1691 

1681```text theme={null}1692```text theme={null}

1682API Error: Could not load AWS credentials · Could not load credentials from any providers. Check or refresh your AWS credentials and try again.1693API Error: Could not load AWS credentials · Could not load credentials from any providers. Check or refresh your AWS credentials and try again.

1683API Error: Could not load Google Cloud credentials · invalid_grant. Check or refresh your Google Cloud credentials and try again.1694API Error: Could not load Google Cloud credentials · invalid_grant. Check or refresh your Google Cloud credentials and try again.

1684```1695```

1685 1696 

1686Im [nicht-interaktiven Modus](/docs/de/headless) mit `-p` und im [Agent SDK](/docs/de/agent-sdk/overview) ist der strukturierte Fehlercode `cloud_credential_error`. Vor v2.1.267 zeigte die Meldung nur den Detail-Text nach `API Error:`, und der strukturierte Code war `server_error` oder `unknown`.1697Im [nicht interaktiven Modus](/docs/de/headless) mit `-p` und im [Agent SDK](/docs/de/agent-sdk/overview) lautet der strukturierte Fehlercode `cloud_credential_error`. Vor v2.1.267 zeigte die Meldung nur den Detailtext nach `API Error:` an, und der strukturierte Code war `server_error` oder `unknown`.

1687 1698 

1688**Was zu tun ist:**1699**Was zu tun ist:**

1689 1700 

1690* Führen Sie Ihren Provider-Anmeldungs-Befehl aus, z. B. `aws sso login --profile myprofile` oder `gcloud auth application-default login`, dann versuchen Sie es erneut. [Bedrock-, Agent Platform- oder Foundry-Anmeldedaten werden nicht geladen](/docs/de/troubleshoot-install#bedrock-agent-platform-or-foundry-credentials-not-loading) zeigt, wie Sie die Anmeldedaten außerhalb von Claude Code bestätigen1701* Führen Sie den Anmeldebefehl Ihres Anbieters aus, etwa `aws sso login --profile myprofile` oder `gcloud auth application-default login`, und versuchen Sie es dann erneut. Unter [Bedrock-, Agent-Platform- oder Foundry-Anmeldedaten werden nicht geladen](/docs/de/troubleshoot-install#bedrock-agent-platform-or-foundry-credentials-not-loading) erfahren Sie, wie Sie die Anmeldedaten außerhalb von Claude Code überprüfen

1691* Wenn das Detail `AWS default-chain credential resolve timed out` liest, ist die Kette hängen geblieben statt fehlgeschlagen, also folgen Sie stattdessen [AWS default-chain credential resolve timed out](#aws-default-chain-credential-resolve-timed-out)1702* Wenn das Detail `AWS default-chain credential resolve timed out` lautet, ist die Kette hängen geblieben und nicht fehlgeschlagen; folgen Sie stattdessen [AWS default-chain credential resolve timed out](#aws-default-chain-credential-resolve-timed-out)

1692 1703 

1693<h3 id="aws-default-chain-credential-resolve-timed-out">1704<h3 id="aws-default-chain-credential-resolve-timed-out">

1694 AWS default-chain credential resolve timed out1705 AWS default-chain credential resolve timed out

1695</h3>1706</h3>

1696 1707 

1697Die AWS-Standard-Anmeldedaten-Provider-Kette hat keine Anmeldedaten innerhalb von 60 Sekunden erzeugt, sodass Claude Code die Auflösung gestoppt und die Anfrage fehlgeschlagen hat. Dieses Timeout ist eine Ursache von [AWS- oder Google Cloud-Anmeldedaten konnten nicht geladen werden](#could-not-load-aws-or-google-cloud-credentials). Der Fehler ist lokale Anmeldedaten-Auflösung: die Anfrage erreichte nie [Amazon Bedrock](/docs/de/amazon-bedrock), [Claude Platform on AWS](/docs/de/claude-platform-on-aws) oder den [Mantle-Endpunkt](/docs/de/amazon-bedrock#use-the-mantle-endpoint). Claude Code löscht seinen [Anmeldedaten-Cache](/docs/de/amazon-bedrock#credential-caching-and-resolution-timeout) und versucht erneut, bevor dieser Fehler auftaucht, sodass die Kette zu dem Zeitpunkt, an dem Sie ihn sehen, auf wiederholten Versuchen stecken geblieben ist.1708Die standardmäßige AWS-Anmeldedaten-Anbieterkette hat innerhalb von 60 Sekunden keine Anmeldedaten geliefert, daher hat Claude Code die Auflösung abgebrochen und die Anfrage fehlschlagen lassen. Dieser Timeout ist eine Ursache für [Could not load AWS or Google Cloud credentials](#could-not-load-aws-or-google-cloud-credentials). Der Fehler liegt in der lokalen Auflösung der Anmeldedaten: Die Anfrage hat [Amazon Bedrock](/docs/de/amazon-bedrock), [Claude Platform on AWS](/docs/de/claude-platform-on-aws) oder den [Mantle-Endpunkt](/docs/de/amazon-bedrock#use-the-mantle-endpoint) nie erreicht. Claude Code leert seinen [Anmeldedaten-Cache](/docs/de/amazon-bedrock#credential-caching-and-resolution-timeout) und versucht es erneut, bevor dieser Fehler angezeigt wird; wenn Sie ihn sehen, ist die Kette also bei wiederholten Versuchen hängen geblieben.

1698 1709 

1699```text theme={null}1710```text theme={null}

1700API Error: Could not load AWS credentials · AWS default-chain credential resolve timed out. Check or refresh your AWS credentials and try again.1711API Error: Could not load AWS credentials · AWS default-chain credential resolve timed out. Check or refresh your AWS credentials and try again.

1701```1712```

1702 1713 

1703Häufige Ursachen sind ein `credential_process`-Befehl in Ihrem AWS-Profil, der auf Eingabe wartet, die er nicht erhalten kann, und ein Container oder eine VM, deren Instance-Metadaten-Service (IMDS) die Probe der Kette nie beantwortet.1714Häufige Ursachen sind ein `credential_process`-Befehl in Ihrem AWS-Profil, der auf eine Eingabe wartet, die er nicht erhalten kann, sowie ein Container oder eine VM, deren Instance Metadata Service (IMDS) nie auf die Abfrage der Kette antwortet.

1704 1715 

1705Vor v2.1.267 lautet die Meldung `API Error: AWS default-chain credential resolve timed out`.1716Vor v2.1.267 lautete die Meldung `API Error: AWS default-chain credential resolve timed out`.

1706Vor v2.1.207 ließ eine stecken gebliebene Kette die Anfrage auf unbestimmte Zeit warten statt zu fehlschlagen.1717Vor v2.1.207 ließ eine hängende Kette die Anfrage unbegrenzt warten, anstatt sie fehlschlagen zu lassen.

1707 1718 

1708**Was zu tun ist:**1719**Was zu tun ist:**

1709 1720 

1710* Führen Sie `aws sts get-caller-identity` in der gleichen Shell mit dem gleichen `AWS_PROFILE` aus. Wenn es auch hängen bleibt, beheben Sie das Profil; ein `credential_process`-Befehl, der interaktiv auffordert, ist eine häufige Ursache.1721* Führen Sie `aws sts get-caller-identity` in derselben Shell mit demselben `AWS_PROFILE` aus. Wenn der Befehl ebenfalls hängt, korrigieren Sie das Profil; ein `credential_process`-Befehl, der interaktiv nachfragt, ist eine häufige Ursache.

1711* Schließen Sie den Anmeldungs-Schritt ab, bevor Sie Claude Code starten, z. B. `aws sso login --profile myprofile`1722* Schließen Sie den Anmeldeschritt ab, bevor Sie Claude Code starten, zum Beispiel mit `aws sso login --profile myprofile`

1712* Wenn Ihre Kette eine interaktive Anmeldung ausführt, die legitim länger als 60 Sekunden benötigt, z. B. SSO mit MFA durch einen Wrapper wie `aws-vault`, erhöhen Sie das Limit in Millisekunden mit [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/de/env-vars)1723* Wenn Ihre Kette eine interaktive Anmeldung ausführt, die berechtigterweise mehr als 60 Sekunden benötigt, etwa SSO mit MFA über einen Wrapper wie `aws-vault`, erhöhen Sie das Limit in Millisekunden mit [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/de/env-vars)

1713 1724 

1714<h3 id="bedrock-setup-verification-timed-out-waiting-for-aws">1725<h3 id="bedrock-setup-verification-timed-out-waiting-for-aws">

1715 Bedrock-Einrichtungs-Überprüfung timed out beim Warten auf AWS1726 Bedrock setup verification timed out waiting for AWS

1716</h3>1727</h3>

1717 1728 

1718Ein Aufruf an AWS während des [Bedrock-Einrichtungs-Assistenten](/docs/de/amazon-bedrock#sign-in-with-bedrock)'s Anmeldedaten-Überprüfung, z. B. die Anmeldedaten-Suche oder die Identitäts-Überprüfung, hat nicht innerhalb des 60-Sekunden-Limits beendet. Der Assistent stoppt das Warten und schlägt den Überprüfungs-Schritt fehl:1729Ein Aufruf an AWS während der Überprüfung der Anmeldedaten im [Bedrock-Einrichtungsassistenten](/docs/de/amazon-bedrock#sign-in-with-bedrock), etwa die Suche nach Anmeldedaten oder die Identitätsprüfung, wurde nicht innerhalb des 60-Sekunden-Limits abgeschlossen. Der Assistent wartet nicht länger und lässt den Überprüfungsschritt fehlschlagen:

1719 1730 

1720```text theme={null}1731```text theme={null}

1721Timed out after 60s waiting for AWS. Check your network and proxy settings; if a credential helper needs longer to prompt you, raise CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS.1732Timed out after 60s waiting for AWS. Check your network and proxy settings; if a credential helper needs longer to prompt you, raise CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS.

1722```1733```

1723 1734 

1724Die Zahl spiegelt Ihr Limit wider: 60 Sekunden standardmäßig, oder der Wert, den Sie in [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/de/env-vars) setzen.1735Die Zahl entspricht Ihrem Limit: standardmäßig 60 Sekunden oder der Wert, den Sie in [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/de/env-vars) festgelegt haben.

1725 1736 

1726Häufige Ursachen sind ein Netzwerk oder Proxy, das Anfragen an AWS staut, einschließlich der SSO-Token-Aktualisierung, und ein Anmeldedaten-Helper, der immer noch auf Eingabe wartet, die Sie nicht sehen können. Erhöhen Sie das Limit nur, wenn der Helper legitim mehr Zeit benötigt.1737Häufige Ursachen sind ein Netzwerk oder Proxy, der Anfragen an AWS blockiert, einschließlich der Aktualisierung des SSO-Tokens, sowie ein Credential Helper, der noch auf eine Eingabe wartet, die Sie nicht sehen können. Erhöhen Sie das Limit nur, wenn der Helper berechtigterweise mehr Zeit benötigt.

1727 1738 

1728Ein einzelner stecken gebliebener Aufruf an AWS kann auch auf seinem eigenen Pro-Anfrage-Timeout fehlschlagen, das eine kürzere Meldung auf dem gleichen Schritt zeigt:1739Eine einzelne hängende Anfrage an AWS kann auch an ihrem eigenen Timeout pro Anfrage scheitern, was im selben Schritt eine kürzere Meldung anzeigt:

1729 1740 

1730```text theme={null}1741```text theme={null}

1731A request to AWS timed out. Check your network and proxy settings, then try again.1742A request to AWS timed out. Check your network and proxy settings, then try again.

1732```1743```

1733 1744 

1734Wenn die gleichen Timeouts auf dem Modell-Pin-Schritt auftreten, markiert der Assistent ein Modell als `unreachable` statt eine der beiden Meldungen zu zeigen.1745Wenn dieselben Timeouts beim Schritt zum Festlegen des Modells auftreten, markiert der Assistent ein Modell als `unreachable`, anstatt eine der beiden Meldungen anzuzeigen.

1735 1746 

1736**Was zu tun ist:**1747**Was zu tun ist:**

1737 1748 

1738* Führen Sie `aws sts get-caller-identity` in der gleichen Shell aus. Wenn es auch hängen bleibt, ist der Stau außerhalb von Claude Code, in Ihrem Netzwerk, Ihrem Proxy oder dem Anmeldedaten-Helper in Ihrem AWS-Profil; beheben Sie das zuerst.1749* Führen Sie `aws sts get-caller-identity` in derselben Shell aus. Wenn der Befehl ebenfalls hängt, liegt die Blockade außerhalb von Claude Code, in Ihrem Netzwerk, Ihrem Proxy oder dem Credential Helper in Ihrem AWS-Profil; beheben Sie das zuerst.

1739* Schließen Sie jede interaktive Anmeldung ab, bevor Sie den Assistenten öffnen, z. B. `aws sso login --profile myprofile`1750* Schließen Sie jede interaktive Anmeldung ab, bevor Sie den Assistenten öffnen, zum Beispiel mit `aws sso login --profile myprofile`

1740* Wenn ein Anmeldedaten-Helper in Ihrem AWS-Profil legitim länger als 60 Sekunden benötigt, um Sie aufzufordern, erhöhen Sie das Limit in Millisekunden mit [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/de/env-vars)1751* Wenn ein Credential Helper in Ihrem AWS-Profil berechtigterweise länger als 60 Sekunden benötigt, um Sie zur Eingabe aufzufordern, erhöhen Sie das Limit in Millisekunden mit [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/de/env-vars)

1741 1752 

1742<h3 id="cloud-gateway-session-expired">1753<h3 id="cloud-gateway-session-expired">

1743 Cloud-Gateway-Sitzung abgelaufen1754 Cloud gateway session expired

1744</h3>1755</h3>

1745 1756 

1746Sie haben sich durch ein [Claude apps gateway](/docs/de/claude-apps-gateway) angemeldet, und die auf dieser Maschine gespeicherte Gateway-Sitzung ist abgelaufen und konnte nicht erneuert werden, oder das Gateway akzeptiert sie nicht mehr, z. B. nachdem das Gateway's [JWT-Geheimnis rotiert wurde](/docs/de/claude-apps-gateway-deploy#jwt-secret-rotation). Wenn Sie diese Zeile sehen, wenn Sie `claude` interaktiv starten, hat die Sitzung ohne Gateway-Anmeldung geöffnet:1757Sie haben sich über ein [Claude-Apps-Gateway](/docs/de/claude-apps-gateway) angemeldet, und die auf diesem Rechner gespeicherte Gateway-Sitzung ist abgelaufen und konnte nicht erneuert werden, oder das Gateway akzeptiert sie nicht mehr, zum Beispiel nachdem das [JWT-Secret des Gateways ersetzt wurde](/docs/de/claude-apps-gateway-deploy#jwt-secret-rotation). Wenn Sie diese Zeile sehen, wenn Sie `claude` interaktiv starten, wurde die Sitzung ohne Anmeldung am Gateway geöffnet:

1747 1758 

1748```text theme={null}1759```text theme={null}

1749Cloud gateway session expired — run /login to reconnect.1760Cloud gateway session expired — run /login to reconnect.

1750```1761```

1751 1762 

1752Die gleiche Zeile kann während der Sitzung erscheinen, wenn die Gateway-Anmeldedaten ablaufen und Claude Code sie nicht erneuern kann.1763Dieselbe Zeile kann mitten in einer Sitzung erscheinen, wenn die Gateway-Anmeldedaten ablaufen und Claude Code sie nicht erneuern kann.

1753 1764 

1754In einem [nicht-interaktiven](/docs/de/headless) Lauf, einer Hintergrund- oder anderen unbeaufsichtigten Sitzung oder einem `claude`-Unterbefehl außer `claude auth` beendet Claude Code stattdessen mit dieser Meldung, wenn das Gateway die Sitzung nicht mehr akzeptiert:1765In einem [nicht interaktiven](/docs/de/headless) Lauf, einer Hintergrund- oder anderen unbeaufsichtigten Sitzung oder einem anderen `claude`-Unterbefehl als `claude auth` beendet sich Claude Code stattdessen mit dieser Meldung, wenn das Gateway die Sitzung nicht mehr akzeptiert:

1755 1766 

1756```text theme={null}1767```text theme={null}

1757Cloud gateway <url> no longer accepts this session. Start `claude` and sign in again with /login.1768Cloud gateway <url> no longer accepts this session. Start `claude` and sign in again with /login.


1759 1770 

1760**Was zu tun ist:**1771**Was zu tun ist:**

1761 1772 

1762* Führen Sie `/login` in der Sitzung aus und schließen Sie die Browser-Anmeldung ab1773* Führen Sie `/login` in der Sitzung aus und schließen Sie die Anmeldung im Browser ab

1763* Für einen nicht-interaktiven Start starten Sie `claude` in der gleichen Umgebung, führen Sie `/login` aus, dann führen Sie Ihren Befehl erneut aus1774* Bei einem nicht interaktiven Start starten Sie `claude` in derselben Umgebung, führen `/login` aus und führen dann Ihren Befehl erneut aus

1764 1775 

1765<h3 id="sign-in-timed-out-while-waiting-for-you-to-continue">1776<h3 id="sign-in-timed-out-while-waiting-for-you-to-continue">

1766 Anmeldung timed out beim Warten auf Sie, um fortzufahren1777 Sign-in timed out while waiting for you to continue

1767</h3>1778</h3>

1768 1779 

1769Während einer [Claude apps gateway](/docs/de/claude-apps-gateway)-Anmeldung benannte das Gateway das Konto, das sich angemeldet hat, und Claude Code fragte Sie, es zu bestätigen, bevor die Anmeldedaten gespeichert wurden. Sie ließen die Bestätigung offen, nachdem die Anmeldung selbst abgelaufen war, und das Gateway gab keinen Aktualisierungs-Token aus, der sie erneuern konnte, sodass Claude Code nichts speicherte, als Sie fortfuhren:1780Während einer Anmeldung über ein [Claude-Apps-Gateway](/docs/de/claude-apps-gateway) hat das Gateway das angemeldete Konto genannt, und Claude Code hat Sie gebeten, es zu bestätigen, bevor die Anmeldedaten gespeichert werden. Sie haben die Bestätigung über den Ablauf der Anmeldung hinaus offen gelassen, und das Gateway hat kein Refresh-Token ausgegeben, mit dem sie hätte erneuert werden können, daher hat Claude Code nichts gespeichert, als Sie fortgefahren sind:

1770 1781 

1771```text theme={null}1782```text theme={null}

1772Sign-in timed out while waiting for you to continue. Try again.1783Sign-in timed out while waiting for you to continue. Try again.


1777* Führen Sie `/login` erneut aus und bestätigen Sie das Konto, bevor die Anmeldung abläuft1788* Führen Sie `/login` erneut aus und bestätigen Sie das Konto, bevor die Anmeldung abläuft

1778 1789 

1779<h3 id="gateway-refused-the-request">1790<h3 id="gateway-refused-the-request">

1780 Gateway lehnte die Anfrage ab1791 Gateway refused the request

1781</h3>1792</h3>

1782 1793 

1783Sie sind über ein [Claude apps gateway](/docs/de/claude-apps-gateway) angemeldet, und eine Anfrage hat einen 403 zurückgegeben: das Gateway, oder das Upstream dahinter, lehnte sie ab. Sich erneut anzumelden ändert eine Ablehnung nicht, sodass die Meldung auf Ihren Gateway-Administrator zeigt:1794Sie sind über ein [Claude-Apps-Gateway](/docs/de/claude-apps-gateway) angemeldet, und eine Anfrage hat einen 403 zurückgegeben: Das Gateway oder der dahinterliegende Upstream hat sie abgelehnt. Eine erneute Anmeldung ändert nichts an einer Ablehnung, daher verweist die Meldung auf Ihren Gateway-Administrator:

1784 1795 

1785```text theme={null}1796```text theme={null}

1786Gateway refused the request · signing in again won't change this — check with your gateway administrator · API Error: 403 ...1797Gateway refused the request · signing in again won't change this — check with your gateway administrator · API Error: 403 ...


1788 1799 

1789**Was zu tun ist:**1800**Was zu tun ist:**

1790 1801 

1791* Bitten Sie Ihren Gateway-Administrator, die Anfrage nachzuschlagen. Der `API Error:`-Schwanz trägt die Ablehnung, die das Gateway zurückgegeben hat1802* Bitten Sie Ihren Gateway-Administrator, die Anfrage nachzuverfolgen. Der Teil nach `API Error:` enthält die Ablehnung, die das Gateway zurückgegeben hat

1792* Für Administratoren: eine [Zugriffs-Kontroll-Regel](/docs/de/claude-apps-gateway-config#http-tuning) auf dem Gateway gibt einen 403 zurück, den das [Audit-Protokoll](/docs/de/claude-apps-gateway-deploy#logs) mit seinem Grund aufzeichnet, und eine Upstream-Autorisierungs-Ablehnung wird pro [Upstream-Fehler-Meldungen](/docs/de/claude-apps-gateway-config#upstream-error-messages) weitergeleitet1803* Für Administratoren: Eine [Zugriffskontrollregel](/docs/de/claude-apps-gateway-config#http-tuning) auf dem Gateway gibt einen 403 zurück, den das [Audit-Log](/docs/de/claude-apps-gateway-deploy#logs) mit seinem Grund aufzeichnet, und eine Autorisierungsverweigerung eines Upstreams wird gemäß [Upstream-Fehlermeldungen](/docs/de/claude-apps-gateway-config#upstream-error-messages) durchgereicht

1793 1804 

1794Vor v2.1.273 zeigte ein 403 auf einer Gateway-Sitzung die generische `Please run /login`- oder `Failed to authenticate`-Meldung statt, und sich erneut anzumelden löscht die Ablehnung nicht.1805Vor v2.1.273 zeigte ein 403 bei einer Gateway-Sitzung stattdessen die allgemeine Meldung `Please run /login` oder `Failed to authenticate` an, und eine erneute Anmeldung hob die Ablehnung nicht auf.

1795 1806 

1796<h2 id="network-and-connection-errors">1807<h2 id="network-and-connection-errors">

1797 Netzwerk- und Verbindungsfehler1808 Netzwerk- und Verbindungsfehler


2852 Befehlszeilenfehler2863 Befehlszeilenfehler

2853</h2>2864</h2>

2854 2865 

2855Diese Fehler stammen aus dem `claude`-Befehl und seinen Unterbefehlen, aus einem Befehlsnamen, den Sie an der Eingabeaufforderung eingeben, und aus Befehlen wie `/security-review`, die Kontext durch Ausführung von Shell-Befehlen sammeln, bevor ihre Eingabeaufforderung ausgeführt wird. Sie stammen auch von `/tui`, das die CLI neu startet.2866Diese Fehler stammen von der Befehlszeile `claude` und ihren Unterbefehlen, von einem Befehlsnamen, den Sie im Eingabefeld absenden, sowie von Befehlen wie `/security-review`, die Kontext sammeln, indem sie Shell-Befehle ausführen, bevor ihr Prompt ausgeführt wird. Sie stammen auch von `/tui`, das die CLI neu startet.

2856 2867 

2857<h3 id="conflict-between-bg-and-print">2868<h3 id="conflict-between-bg-and-print">

2858 Konflikt zwischen `--bg` und `--print`2869 Konflikt zwischen `--bg` und `--print`

2859</h3>2870</h3>

2860 2871 

2861Diese Meldung erfordert Claude Code v2.1.198 oder später. Sie haben `--bg` mit `-p` oder `--print` in derselben `claude`-Invokation kombiniert. `--bg` startet eine [Hintergrund-Sitzung](/docs/de/agent-view#from-your-shell), die Sie später mit `claude agents` anfügen, während `--print` [nicht interaktiv](/docs/de/headless) ausgeführt wird und nie die interaktive Sitzung startet, die `claude agents` anfügt. Vor v2.1.198 hat diese Kombination stillschweigend einen Hintergrund-Job erstellt, der nie angefügt werden konnte.2872Diese Meldung erfordert Claude Code v2.1.198 oder höher. Sie haben `--bg` im selben `claude`-Aufruf mit `-p` oder `--print` kombiniert. `--bg` startet eine [Hintergrundsitzung](/docs/de/agent-view#from-your-shell), an die Sie sich später mit `claude agents` anhängen, während `--print` [nicht interaktiv](/docs/de/headless) ausgeführt wird und nie die interaktive Sitzung startet, an die sich `claude agents` anhängt. Vor v2.1.198 erstellte diese Kombination stillschweigend einen Hintergrundjob, an den man sich nie anhängen konnte.

2862 2873 

2863```text theme={null}2874```text theme={null}

2864--bg and --print conflict: --print never starts the interactive session that `claude agents` attaches to, so the job would be unattachable. The prompt is the positional — drop --print: `claude --bg '<task>'`.2875--bg and --print conflict: --print never starts the interactive session that `claude agents` attaches to, so the job would be unattachable. The prompt is the positional — drop --print: `claude --bg '<task>'`.


2866 2877 

2867**Was zu tun ist:**2878**Was zu tun ist:**

2868 2879 

2869* Lassen Sie `-p` oder `--print` weg. `--bg` nimmt die Eingabeaufforderung als sein Positionsargument, also ist `claude --bg "<task>"` der vollständige Befehl. Siehe [Neue Agenten von Ihrer Shell aus versenden](/docs/de/agent-view#from-your-shell).2880* Entfernen Sie `-p` oder `--print`. `--bg` nimmt den Prompt als Positionsargument entgegen, sodass `claude --bg "<task>"` der vollständige Befehl ist. Siehe [Neue Agenten aus Ihrer Shell starten](/docs/de/agent-view#from-your-shell).

2870* Um die Eingabeaufforderung nicht interaktiv auszuführen und das Ergebnis auszudrucken, anstatt eine Hintergrund-Sitzung zu erstellen, lassen Sie `--bg` weg und führen Sie `claude -p "<task>"` aus2881* Um den Prompt nicht interaktiv auszuführen und das Ergebnis auszugeben, anstatt eine Hintergrundsitzung zu erstellen, entfernen Sie `--bg` und führen Sie `claude -p "<task>"` aus

2882 

2883<h3 id="conflict-between-a-system-prompt-flag-and-its-file-form">

2884 Konflikt zwischen einem System-Prompt-Flag und seiner Dateiform

2885</h3>

2886 

2887Sie haben [`--append-subagent-system-prompt`](/docs/de/cli-reference#cli-flags) zusammen mit `--append-subagent-system-prompt-file` in einem `claude`-Aufruf übergeben, daher beendet sich `claude` mit Exit-Code 1, anstatt die Sitzung zu starten:

2888 

2889```text theme={null}

2890Error: Cannot use both --append-subagent-system-prompt and --append-subagent-system-prompt-file. Please use only one.

2891```

2892 

2893Vor v2.1.283 beendete sich `claude` auf dieselbe Weise, wenn Sie `--system-prompt` mit `--system-prompt-file` oder `--append-system-prompt` mit `--append-system-prompt-file` übergeben haben, da diese Paare in Konflikt standen, anstatt sich zu [kombinieren](/docs/de/cli-reference#system-prompt-flags). In diesen Versionen nennt die Meldung das Paar, das Sie kombiniert haben.

2894 

2895**Was zu tun ist:**

2896 

2897* Behalten Sie eine Form des Flags bei und entfernen Sie die andere. Um eine feste Prompt-Datei mit Text pro Ausführung zu kombinieren, fügen Sie den Text vor dem Start in die Datei ein, anstatt beide Flags zu übergeben

2871 2898 

2872<h3 id="invalid-agents-configuration">2899<h3 id="invalid-agents-configuration">

2873 Ungültige `--agents`-Konfiguration2900 Ungültige `--agents`-Konfiguration

2874</h3>2901</h3>

2875 2902 

2876Der Wert, den Sie an `--agents` übergeben haben, ist ungültig, daher beendet `claude` mit Code 1, anstatt die Sitzung zu starten. Wenn Sie `--safe-mode` übergeben oder [`CLAUDE_CODE_SAFE_MODE`](/docs/de/env-vars#variables) setzen, ignoriert Claude Code `--agents` vollständig. Mit `--resume` oder `--continue` wird ein Inline-JSON-Wert nicht überprüft und die Sitzung startet; ein Wert, der aus einer Datei gelesen wird, wird bei jedem Start überprüft. Vor v2.1.242 hat Claude Code die Sitzung trotzdem gestartet.2903Der Wert, den Sie an `--agents` übergeben haben, ist ungültig, daher beendet sich `claude` mit Exit-Code 1, anstatt die Sitzung zu starten. Wenn Sie `--safe-mode` übergeben oder [`CLAUDE_CODE_SAFE_MODE`](/docs/de/env-vars#variables) setzen, ignoriert Claude Code `--agents` vollständig. Mit `--resume` oder `--continue` wird ein Inline-JSON-Wert nicht geprüft und die Sitzung startet; ein aus einer Datei gelesener Wert wird bei jedem Start geprüft. Vor v2.1.242 startete Claude Code die Sitzung trotzdem.

2877 2904 

2878```text theme={null}2905```text theme={null}

2879Error: Invalid --agents configuration:2906Error: Invalid --agents configuration:

2880<what failed>2907<what failed>

2881```2908```

2882 2909 

2883Was nach der ersten Zeile folgt, hängt davon ab, wie der Wert fehlgeschlagen ist. Claude Code führt diese Überprüfungen der Reihe nach aus und stoppt bei der ersten, die fehlschlägt. Wenn Ihr Wert zwei Arten von Problemen hat, sehen Sie die zweite erst, nachdem Sie die erste behoben haben:2910Was auf die erste Zeile folgt, hängt davon ab, woran der Wert gescheitert ist. Claude Code führt diese Prüfungen der Reihe nach aus und stoppt bei der ersten, die fehlschlägt. Wenn Ihr Wert zwei Arten von Problemen hat, sehen Sie das zweite erst, nachdem Sie das erste behoben haben:

2884 2911 

28851. Wenn der Wert mit `{` beginnt, aber nicht als JSON analysiert wird, oder der Inhalt einer `--agents`-Datei nicht analysiert wird, druckt Claude Code eine `invalid JSON:`-Zeile mit der eigenen Meldung des JSON-Parsers29121. Wenn der Wert mit `{` beginnt, aber nicht als JSON geparst werden kann, oder der Inhalt einer `--agents`-Datei nicht geparst werden kann, gibt Claude Code eine `invalid JSON:`-Zeile mit der eigenen Meldung des JSON-Parsers aus

28862. Wenn er analysiert wird, aber eine Agent-Definition nicht dem Schema für [CLI-definierte Subagenten](/docs/de/sub-agents#choose-the-subagent-scope) entspricht, druckt Claude Code eine Zeile pro Problem29132. Wenn er geparst werden kann, aber eine Agentendefinition nicht dem Schema für [per CLI definierte Subagenten](/docs/de/sub-agents#choose-the-subagent-scope) entspricht, gibt Claude Code eine Zeile pro Problem aus

28873. Wenn ein Agent-Name mit `-` beginnt, druckt Claude Code `<name>: agent names must not start with '-'`29143. Wenn ein Agentenname mit `-` beginnt, gibt Claude Code `<name>: agent names must not start with '-'` aus

2888 2915 

2889Wenn es mehr als 20 Problemzeilen gibt, druckt Claude Code die ersten 20 und ersetzt den Rest mit `…and N more`.2916Bei mehr als 20 Problemzeilen gibt Claude Code die ersten 20 aus und ersetzt den Rest durch `…and N more`.

2890 2917 

2891Mit `--print` akzeptiert `--agents` auch [den Pfad zu einer JSON-Datei](/docs/de/sub-agents#choose-the-subagent-scope) anstelle des Inline-Objekts. Vor v2.1.281 akzeptierte `--agents` nur Inline-JSON und behandelte einen Dateipfad als ungültiges JSON. Die Dateiform hat ihre eigenen Ablehnungen, die anstelle dieser Meldung gedruckt werden, einschließlich dieser:2918Mit `--print` akzeptiert `--agents` anstelle des Inline-Objekts auch [den Pfad zu einer JSON-Datei](/docs/de/sub-agents#choose-the-subagent-scope). Vor v2.1.281 akzeptierte `--agents` nur Inline-JSON und behandelte einen Dateipfad als ungültiges JSON. Die Dateiform hat eigene Ablehnungen, die anstelle dieser Meldung ausgegeben werden, darunter diese:

2892 2919 

2893* **`Error: --agents takes a JSON object, or a file path only with --print (-p)`**: Claude Code hat den Wert als Dateipfad in einer interaktiven Sitzung gelesen. Übergeben Sie die Definitionen als Inline-JSON, oder fügen Sie `-p` hinzu, um sie aus einer Datei zu lesen.2920* **`Error: --agents takes a JSON object, or a file path only with --print (-p)`**: Claude Code hat den Wert in einer interaktiven Sitzung als Dateipfad gelesen. Übergeben Sie die Definitionen als Inline-JSON oder fügen Sie `-p` hinzu, um sie aus einer Datei zu lesen.

2894* **`Error: --agents file not found: <path>`**: Es existiert keine Datei unter diesem Pfad. Ein Wert, der nicht mit `{` beginnt und kein gültiges JSON ist, wird als Pfad gelesen, daher kann Inline-JSON, das Ihre Shell beschädigt hat, auf diese Weise fehlschlagen. Überprüfen Sie den Pfad oder die Anführungszeichen und führen Sie den Befehl erneut aus.2921* **`Error: --agents file not found: <path>`**: Unter diesem Pfad existiert keine Datei. Ein Wert, der nicht mit `{` beginnt und kein gültiges JSON ist, wird als Pfad gelesen, sodass auch Inline-JSON, das Ihre Shell verstümmelt hat, auf diese Weise fehlschlagen kann. Prüfen Sie den Pfad oder die Anführungszeichen und führen Sie den Befehl erneut aus.

2895 2922 

2896**Was zu tun ist:**2923**Was zu tun ist:**

2897 2924 

2898* Beheben Sie jedes Problem, das die Meldung auflistet, und führen Sie dann den Befehl erneut aus. Siehe [die Felder, die ein CLI-definierter Subagent benötigt](/docs/de/sub-agents#choose-the-subagent-scope).2925* Beheben Sie jedes Problem, das die Meldung auflistet, und führen Sie den Befehl dann erneut aus. Siehe [die Felder, die ein per CLI definierter Subagent akzeptiert](/docs/de/sub-agents#choose-the-subagent-scope).

2899 2926 

2900<h3 id="cloud-sessions-cannot-be-created-from-a-restricted-session">2927<h3 id="cloud-sessions-cannot-be-created-from-a-restricted-session">

2901 Cloud-Sitzungen können nicht aus einer `--restricted`-Sitzung erstellt werden2928 Cloud-Sitzungen können nicht aus einer `--restricted`-Sitzung erstellt werden

2902</h3>2929</h3>

2903 2930 

2904Wenn Sie eine Sitzung mit [`--restricted`](/docs/de/cli-reference#cli-flags) starten, weigert sich Claude Code, [Cloud-Sitzungen](/docs/de/claude-code-on-the-web#from-terminal-to-cloud) daraus zu erstellen, da die neue Sitzung außerhalb des eingeschränkten Prozesses ausgeführt würde und den eingeschränkten Modus nicht erzwingen würde. Claude Code weigert sich auf der Client-Seite, bevor der Server kontaktiert wird, daher wird keine Cloud-Sitzung erstellt:2931Wenn Sie eine Sitzung mit [`--restricted`](/docs/de/cli-reference#cli-flags) starten, verweigert Claude Code das Erstellen von [Cloud-Sitzungen](/docs/de/claude-code-on-the-web#from-terminal-to-cloud) daraus, da die neue Sitzung außerhalb des eingeschränkten Prozesses laufen und den eingeschränkten Modus nicht durchsetzen würde. Claude Code verweigert dies auf dem Client, bevor der Server kontaktiert wird, sodass keine Cloud-Sitzung erstellt wird:

2905 2932 

2906```text theme={null}2933```text theme={null}

2907Cloud sessions cannot be created from a --restricted session: they would not enforce it.2934Cloud sessions cannot be created from a --restricted session: they would not enforce it.


2910**Was zu tun ist:**2937**Was zu tun ist:**

2911 2938 

2912* Führen Sie die Aufgabe lokal in der eingeschränkten Sitzung aus2939* Führen Sie die Aufgabe lokal in der eingeschränkten Sitzung aus

2913* Wenn Sie kontrollieren, wie die Sitzung gestartet wurde, starten Sie eine neue `claude`-Sitzung ohne `--restricted` und erstellen Sie die Cloud-Sitzung von dort aus2940* Wenn Sie steuern, wie die Sitzung gestartet wurde, starten Sie eine neue `claude`-Sitzung ohne `--restricted` und erstellen Sie die Cloud-Sitzung von dort aus

2914 2941 

2915Vor v2.1.248 hatte Claude Code kein `--restricted`-Flag; frühere Versionen lehnen das Flag selbst mit einem Fehler für unbekannte Optionen ab.2942Vor v2.1.248 hatte Claude Code kein `--restricted`-Flag; frühere Versionen lehnen das Flag selbst mit einem Fehler wegen unbekannter Option ab.

2916 2943 

2917<h3 id="cloud-sessions-are-disabled-by-your-organizations-policy">2944<h3 id="cloud-sessions-are-disabled-by-your-organizations-policy">

2918 Cloud-Sitzungen sind durch die Richtlinie Ihrer Organisation deaktiviert2945 Cloud-Sitzungen sind durch die Richtlinie Ihrer Organisation deaktiviert

2919</h3>2946</h3>

2920 2947 

2921Die `allow_remote_sessions`-Richtlinie Ihrer Organisation ist deaktiviert, daher sind [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) und die Befehle, die sie verwenden, nicht verfügbar:2948Die Richtlinie `allow_remote_sessions` Ihrer Organisation ist ausgeschaltet, daher sind [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) und die Befehle, die sie verwenden, nicht verfügbar:

2922 2949 

2923```text theme={null}2950```text theme={null}

2924Cloud sessions are disabled by your organization's policy. Contact your organization admin to enable them.2951Cloud sessions are disabled by your organization's policy. Contact your organization admin to enable them.

2925```2952```

2926 2953 

2927Die Meldung wird angezeigt, wenn Sie [eine Cloud-Sitzung vom Terminal aus erstellen](/docs/de/claude-code-on-the-web#from-terminal-to-cloud) und wenn Sie einen Befehl eingeben, der Cloud-Sitzungen benötigt, wie `/teleport`, `/remote-env` oder `/web-setup`. Vor v2.1.268 gab die Eingabe eines dieser Befehle stattdessen [`Unknown command`](#unknown-command) zurück.2954Die Meldung erscheint, wenn Sie [eine Cloud-Sitzung aus dem Terminal erstellen](/docs/de/claude-code-on-the-web#from-terminal-to-cloud), und wenn Sie einen Befehl absenden, der Cloud-Sitzungen benötigt, wie `/teleport`, `/remote-env` oder `/web-setup`. Vor v2.1.268 lieferte das Absenden eines dieser Befehle stattdessen [`Unknown command`](#unknown-command).

2928 2955 

2929Dies ist eine serverseitige Organisationsrichtlinie, daher kann sie nicht aus lokalen Einstellungen, Umgebungsvariablen oder CLI-Flags überschrieben werden.2956Dies ist eine serverseitige Organisationsrichtlinie und kann daher nicht durch lokale Einstellungen, Umgebungsvariablen oder CLI-Flags überschrieben werden.

2930 2957 

2931Wenn Claude Code die Richtlinie Ihrer Organisation noch nicht geladen hat oder sie nicht abrufen kann, antworten diese Befehle stattdessen mit `Couldn't verify your organization's policy for cloud sessions. Check your network connection, then restart Claude Code and try again.`2958Wenn Claude Code die Richtlinie Ihrer Organisation noch nicht geladen hat oder sie nicht abrufen kann, antworten diese Befehle stattdessen mit `Couldn't verify your organization's policy for cloud sessions. Check your network connection, then restart Claude Code and try again.`.

2932 2959 

2933**Was zu tun ist:**2960**Was zu tun ist:**

2934 2961 

2935* Bitten Sie einen [Besitzer](/docs/de/server-managed-settings#access-control) in Ihrer Organisation, Cloud-Sitzungen in den Claude Code-Administratoreinstellungen unter [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code) zu aktivieren2962* Bitten Sie einen [Owner](/docs/de/server-managed-settings#access-control) Ihrer Organisation, Cloud-Sitzungen in den Claude Code-Admin-Einstellungen unter [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code) zu aktivieren

2936* Wenn die Meldung besagt, dass die Richtlinie nicht überprüft werden konnte, überprüfen Sie Ihre Netzwerkverbindung, starten Sie Claude Code neu und versuchen Sie es erneut2963* Wenn die Meldung besagt, dass die Richtlinie nicht überprüft werden konnte, prüfen Sie Ihre Netzwerkverbindung, starten Sie dann Claude Code neu und versuchen Sie es erneut

2937 2964 

2938<h3 id="the-json-schema-value-is-not-a-valid-json-schema">2965<h3 id="the-json-schema-value-is-not-a-valid-json-schema">

2939 Der `--json-schema`-Wert ist kein gültiges JSON-Schema2966 Der `--json-schema`-Wert ist kein gültiges JSON-Schema

2940</h3>2967</h3>

2941 2968 

2942Das Schema, das Sie an [`--json-schema`](/docs/de/cli-reference#cli-flags) in [nicht interaktivem Modus](/docs/de/headless#get-structured-output) übergeben haben, ist bei der JSON-Schema-Kompilierung fehlgeschlagen, daher beendet `claude` mit Code 1, anstatt die Eingabeaufforderung auszuführen. Vor v2.1.205 hat ein ungültiges Schema unstrukturierte Ausgabe ohne Fehler erzeugt, und jedes Schema, das das `format`-Schlüsselwort verwendet hat, wurde als ungültig behandelt.2969Das Schema, das Sie im [nicht interaktiven Modus](/docs/de/headless#get-structured-output) an [`--json-schema`](/docs/de/cli-reference#cli-flags) übergeben haben, ist bei der JSON-Schema-Kompilierung fehlgeschlagen, daher beendet sich `claude` mit Exit-Code 1, anstatt den Prompt auszuführen. Vor v2.1.205 erzeugte ein ungültiges Schema unstrukturierte Ausgabe ohne Fehler, und jedes Schema, das das Schlüsselwort `format` verwendete, wurde als ungültig behandelt.

2943 2970 

2944```text theme={null}2971```text theme={null}

2945Error: --json-schema is not a valid JSON Schema: data/type must be equal to one of the allowed values2972Error: --json-schema is not a valid JSON Schema: data/type must be equal to one of the allowed values

2946```2973```

2947 2974 

2948Der Text nach dem zweiten Doppelpunkt ist die Diagnose des Validators und benennt das Schlüsselwort oder die Position, die fehlgeschlagen ist. Schemas, die das `format`-Schlüsselwort verwenden, wie `"format": "email"`, sind gültig: Claude Code akzeptiert `format` als Anmerkung und erzwingt es nicht.2975Der Text nach dem zweiten Doppelpunkt ist die Diagnose des Validators und nennt das Schlüsselwort oder die Stelle, die fehlgeschlagen ist. Schemas, die das Schlüsselwort `format` verwenden, wie `"format": "email"`, sind gültig: Claude Code akzeptiert `format` als Annotation und erzwingt es nicht.

2949 2976 

2950Claude Code führt zwei Überprüfungen vor der Schema-Kompilierung durch: Es lehnt einen Wert ab, der nicht als JSON analysierbar ist, mit `Error: --json-schema is not valid JSON`, und gültiges JSON, das kein Objekt ist, mit `Error: --json-schema must be a JSON object`.2977Claude Code führt vor der Schemakompilierung zwei Prüfungen aus: Es lehnt einen Wert, der kein parsebares JSON ist, mit `Error: --json-schema is not valid JSON` ab, und gültiges JSON, das kein Objekt ist, mit `Error: --json-schema must be a JSON object`.

2951 2978 

2952**Was zu tun ist:**2979**Was zu tun ist:**

2953 2980 

2954* Beheben Sie den Teil des Schemas, den die Diagnose benennt, und führen Sie dann den Befehl erneut aus2981* Beheben Sie den Teil des Schemas, den die Diagnose nennt, und führen Sie den Befehl dann erneut aus

2955* Siehe [Strukturierte Ausgabe abrufen](/docs/de/headless#get-structured-output) für ein funktionierendes Schema und einen Befehl2982* Unter [Strukturierte Ausgabe erhalten](/docs/de/headless#get-structured-output) finden Sie ein funktionierendes Schema und einen Befehl

2956 2983 

2957<h3 id="settings-file-exceeds-the-2mib-limit">2984<h3 id="settings-file-exceeds-the-2mib-limit">

2958 Einstellungsdatei überschreitet das 2-MiB-Limit2985 Einstellungsdatei überschreitet das Limit von 2 MiB

2959</h3>2986</h3>

2960 2987 

2961Die Datei, die Sie an [`--settings`](/docs/de/cli-reference#cli-flags) übergeben haben, ist größer als 2 MiB, daher beendet `claude` mit Code 1 beim Start, anstatt sie zu laden. Vor v2.1.214 hat Claude Code die Datei ohne Größenprüfung gelesen, und eine mehrere Gigabyte große Datei oder eine Gerätedatei wie `/dev/zero` hat den Speicher unbegrenzt vergrößert.2988Die Datei, die Sie an [`--settings`](/docs/de/cli-reference#cli-flags) übergeben haben, ist größer als 2 MiB, daher beendet sich `claude` beim Start mit Exit-Code 1, anstatt sie zu laden. Vor v2.1.214 las Claude Code die Datei ohne Größenprüfung, und eine mehrere Gigabyte große Datei oder eine Gerätedatei wie `/dev/zero` ließ den Speicherverbrauch unbegrenzt wachsen.

2962 2989 

2963```text theme={null}2990```text theme={null}

2964Error: Settings file exceeds the 2MiB limit: /path/to/settings.json2991Error: Settings file exceeds the 2MiB limit: /path/to/settings.json

2965```2992```

2966 2993 

2967Claude Code lehnt einen `--settings`-Pfad, der keine reguläre Datei ist, auf die gleiche Weise ab: Ein Gerät, FIFO oder Socket meldet `Error: Cannot use settings file (Not a regular file (device, FIFO, or socket))` gefolgt vom Pfad, und ein Verzeichnis meldet einen `EISDIR`-Grund.2994Claude Code lehnt einen `--settings`-Pfad, der keine reguläre Datei ist, auf dieselbe Weise ab: Ein Gerät, ein FIFO oder ein Socket meldet `Error: Cannot use settings file (Not a regular file (device, FIFO, or socket))`, gefolgt vom Pfad, und ein Verzeichnis meldet einen `EISDIR`-Grund.

2968 2995 

2969**Was zu tun ist:**2996**Was zu tun ist:**

2970 2997 

2971* Zeigen Sie `--settings` auf eine reguläre JSON-Einstellungsdatei unter 2 MiB. Siehe [Einstellungen](/docs/de/settings) für das Format.2998* Verweisen Sie `--settings` auf eine reguläre JSON-Einstellungsdatei unter 2 MiB. Das Format finden Sie unter [Einstellungen](/docs/de/settings).

2972 2999 

2973<h3 id="the-current-directory-no-longer-exists">3000<h3 id="the-current-directory-no-longer-exists">

2974 Das aktuelle Verzeichnis existiert nicht mehr3001 Das aktuelle Verzeichnis existiert nicht mehr

2975</h3>3002</h3>

2976 3003 

2977Sie haben `claude` aus einem Verzeichnis gestartet, das nach dem Betreten durch Ihre Shell gelöscht oder verschoben wurde, beispielsweise ein Worktree oder ein temporäres Verzeichnis, das eine andere Shell entfernt hat. Claude Code kann sein Arbeitsverzeichnis nicht lesen, daher beendet es mit Code 1 vor dem Start der Sitzung, sowohl im interaktiven als auch im [nicht interaktiven](/docs/de/headless) Modus. Vor v2.1.239 ist Claude Code mit minifiziertem Bundle-Quellcode und einem rohen `ENOENT ... uv_cwd`-Stack auf stderr abgestürzt, anstatt diese Meldung anzuzeigen.3004Sie haben `claude` aus einem Verzeichnis gestartet, das gelöscht oder verschoben wurde, nachdem Ihre Shell es betreten hatte, zum Beispiel ein Worktree oder ein temporäres Verzeichnis, das eine andere Shell entfernt hat. Claude Code kann sein Arbeitsverzeichnis nicht lesen und beendet sich daher mit Exit-Code 1, bevor die Sitzung startet, sowohl im interaktiven als auch im [nicht interaktiven](/docs/de/headless) Modus. Vor v2.1.239 stürzte Claude Code stattdessen mit minifiziertem Bundle-Quellcode und einem rohen `ENOENT ... uv_cwd`-Stack auf stderr ab.

2978 3005 

2979```text theme={null}3006```text theme={null}

2980The current directory no longer exists (it was deleted or moved). Start Claude Code from an existing directory.3007The current directory no longer exists (it was deleted or moved). Start Claude Code from an existing directory.

2981error: The current working directory was deleted, so that command didn't work. Please cd into a different directory and try again.3008error: The current working directory was deleted, so that command didn't work. Please cd into a different directory and try again.

2982```3009```

2983 3010 

2984Die Ursache und die Lösung sind für beide Formen gleich.3011Ursache und Lösung sind für beide Formen gleich.

2985 3012 

2986Wenn Claude Code das Arbeitsverzeichnis aus einem anderen Grund nicht lesen kann, z. B. aufgrund einer Berechtigungsänderung, benennt die Meldung stattdessen den Fehlercode: `Can't read the current directory (EACCES). Start Claude Code from a different directory.`3013Wenn Claude Code das Arbeitsverzeichnis aus einem anderen Grund nicht lesen kann, etwa wegen einer geänderten Berechtigung, nennt die Meldung stattdessen den Fehlercode: `Can't read the current directory (EACCES). Start Claude Code from a different directory.`

2987 3014 

2988Auf macOS bedeutet `EPERM` für ein Verzeichnis in `~/Desktop`, `~/Documents`, `~/Downloads` oder iCloud Drive normalerweise, dass macOS Ihre Terminal-App von diesem Ordner blockiert. Andere Befehle, die diesen Ordner lesen, schlagen auf die gleiche Weise fehl: `ls` dort meldet `Operation not permitted`, auch mit `sudo`.3015Unter macOS bedeutet `EPERM` für ein Verzeichnis in `~/Desktop`, `~/Documents`, `~/Downloads` oder iCloud Drive in der Regel, dass macOS Ihrer Terminal-App den Zugriff auf diesen Ordner verweigert. Andere Befehle, die diesen Ordner lesen, schlagen auf dieselbe Weise fehl: `ls` meldet dort `Operation not permitted`, selbst mit `sudo`.

2989 3016 

2990**Was zu tun ist:**3017**Was zu tun ist:**

2991 3018 

2992* Wechseln Sie zu einem Verzeichnis, das existiert, z. B. Ihr Home- oder Projektverzeichnis, und führen Sie dann `claude` erneut aus3019* Wechseln Sie in ein existierendes Verzeichnis, etwa Ihr Home-Verzeichnis oder Ihr Projektverzeichnis, und führen Sie dann `claude` erneut aus

2993* Wenn das Verzeichnis unter demselben Pfad neu erstellt wurde, hält Ihre Shell immer noch das gelöschte. Führen Sie `cd "$PWD"` aus oder verlassen Sie das Verzeichnis und betreten Sie es erneut, dann führen Sie `claude` erneut aus3020* Wenn das Verzeichnis unter demselben Pfad neu erstellt wurde, hält Ihre Shell noch das gelöschte fest. Führen Sie `cd "$PWD"` aus oder verlassen Sie das Verzeichnis und betreten Sie es erneut, und führen Sie dann `claude` erneut aus

2994* Für `EPERM` auf macOS beenden Sie Ihre Terminal-App mit Cmd+Q, öffnen Sie sie erneut, kehren Sie zu diesem Ordner zurück und führen Sie `claude` aus. Wenn `ls` in diesem Ordner immer noch fehlschlägt, öffnen Sie **Systemeinstellungen > Datenschutz & Sicherheit > Dateien und Ordner**, aktivieren Sie den Ordner für Ihre Terminal-App und öffnen Sie das Terminal erneut3021* Bei `EPERM` unter macOS beenden Sie Ihre Terminal-App mit Cmd+Q, öffnen Sie sie erneut, kehren Sie zu diesem Ordner zurück und führen Sie `claude` aus. Wenn `ls` in diesem Ordner weiterhin fehlschlägt, öffnen Sie **Systemeinstellungen > Datenschutz & Sicherheit > Dateien und Ordner**, aktivieren Sie den Ordner für Ihre Terminal-App und öffnen Sie das Terminal dann erneut

2995 3022 

2996<h3 id="temp-directory-refused-or-cannot-be-created">3023<h3 id="temp-directory-refused-or-cannot-be-created">

2997 Temp-Verzeichnis verweigert oder kann nicht erstellt werden3024 Temporäres Verzeichnis abgelehnt oder kann nicht erstellt werden

2998</h3>3025</h3>

2999 3026 

3000Auf macOS und Linux erstellt Claude Code beim Start ein privates Temp-Verzeichnis, `claude-<uid>` unter dem System-Temp-Verzeichnis oder der [`CLAUDE_CODE_TMPDIR`](/docs/de/env-vars)-Überschreibung. Wenn das Verzeichnis nicht erstellt werden kann oder ein Eintrag, der bereits unter diesem Pfad existiert, die Sicherheitsprüfungen nicht besteht, druckt Claude Code den Fehler auf stderr und beendet sich mit Code 1, anstatt die Sitzung zu starten:3027Unter macOS und Linux erstellt Claude Code beim Start ein privates temporäres Verzeichnis, `claude-<uid>`, unterhalb des temporären Systemverzeichnisses oder der Überschreibung durch [`CLAUDE_CODE_TMPDIR`](/docs/de/env-vars). Wenn das Verzeichnis nicht erstellt werden kann oder ein bereits unter diesem Pfad vorhandener Eintrag die Sicherheitsprüfungen nicht besteht, gibt Claude Code den Fehler auf stderr aus und beendet sich mit Exit-Code 1, anstatt die Sitzung zu starten:

3001 3028 

3002```text wrap theme={null}3029```text wrap theme={null}

3003ENOSPC: no space left on device, mkdir '/tmp/claude-501'3030ENOSPC: no space left on device, mkdir '/tmp/claude-501'


3011 3038 

3012**Was zu tun ist:**3039**Was zu tun ist:**

3013 3040 

3014* Für `ENOSPC` geben Sie Speicherplatz auf dem Volume frei, das das Temp-Verzeichnis enthält3041* Bei `ENOSPC` geben Sie Speicherplatz auf dem Volume frei, das das temporäre Verzeichnis enthält

3015* Für die `Refusing to use it`-Formen entfernen Sie den benannten Eintrag selbst, nicht das, auf das ein Link zeigt, und starten Sie Claude Code erneut; für die `owned by uid`-Form kann nur ein Administrator oder dieser Benutzer ihn entfernen3042* Bei den Formen mit `Refusing to use it` entfernen Sie den genannten Eintrag selbst, nicht das Ziel eines Links, und starten Sie Claude Code erneut; bei der Form `owned by uid` kann nur ein Administrator oder der betreffende Benutzer ihn entfernen

3016* Für `is not readable` führen Sie `chmod 0700` auf dem benannten Verzeichnis aus oder entfernen Sie es und starten Sie erneut3043* Bei `is not readable` führen Sie `chmod 0700` für das genannte Verzeichnis aus oder entfernen Sie es und starten Sie erneut

3017* Setzen Sie in jedem dieser Fälle [`CLAUDE_CODE_TMPDIR`](/docs/de/env-vars) auf ein Verzeichnis, das Sie kontrollieren, und starten Sie Claude Code erneut, wobei Sie den abgelehnten Pfad allein lassen3044* In all diesen Fällen können Sie [`CLAUDE_CODE_TMPDIR`](/docs/de/env-vars) auf ein Verzeichnis setzen, das Sie kontrollieren, und Claude Code erneut starten, ohne den abgelehnten Pfad anzutasten

3018 3045 

3019<h3 id="directory-couldnt-be-resolved-to-a-real-location">3046<h3 id="directory-couldnt-be-resolved-to-a-real-location">

3020 Verzeichnis konnte nicht zu einem echten Ort aufgelöst werden3047 Verzeichnis konnte nicht in einen realen Speicherort aufgelöst werden

3021</h3>3048</h3>

3022 3049 

3023Sie haben `/add-dir` für ein Unterverzeichnis Ihres Arbeitsverzeichnisses ausgeführt, und Claude Code konnte das Verzeichnis nicht zu seinem echten Ort auflösen.3050Sie haben `/add-dir` für ein Unterverzeichnis Ihres Arbeitsverzeichnisses ausgeführt, und Claude Code konnte das Verzeichnis nicht in seinen realen Speicherort auflösen.

3024 3051 

3025Sie haben bereits Dateizugriff auf ein Unterverzeichnis des Arbeitsverzeichnisses, daher lädt `/add-dir` nur seine Skills, Befehle und Agenten. Bevor sie geladen werden, überprüft Claude Code, dass der echte Ort des Verzeichnisses, mit aufgelösten Symlinks, sich im Arbeitsverzeichnis befindet. Wenn Claude Code diesen Ort nicht auflösen kann, lädt es nichts und zeigt diese Meldung:3052Auf ein Unterverzeichnis des Arbeitsverzeichnisses haben Sie bereits Dateizugriff, daher lädt `/add-dir` nur dessen Skills, Befehle und Agenten. Bevor Claude Code sie lädt, prüft es, ob der reale Speicherort des Verzeichnisses, mit aufgelösten Symlinks, innerhalb des Arbeitsverzeichnisses liegt. Wenn Claude Code diesen Speicherort nicht auflösen kann, lädt es nichts und zeigt diese Meldung an:

3026 3053 

3027```text theme={null}3054```text theme={null}

3028packages/app couldn't be resolved to a real location, so its skills, commands, and agents weren't loaded. Check that it is a directory inside the working directory and try again.3055packages/app couldn't be resolved to a real location, so its skills, commands, and agents weren't loaded. Check that it is a directory inside the working directory and try again.


3030 3057 

3031**Was zu tun ist:**3058**Was zu tun ist:**

3032 3059 

3033* Überprüfen Sie, dass der Pfad ein echtes Verzeichnis im Arbeitsverzeichnis benennt, und führen Sie dann `/add-dir` erneut aus3060* Prüfen Sie, ob der Pfad ein reales Verzeichnis innerhalb des Arbeitsverzeichnisses bezeichnet, und führen Sie `/add-dir` dann erneut aus

3034* Die Meldung ändert Ihren Dateizugriff nicht; sie meldet nur, dass der `.claude/`-Inhalt des Verzeichnisses nicht geladen wurde3061* Die Meldung ändert Ihren Dateizugriff nicht; sie meldet nur, dass der `.claude/`-Inhalt des Verzeichnisses nicht geladen wurde

3035 3062 

3036Vor v2.1.261 erschien diese Meldung auch für jeden `/add-dir <subdirectory>`, wenn das Arbeitsverzeichnis auf einem `/net/<host>`-Automount war, wo Claude Code sich weigert, Pfade nach Design aufzulösen; das Verzeichnis war in Ordnung und ein erneuter Versuch konnte nicht helfen.3063Vor v2.1.261 erschien diese Meldung auch bei jedem `/add-dir <subdirectory>`, wenn sich das Arbeitsverzeichnis auf einem `/net/<host>`-Automount befand, wo Claude Code das Auflösen von Pfaden absichtlich ablehnt; das Verzeichnis war in Ordnung, und ein erneuter Versuch konnte nicht helfen.

3037 3064 

3038<h3 id="workspace-not-trusted-when-starting-remote-control">3065<h3 id="workspace-not-trusted-when-starting-remote-control">

3039 Arbeitsbereich nicht vertraut beim Starten der Remote-Steuerung3066 Workspace nicht vertrauenswürdig beim Start von Remote Control

3040</h3>3067</h3>

3041 3068 

3042Sie haben den [Remote-Steuerungs](/docs/de/remote-control)-Servermodus mit `claude remote-control` oder seinem `claude rc`-Alias in einem Verzeichnis gestartet, das Sie nicht vertraut haben, und der Befehl konnte Sie nicht fragen, ob Sie ihm vertrauen. Zum Beispiel ist die Standardeingabe oder Standardausgabe des Befehls kein Terminal, weil eine von ihnen umgeleitet oder gepipet wird. Der Befehl beendet sich mit Code 1:3069Sie haben den Servermodus von [Remote Control](/docs/de/remote-control) mit `claude remote-control` oder dessen Alias `claude rc` in einem Verzeichnis gestartet, dem Sie nicht vertraut haben, und der Befehl konnte Sie nicht fragen, ob Sie ihm vertrauen möchten. Zum Beispiel ist die Standardeingabe oder Standardausgabe des Befehls kein Terminal, weil eine davon umgeleitet oder per Pipe weitergeleitet wird. Der Befehl beendet sich mit Exit-Code 1:

3043 3070 

3044```text theme={null}3071```text theme={null}

3045Error: Workspace not trusted. Please run `claude` in /Users/you/project first to review and accept the workspace trust dialog.3072Error: Workspace not trusted. Please run `claude` in /Users/you/project first to review and accept the workspace trust dialog.

3046```3073```

3047 3074 

3048Zwei Varianten, die auch mit `Error: Workspace not trusted.` beginnen, werden auch in einem Terminal angezeigt, das zu klein ist, um anzuzeigen, was das Vertrauen in das Verzeichnis aktiviert, oder eines, das seine Größe nicht gemeldet hat. Vergrößern Sie das Fenster oder wechseln Sie zu einem normalen Terminal-Fenster, dann führen Sie `claude rc` erneut aus.3075Zwei Varianten, die ebenfalls mit `Error: Workspace not trusted.` beginnen, erscheinen in einem Terminal, das zu klein ist, um anzuzeigen, was das Vertrauen in das Verzeichnis aktiviert, oder in einem, das seine Größe nicht gemeldet hat. Vergrößern Sie das Fenster oder wechseln Sie zu einem normalen Terminalfenster und führen Sie dann `claude rc` erneut aus.

3049 3076 

3050In Ihrem Home-Verzeichnis ist die Meldung anders, da der Dialog zur Arbeitsbereichsvertrauenswürdigkeit nie Vertrauen für das Home-Verzeichnis speichert, daher kann das Akzeptieren dort diese Überprüfung nicht erfüllen. Vor v2.1.214 zeigte das Home-Verzeichnis die obige Meldung, deren Rat dort nicht erfolgreich sein kann.3077In Ihrem Home-Verzeichnis ist die Meldung eine andere, da der Vertrauensdialog für den Workspace das Vertrauen für das Home-Verzeichnis nie speichert, sodass das Akzeptieren dort diese Prüfung nicht erfüllen kann. Vor v2.1.214 zeigte das Home-Verzeichnis die obige Meldung, deren Rat dort nicht zum Erfolg führen kann.

3051 3078 

3052```text theme={null}3079```text theme={null}

3053Error: Workspace not trusted. /Users/you is your home directory, and for security home-directory trust is never saved, so running `claude` here first won't help. Run `claude rc` from a project directory instead (run `claude` there once to accept the trust dialog).3080Error: Workspace not trusted. /Users/you is your home directory, and for security home-directory trust is never saved, so running `claude` here first won't help. Run `claude rc` from a project directory instead (run `claude` there once to accept the trust dialog).

3054```3081```

3055 3082 

3056Wenn Sie `n` antworten oder die Eingabetaste bei der [`Trust <directory>?`-Frage](/docs/de/remote-control#requirements) drücken, druckt der Befehl eine `Remote Control did not start`-Meldung, die das Verzeichnis benennt, und beendet sich mit Code 1. Führen Sie `claude rc` erneut aus, um `y` zu antworten.3083Wenn Sie bei der [Frage `Trust <directory>?`](/docs/de/remote-control#requirements) mit `n` antworten oder Enter drücken, gibt der Befehl eine `Remote Control did not start`-Meldung aus, die das Verzeichnis nennt, und beendet sich mit Exit-Code 1. Führen Sie `claude rc` erneut aus, um mit `y` zu antworten.

3057 3084 

3058**Was zu tun ist:**3085**Was zu tun ist:**

3059 3086 

3060* Vertrauen Sie dem Verzeichnis zuerst von einem Terminal aus: Führen Sie `claude rc` dort aus und antworten Sie `y`, oder führen Sie `claude` dort aus und akzeptieren Sie den [Dialog zur Arbeitsbereichsvertrauenswürdigkeit](/docs/de/permissions#project-allow-rules-and-workspace-trust), dann führen Sie Ihren ursprünglichen Befehl erneut aus3087* Vertrauen Sie dem Verzeichnis zuerst in einem Terminal: Führen Sie dort `claude rc` aus und antworten Sie mit `y`, oder führen Sie dort `claude` aus und akzeptieren Sie den [Vertrauensdialog für den Workspace](/docs/de/permissions#project-allow-rules-and-workspace-trust), und führen Sie dann Ihren ursprünglichen Befehl erneut aus

3061* Wechseln Sie in Ihrem Home-Verzeichnis zu einem Projektverzeichnis und starten Sie die Remote-Steuerung dort3088* Wechseln Sie in Ihrem Home-Verzeichnis in ein Projektverzeichnis und starten Sie Remote Control dort

3062 3089 

3063Vor v2.1.284 fragte der Befehl nie, auch nicht in einem Terminal.3090Vor v2.1.284 fragte der Befehl nie nach, selbst in einem Terminal.

3064 3091 

3065<h3 id="not-carried-over-to-the-sessions-remote-control-starts">3092<h3 id="not-carried-over-to-the-sessions-remote-control-starts">

3066 Nicht übertragen auf die Sitzungen, die Remote-Steuerung startet3093 Wird nicht an die von Remote Control gestarteten Sitzungen weitergegeben

3067</h3>3094</h3>

3068 3095 

3069Sie haben [Remote-Steuerung](/docs/de/remote-control) mit einem globalen `claude`-Flag vor dem `remote-control`-Verb gestartet, eines, das die Sitzungen einschränken oder konfigurieren würde, die Remote-Steuerung startet, wie `--settings`, `--setting-sources`, `--permission-mode`, `--disallowed-tools` oder `--mcp-config`. Ein Flag, das vor dem Verb platziert ist, erreicht diese Sitzungen nie. Claude Code weigert sich zu starten, anstatt es zu starten, und benennt das Flag:3096Sie haben [Remote Control](/docs/de/remote-control) mit einem globalen `claude`-Flag vor dem Verb `remote-control` gestartet, das die von Remote Control gestarteten Sitzungen einschränken oder konfigurieren würde, etwa `--settings`, `--setting-sources`, `--permission-mode`, `--disallowed-tools` oder `--mcp-config`. Ein vor dem Verb platziertes Flag erreicht diese Sitzungen nie. Claude Code verweigert stattdessen den Start und nennt das Flag:

3070 3097 

3071```text theme={null}3098```text theme={null}

3072Error: `--settings` before `remote-control` is not carried over to the sessions Remote Control starts, so Remote Control refuses to start rather than drop it — remove it, and give Remote Control's own options after the verb (see `claude remote-control --help`).3099Error: `--settings` before `remote-control` is not carried over to the sessions Remote Control starts, so Remote Control refuses to start rather than drop it — remove it, and give Remote Control's own options after the verb (see `claude remote-control --help`).

3073```3100```

3074 3101 

3075Claude Code weigert sich nicht bei globalen Flags, die harmlos zu löschen sind, wie `--verbose`, `--model` oder ein von einem Wrapper injiziertes `--session-id` oder `--plugin-dir`: Es ignoriert sie und Remote-Steuerung startet.3102Claude Code lehnt globale Flags nicht ab, deren Wegfall unbedenklich ist, etwa `--verbose`, `--model` oder ein von einem Wrapper eingefügtes `--session-id` oder `--plugin-dir`: Es ignoriert sie, und Remote Control startet.

3076 3103 

3077Claude Code weigert sich auch zu starten für ein globales Flag, das es noch nicht als harmlos erkennt, daher kann ein Flag, das in einer neueren Version hinzugefügt wurde, in dieser Meldung erscheinen, bis eine spätere Version es als harmlos markiert.3104Claude Code verweigert den Start auch bei einem globalen Flag, das es noch nicht als unbedenklich erkennt, sodass ein in einem neueren Release hinzugefügtes Flag in dieser Meldung erscheinen kann, bis ein späteres Release es als unbedenklich kennzeichnet.

3078 3105 

3079**Was zu tun ist:**3106**Was zu tun ist:**

3080 3107 

3081* Entfernen Sie das Flag vor dem Verb und übergeben Sie [Remote-Steuerungs eigene Optionen](/docs/de/remote-control#start-a-remote-control-session) danach; `claude remote-control --help` listet sie auf3108* Entfernen Sie das Flag vor dem Verb und übergeben Sie [die eigenen Optionen von Remote Control](/docs/de/remote-control#start-a-remote-control-session) danach; `claude remote-control --help` listet sie auf

3082* Wenn das abgelehnte Flag `--permission-mode` ist, führen Sie `claude remote-control --permission-mode <mode>` aus, um den Berechtigungsmodus für die Sitzungen festzulegen, die Remote-Steuerung startet3109* Wenn das abgelehnte Flag `--permission-mode` ist, führen Sie `claude remote-control --permission-mode <mode>` aus, um den Berechtigungsmodus für die von Remote Control gestarteten Sitzungen festzulegen

3083 3110 

3084Vor v2.1.248 akzeptierte `claude remote-control` seine eigenen Flags nicht, wenn ein globales Flag zuerst kam, und der Befehl schlug mit einem Fehler für unbekannte Optionen fehl.3111Vor v2.1.248 akzeptierte `claude remote-control` keine eigenen Flags, wenn ein globales Flag voranstand, und der Befehl schlug mit einem `unknown option`-Fehler fehl.

3085 3112 

3086<h3 id="claude-import-is-not-yet-available-in-this-build">3113<h3 id="claude-import-is-not-yet-available-in-this-build">

3087 claude import ist in diesem Build noch nicht verfügbar3114 claude import ist in diesem Build noch nicht verfügbar

3088</h3>3115</h3>

3089 3116 

3090Sie haben [`claude import`](/docs/de/cli-reference#cli-commands) ausgeführt, und Claude Code hat den Import-Flow ausgeschaltet gefunden, daher beendet der Befehl mit Code 1, anstatt den Import zu starten. Vor v2.1.222 hat ein Build mit ausgeschaltetem Import-Flow `import` als Eingabeaufforderung behandelt und eine interaktive Sitzung gestartet, anstatt diese Meldung zu drucken.3117Sie haben [`claude import`](/docs/de/cli-reference#cli-commands) ausgeführt, und Claude Code hat festgestellt, dass der Importablauf ausgeschaltet ist, daher beendet sich der Befehl mit Exit-Code 1, anstatt den Import zu starten. Vor v2.1.222 behandelte ein Build mit ausgeschaltetem Importablauf `import` als Prompt und startete eine interaktive Sitzung, anstatt diese Meldung auszugeben.

3091 3118 

3092```text theme={null}3119```text theme={null}

3093`claude import` is not yet available in this build. Run `claude` and use /mcp or edit ~/.claude/settings.json directly.3120`claude import` is not yet available in this build. Run `claude` and use /mcp or edit ~/.claude/settings.json directly.

3094```3121```

3095 3122 

3096Claude Code schaltet `claude import` durch ein Feature-Flag ein, das es von Anthropic abruft und auf der Festplatte zwischenspeichert. Diese Meldung bedeutet, dass der zwischengespeicherte Wert ausgeschaltet ist. Die Ursache ist normalerweise eine der folgenden:3123Claude Code schaltet `claude import` über ein Feature-Flag ein, das es von Anthropic abruft und auf der Festplatte zwischenspeichert. Diese Meldung bedeutet, dass der zwischengespeicherte Wert ausgeschaltet ist. Die Ursache ist in der Regel eine der folgenden:

3097 3124 

3098* Sie haben seit der Installation keine Sitzung gestartet, daher hat Claude Code das Flag noch nicht abgerufen. Der erste `claude import` kann dies drucken, auch wenn die Funktion für Sie verfügbar ist.3125* Sie haben seit der Installation keine Sitzung gestartet, daher hat Claude Code das Flag noch nicht abgerufen. Das erste `claude import` kann dies ausgeben, selbst wenn die Funktion für Sie verfügbar ist.

3099* Sie verwenden Claude Code über Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder Claude Platform auf AWS, oder über ein [Claude-Apps-Gateway](/docs/de/claude-apps-gateway#availability-and-limitations). Claude Code ruft Feature-Flags in diesen Sitzungen nicht ab, daher bleibt `claude import` nicht verfügbar.3126* Sie verwenden Claude Code über Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder Claude Platform on AWS oder über ein [Claude apps gateway](/docs/de/claude-apps-gateway#availability-and-limitations). Claude Code ruft in diesen Sitzungen keine Feature-Flags ab, daher bleibt `claude import` nicht verfügbar.

3100* Sie haben `DISABLE_TELEMETRY`, `DO_NOT_TRACK`, `DISABLE_GROWTHBOOK` oder [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](/docs/de/env-vars) gesetzt, was das Abrufen von Feature-Flags deaktiviert, daher bleibt `claude import` nicht verfügbar.3127* Sie haben `DISABLE_TELEMETRY`, `DO_NOT_TRACK`, `DISABLE_GROWTHBOOK` oder [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](/docs/de/env-vars) gesetzt, die das Abrufen von Feature-Flags ausschalten, daher bleibt `claude import` nicht verfügbar.

3101 3128 

3102**Was zu tun ist:**3129**Was zu tun ist:**

3103 3130 

3104* Starten Sie bei einer Neuinstallation `claude`, warten Sie, bis die Sitzung geladen ist, beenden Sie sie, und führen Sie `claude import` erneut aus3131* Starten Sie bei einer Neuinstallation `claude`, warten Sie, bis die Sitzung geladen ist, beenden Sie sie und führen Sie `claude import` erneut aus

3105* Wo das Abrufen von Feature-Flags ausgeschaltet bleibt, richten Sie die Konfiguration selbst ein: Fügen Sie MCP-Server mit [`claude mcp add`](/docs/de/mcp#installing-mcp-servers) hinzu, und erstellen Sie die [`CLAUDE.md`-Dateien](/docs/de/memory#how-claude-md-files-load), [Skills und Befehle](/docs/de/skills#where-skills-live) und [Subagenten](/docs/de/sub-agents#choose-the-subagent-scope), die Sie übertragen möchten. Die Meldung benennt auch `~/.claude/settings.json`. Von der Konfiguration, die `claude import` überträgt, enthält diese Datei nur den [Berechtigungsmodus](/docs/de/settings-reference#permission-settings); Claude Code liest MCP-Server nicht daraus.3132* Wo das Abrufen von Feature-Flags ausgeschaltet bleibt, richten Sie die Konfiguration selbst ein: Fügen Sie MCP-Server mit [`claude mcp add`](/docs/de/mcp#installing-mcp-servers) hinzu und erstellen Sie die [`CLAUDE.md`-Dateien](/docs/de/memory#how-claude-md-files-load), [Skills und Befehle](/docs/de/skills#where-skills-live) sowie [Subagenten](/docs/de/sub-agents#choose-the-subagent-scope), die Sie übernehmen möchten. Die Meldung nennt auch `~/.claude/settings.json`. Von der Konfiguration, die `claude import` übernimmt, enthält diese Datei nur den [Berechtigungsmodus](/docs/de/settings-reference#permission-settings); Claude Code liest keine MCP-Server daraus.

3106 3133 

3107<h3 id="could-not-read-claude-code-config">3134<h3 id="could-not-read-claude-code-config">

3108 Claude Code-Konfiguration konnte nicht gelesen werden3135 Claude Code-Konfiguration konnte nicht gelesen werden

3109</h3>3136</h3>

3110 3137 

3111Sie haben [`claude import`](/docs/de/cli-reference#cli-commands) ausgeführt, während Claude Code `~/.claude.json` nicht analysieren konnte, die Datei, in der es Ihren Login und den projektspezifischen Status speichert. Der Unterbefehl liest diese Datei, um die Verfügbarkeit zu überprüfen, zeigt aber nicht den Wiederherstellungsdialog an, den die interaktive Sitzung zeigt, daher beendet er mit Code 1. Vor v2.1.222 hat `claude import` mit einer nicht lesbaren Konfigurationsdatei eine interaktive Sitzung gestartet, deren Wiederherstellungsdialog die Datei behandelt hat.3138Sie haben [`claude import`](/docs/de/cli-reference#cli-commands) ausgeführt, während Claude Code `~/.claude.json` nicht parsen konnte, die Datei, in der es Ihre Anmeldung und den Zustand pro Projekt speichert. Der Unterbefehl liest diese Datei, um die Verfügbarkeit zu prüfen, zeigt aber nicht den Wiederherstellungsdialog an, den die interaktive Sitzung anzeigt, daher beendet er sich mit Exit-Code 1. Vor v2.1.222 startete `claude import` bei einer nicht lesbaren Konfigurationsdatei eine interaktive Sitzung, deren Wiederherstellungsdialog die Datei behandelte.

3112 3139 

3113```text theme={null}3140```text theme={null}

3114Could not read Claude Code config — run `claude` with no arguments to recover it.3141Could not read Claude Code config — run `claude` with no arguments to recover it.


3117**Was zu tun ist:**3144**Was zu tun ist:**

3118 3145 

3119* Führen Sie `claude` ohne Argumente aus. Claude Code erkennt die ungültige Datei und bietet an, sie zurückzusetzen. Führen Sie dann `claude import` erneut aus.3146* Führen Sie `claude` ohne Argumente aus. Claude Code erkennt die ungültige Datei und bietet an, sie zurückzusetzen. Führen Sie dann `claude import` erneut aus.

3120* Um manuelle Änderungen zu behalten, die Sie vorgenommen haben, beheben Sie die JSON-Syntax in `~/.claude.json` in einem Editor und führen Sie dann `claude import` erneut aus3147* Um manuelle Änderungen beizubehalten, die Sie vorgenommen haben, beheben Sie stattdessen die JSON-Syntax in `~/.claude.json` in einem Editor und führen Sie `claude import` dann erneut aus

3121 3148 

3122<h3 id="could-not-import-a-server-from-claude-desktop">3149<h3 id="could-not-import-a-server-from-claude-desktop">

3123 Server konnte nicht aus Claude Desktop importiert werden3150 Ein Server aus Claude Desktop konnte nicht importiert werden

3124</h3>3151</h3>

3125 3152 

3126Claude Code konnte einen der Server, die Sie in `claude mcp add-from-claude-desktop` ausgewählt haben, nicht hinzufügen. Der Befehl importiert immer noch die anderen ausgewählten Server und druckt eine Zeile pro Server, den er nicht hinzufügen konnte. Vor v2.1.205 hat der erste Server, der fehlgeschlagen ist, den Import gestoppt.3153Claude Code konnte einen der Server, die Sie in `claude mcp add-from-claude-desktop` ausgewählt haben, nicht hinzufügen. Der Befehl importiert die anderen ausgewählten Server trotzdem und gibt eine Zeile pro Server aus, den er nicht hinzufügen konnte. Vor v2.1.205 stoppte der erste fehlgeschlagene Server den Import.

3127 3154 

3128```text theme={null}3155```text theme={null}

3129Could not import my server: Invalid name my server. Names can only contain letters, numbers, hyphens, and underscores.3156Could not import my server: Invalid name my server. Names can only contain letters, numbers, hyphens, and underscores.

3130```3157```

3131 3158 

3132Der Text nach dem Servernamen ist der Grund. Der häufigste ist die Namensüberprüfung: Claude Desktop erlaubt Zeichen in Servernamen, wie Leerzeichen und Punkte, die `claude mcp` auf Buchstaben, Zahlen, Bindestriche und Unterstriche beschränkt. Andere Gründe sind eine Serverkonfiguration, die die Validierung nicht besteht, und ein Server, der durch die [MCP-Richtlinie](/docs/de/managed-mcp) Ihrer Organisation blockiert wird.3159Der Text nach dem Servernamen ist der Grund. Der häufigste ist die Namensprüfung: Claude Desktop erlaubt in Servernamen Zeichen wie Leerzeichen und Punkte, die `claude mcp` auf Buchstaben, Ziffern, Bindestriche und Unterstriche beschränkt. Weitere Gründe sind eine Serverkonfiguration, die die Validierung nicht besteht, und ein Server, der durch die [MCP-Richtlinie](/docs/de/managed-mcp) Ihrer Organisation blockiert wird.

3133 3160 

3134**Was zu tun ist:**3161**Was zu tun ist:**

3135 3162 

3136* Benennen Sie den Server in `claude_desktop_config.json` um, um nur Buchstaben, Zahlen, Bindestriche und Unterstriche zu verwenden, und führen Sie dann `claude mcp add-from-claude-desktop` erneut aus3163* Benennen Sie den Server in `claude_desktop_config.json` so um, dass er nur Buchstaben, Ziffern, Bindestriche und Unterstriche verwendet, und führen Sie dann `claude mcp add-from-claude-desktop` erneut aus

3137* Fügen Sie diesen Server direkt mit `claude mcp add` oder `claude mcp add-json` unter einem gültigen Namen hinzu. Siehe [MCP-Server aus Claude Desktop importieren](/docs/de/mcp#import-mcp-servers-from-claude-desktop).3164* Fügen Sie diesen Server direkt mit `claude mcp add` oder `claude mcp add-json` unter einem gültigen Namen hinzu. Siehe [MCP-Server aus Claude Desktop importieren](/docs/de/mcp#import-mcp-servers-from-claude-desktop).

3138 3165 

3139<h3 id="cannot-add-mcp-server-to-the-managed-scope">3166<h3 id="cannot-add-mcp-server-to-the-managed-scope">

3140 MCP-Server kann nicht zum verwalteten Bereich hinzugefügt werden3167 MCP-Server kann nicht zum verwalteten Geltungsbereich hinzugefügt werden

3141</h3>3168</h3>

3142 3169 

3143Sie haben `claude mcp add` oder `claude mcp add-json` mit `--scope managed` ausgeführt. Dieser Bereich enthält die Server, die Ihre Organisation über die verwaltete Einstellung [`managedMcpServers`](/docs/de/settings-reference#managedmcpservers) bereitstellt. Claude Code liest sie nur aus verwalteten Einstellungen, daher kann der Befehl keinen Server in diesen Bereich schreiben.3170Sie haben `claude mcp add` oder `claude mcp add-json` mit `--scope managed` ausgeführt. Dieser Geltungsbereich enthält die Server, die Ihre Organisation über die verwaltete Einstellung [`managedMcpServers`](/docs/de/settings-reference#managedmcpservers) bereitstellt. Claude Code liest sie nur aus den verwalteten Einstellungen, daher kann der Befehl keinen Server in diesen Geltungsbereich schreiben.

3144 3171 

3145```text theme={null}3172```text theme={null}

3146Cannot add MCP server to scope: managed3173Cannot add MCP server to scope: managed


3148 3175 

3149**Was zu tun ist:**3176**Was zu tun ist:**

3150 3177 

3151* Fügen Sie den Server zu einem Bereich hinzu, in den Sie schreiben können: `local`, `user` oder `project`. Ohne `--scope` verwendet der Befehl `local`. Siehe [MCP-Installationsbereiche](/docs/de/mcp#mcp-installation-scopes)3178* Fügen Sie den Server zu einem Geltungsbereich hinzu, in den Sie schreiben können: `local`, `user` oder `project`. Ohne `--scope` verwendet der Befehl `local`. Siehe [MCP-Installationsgeltungsbereiche](/docs/de/mcp#mcp-installation-scopes)

3152* Um den Server jedem Benutzer in Ihrer Organisation bereitzustellen, fügen Sie ihn zu [`managedMcpServers`](/docs/de/settings-reference#managedmcpservers) in den verwalteten Einstellungen hinzu, die Sie bereitstellen3179* Um den Server allen Benutzern Ihrer Organisation bereitzustellen, fügen Sie ihn zu [`managedMcpServers`](/docs/de/settings-reference#managedmcpservers) in den verwalteten Einstellungen hinzu, die Sie verteilen

3153 3180 

3154<h3 id="cant-read-mcp-json">3181<h3 id="cant-read-mcp-json">

3155 .mcp.json kann nicht gelesen werden3182 .mcp.json kann nicht gelesen werden

3156</h3>3183</h3>

3157 3184 

3158Ein Befehl, der das Projekt [`.mcp.json`](/docs/de/mcp#project-scope) liest, wie `claude mcp add` oder `claude mcp add-json` mit `--scope project` oder `claude mcp remove`, hat festgestellt, dass die Datei in Ihrem aktuellen Verzeichnis keine reguläre Datei ist oder größer als 2 MiB ist, daher beendet er mit diesem Fehler, anstatt die Datei zu lesen.3185Ein Befehl, der die [`.mcp.json`](/docs/de/mcp#project-scope) des Projekts liest, etwa `claude mcp add` oder `claude mcp add-json` mit `--scope project` oder `claude mcp remove`, hat festgestellt, dass die Datei in Ihrem aktuellen Verzeichnis keine reguläre Datei oder größer als 2 MiB ist, daher beendet er sich mit diesem Fehler, anstatt die Datei zu lesen.

3159 3186 

3160```text theme={null}3187```text theme={null}

3161Can't read .mcp.json: it isn't a regular file or is larger than 2097152 bytes. Fix or remove it, then run the command again.3188Can't read .mcp.json: it isn't a regular file or is larger than 2097152 bytes. Fix or remove it, then run the command again.

3162```3189```

3163 3190 

3164Vor v2.1.257 ließ ein FIFO bei `.mcp.json` den Befehl für immer ohne Ausgabe warten, und ein Symlink zu einer Gerätedatei wie `/dev/zero` vergrößerte den Speicher, bis der Prozess beendet wurde.3191Vor v2.1.257 ließ ein FIFO unter `.mcp.json` den Befehl ohne Ausgabe endlos warten, und ein Symlink auf eine Gerätedatei wie `/dev/zero` ließ den Speicherverbrauch wachsen, bis der Prozess beendet wurde.

3165 3192 

3166**Was zu tun ist:**3193**Was zu tun ist:**

3167 3194 

3168* Überprüfen Sie, was sich bei `.mcp.json` in Ihrem aktuellen Verzeichnis befindet. Ersetzen Sie es durch eine gewöhnliche JSON-Datei im [Projektbereich-Format](/docs/de/mcp#project-scope) oder löschen Sie es, und führen Sie dann den Befehl erneut aus.3195* Prüfen Sie, was sich unter `.mcp.json` in Ihrem aktuellen Verzeichnis befindet. Ersetzen Sie es durch eine gewöhnliche JSON-Datei im [Format für den Projekt-Geltungsbereich](/docs/de/mcp#project-scope) oder löschen Sie es, und führen Sie den Befehl dann erneut aus.

3169 3196 

3170<h3 id="mcp-server-was-not-saved-or-removed">3197<h3 id="mcp-server-was-not-saved-or-removed">

3171 MCP-Server war nicht gespeichert oder entfernt3198 MCP-Server wurde nicht gespeichert oder entfernt

3172</h3>3199</h3>

3173 3200 

3174Sie haben `claude mcp add`, `claude mcp add-json` oder `claude mcp remove` für einen Server im `user` oder `local` [Bereich](/docs/de/mcp#mcp-installation-scopes) ausgeführt. Beide Bereiche werden in `~/.claude.json` gespeichert, und die Änderung ist nicht in dieser Datei, wenn Claude Code sie nach dem Schreiben zurückliest. Der Befehl beendet sich mit diesem Fehler, anstatt seine Erfolgsmeldung zu drucken.3201Sie haben `claude mcp add`, `claude mcp add-json` oder `claude mcp remove` für einen Server im [Geltungsbereich](/docs/de/mcp#mcp-installation-scopes) `user` oder `local` ausgeführt. Beide Geltungsbereiche werden in `~/.claude.json` gespeichert, und die Änderung ist nicht in dieser Datei enthalten, wenn Claude Code sie nach dem Schreiben zurückliest. Der Befehl beendet sich mit diesem Fehler anstelle seiner Erfolgszeile.

3175 3202 

3176```text theme={null}3203```text theme={null}

3177MCP server "example" was not saved to /home/user/.claude.json. If that file is read-only or protected by a sandbox, make it writable or run the command outside the sandbox, then add the server again.3204MCP server "example" was not saved to /home/user/.claude.json. If that file is read-only or protected by a sandbox, make it writable or run the command outside the sandbox, then add the server again.

3178```3205```

3179 3206 

3180Nach einem Remove lautet die Meldung `was not removed from` und endet mit `then remove the server again`. Für einen `local`-Bereich-Server wird der Pfad gefolgt vom Projektverzeichnis, zu dem der Eintrag gehört, als `(local scope for /path/to/project)`.3207Nach einem Entfernen lautet die Meldung `was not removed from` und endet mit `then remove the server again`. Bei einem Server im Geltungsbereich `local` folgt auf den Pfad das Projektverzeichnis, zu dem der Eintrag gehört, als `(local scope for /path/to/project)`.

3181 3208 

3182Vor v2.1.283 meldeten `claude mcp add`, `claude mcp add-json` und `claude mcp remove` Erfolg, auch wenn die Änderung die Datei nicht erreichte.3209Vor v2.1.283 meldeten `claude mcp add`, `claude mcp add-json` und `claude mcp remove` Erfolg, selbst wenn die Änderung die Datei nicht erreichte.

3183 3210 

3184**Was zu tun ist:**3211**Was zu tun ist:**

3185 3212 

3186* Machen Sie die Datei, die die Meldung benennt, beschreibbar, oder führen Sie den Befehl außerhalb der Sandbox aus, und führen Sie dann denselben Add- oder Remove-Befehl erneut aus.3213* Machen Sie die in der Meldung genannte Datei beschreibbar oder führen Sie den Befehl außerhalb der Sandbox aus, und führen Sie dann denselben Befehl zum Hinzufügen oder Entfernen erneut aus.

3187 3214 

3188<h3 id="mcp-server-may-not-have-been-saved-or-removed">3215<h3 id="mcp-server-may-not-have-been-saved-or-removed">

3189 MCP-Server wurde möglicherweise nicht gespeichert oder entfernt3216 MCP-Server wurde möglicherweise nicht gespeichert oder entfernt

3190</h3>3217</h3>

3191 3218 

3192Sie haben `claude mcp add`, `claude mcp add-json` oder `claude mcp remove` für einen Server im `user` oder `local` [Bereich](/docs/de/mcp#mcp-installation-scopes) ausgeführt, und Claude Code konnte `~/.claude.json` nicht zurücklesen, um die Änderung zu bestätigen. Die Änderung kann oder kann nicht auf der Festplatte sein. Der Text in Klammern ist der Fehler aus diesem Lesevorgang.3219Sie haben `claude mcp add`, `claude mcp add-json` oder `claude mcp remove` für einen Server im [Geltungsbereich](/docs/de/mcp#mcp-installation-scopes) `user` oder `local` ausgeführt, und Claude Code konnte `~/.claude.json` nicht zurücklesen, um die Änderung zu bestätigen. Die Änderung befindet sich möglicherweise auf der Festplatte, möglicherweise aber auch nicht. Der Text in Klammern ist der Fehler dieses Lesevorgangs.

3193 3220 

3194```text theme={null}3221```text theme={null}

3195MCP server "example" may not have been saved: /home/user/.claude.json could not be read to confirm the change (EACCES: permission denied, open '/home/user/.claude.json'). Run `claude mcp get example` to check, then add the server again if it is missing.3222MCP server "example" may not have been saved: /home/user/.claude.json could not be read to confirm the change (EACCES: permission denied, open '/home/user/.claude.json'). Run `claude mcp get example` to check, then add the server again if it is missing.

3196```3223```

3197 3224 

3198Nach einem Remove lautet die Meldung `may not have been removed` und endet mit `then remove the server again if it is still listed`.3225Nach einem Entfernen lautet die Meldung `may not have been removed` und endet mit `then remove the server again if it is still listed`.

3199 3226 

3200Vor v2.1.283 meldeten die Befehle Erfolg, auch wenn die Änderung nicht bestätigt werden konnte.3227Vor v2.1.283 meldeten die Befehle Erfolg, selbst wenn die Änderung nicht bestätigt werden konnte.

3201 3228 

3202**Was zu tun ist:**3229**Was zu tun ist:**

3203 3230 

3204* Führen Sie `claude mcp get <name>` aus, um zu überprüfen, ob die Änderung auf der Festplatte ist. Für einen `local`-Bereich-Server führen Sie es aus dem Projektverzeichnis aus, zu dem der Server gehört, da der lokale Bereich pro Projekt ist.3231* Führen Sie `claude mcp get <name>` aus, um zu prüfen, ob sich die Änderung auf der Festplatte befindet. Bei einem Server im Geltungsbereich `local` führen Sie den Befehl aus dem Projektverzeichnis aus, zu dem der Server gehört, da der lokale Geltungsbereich projektbezogen ist.

3205* Wenn der Server nach einem Add fehlt oder nach einem Remove immer noch aufgelistet ist, führen Sie denselben Add- oder Remove-Befehl erneut aus.3232* Wenn der Server nach einem Hinzufügen fehlt oder nach einem Entfernen noch aufgeführt ist, führen Sie denselben Befehl zum Hinzufügen oder Entfernen erneut aus.

3206 3233 

3207<h3 id="anthropic-hosted-and-doesnt-support-local-oauth">3234<h3 id="anthropic-hosted-and-doesnt-support-local-oauth">

3208 Server ist von Anthropic gehostet und unterstützt lokales OAuth nicht3235 Server wird von Anthropic gehostet und unterstützt kein lokales OAuth

3209</h3>3236</h3>

3210 3237 

3211Sie haben eine Anmeldung für einen MCP-Server gestartet, dessen URL auf einen von Anthropic gehosteten Connector-Host zeigt, der sich über einen Drittanbieter-Identitätsanbieter authentifiziert. Diese Hosts umfassen `microsoft365.mcp.claude.com`, `gmail.mcp.claude.com` und `gcal.mcp.claude.com`. Claude Code weigert sich, seinen lokalen OAuth-Flow für diese Hosts sowohl vom `/mcp`-Panel als auch von `claude mcp login` zu starten, da [ihre Anmeldung nur über claude.ai funktioniert](/docs/de/mcp#use-mcp-servers-from-claude-ai).3238Sie haben eine Anmeldung für einen MCP-Server gestartet, dessen URL auf einen von Anthropic gehosteten Konnektor-Host verweist, der sich über einen Identitätsanbieter eines Drittanbieters authentifiziert. Zu diesen Hosts gehören `microsoft365.mcp.claude.com`, `gmail.mcp.claude.com` und `gcal.mcp.claude.com`. Claude Code verweigert für diese Hosts den Start seines lokalen OAuth-Ablaufs sowohl im `/mcp`-Panel als auch über `claude mcp login`, da [ihre Anmeldung nur über claude.ai funktioniert](/docs/de/mcp#use-mcp-servers-from-claude-ai).

3212 3239 

3213```text theme={null}3240```text theme={null}

3214"gmail" is Anthropic-hosted and doesn't support local OAuth. Connect it via Settings → Connectors on claude.ai (requires `claude login`), then it'll be available here automatically.3241"gmail" is Anthropic-hosted and doesn't support local OAuth. Connect it via Settings → Connectors on claude.ai (requires `claude login`), then it'll be available here automatically.

3215```3242```

3216 3243 

3217Claude Code gleicht diese Hosts nach URL ab, daher erscheint die Meldung, wenn ein Server, den Sie mit `claude mcp add` oder in `.mcp.json` hinzugefügt haben, auf einen von ihnen zeigt.

3218 

3219**Was zu tun ist:**3244**Was zu tun ist:**

3220 3245 

3221* Entfernen Sie Ihren Eintrag mit `claude mcp remove <name>`, damit er den claude.ai-Connector unter derselben URL nicht verbergen kann3246* Entfernen Sie Ihren Eintrag mit `claude mcp remove <name>`, damit er den claude.ai-Konnektor unter derselben URL nicht verdecken kann

3222* Nachdem Sie ihn entfernt haben, verbinden Sie den Service unter [claude.ai/customize/connectors](https://claude.ai/customize/connectors), während Sie bei dem Konto angemeldet sind, das Sie in Claude Code verwenden. Nach der Verbindung [erscheint der Connector automatisch in Claude Code](/docs/de/mcp#use-mcp-servers-from-claude-ai), wenn Ihre aktive Authentifizierungsmethode eine claude.ai-Abonnement-Anmeldung ist3247* Verbinden Sie den Dienst nach dem Entfernen unter [claude.ai/customize/connectors](https://claude.ai/customize/connectors), während Sie mit dem Konto angemeldet sind, das Sie in Claude Code verwenden. Sobald die Verbindung besteht, [erscheint der Konnektor automatisch in Claude Code](/docs/de/mcp#use-mcp-servers-from-claude-ai), wenn Ihre aktive Authentifizierungsmethode eine Anmeldung mit einem claude.ai-Abonnement ist

3223 3248 

3224<h3 id="server-rejected-the-authorization-header-minted-by-the-configured-headershelper">3249<h3 id="server-rejected-the-authorization-header-minted-by-the-configured-headershelper">

3225 Server lehnte den vom konfigurierten headersHelper erstellten Authorization-Header ab3250 Server hat den vom konfigurierten headersHelper erzeugten Authorization-Header abgelehnt

3226</h3>3251</h3>

3227 3252 

3228Ein MCP-Server, dessen [`headersHelper`](/docs/de/mcp#use-dynamic-headers-for-custom-authentication) den `Authorization`-Header bereitstellt, hat die Verbindung mit HTTP 401 oder 403 beantwortet, daher meldet Claude Code die Verbindung als fehlgeschlagen. Da der Helper den `Authorization`-Header bereitstellt, [fällt Claude Code nicht auf OAuth zurück](/docs/de/mcp#authenticate-with-remote-mcp-servers) für den Server:3253Ein MCP-Server, dessen [`headersHelper`](/docs/de/mcp#use-dynamic-headers-for-custom-authentication) den `Authorization`-Header liefert, hat die Verbindung mit HTTP 401 oder 403 beantwortet, daher meldet Claude Code die Verbindung als fehlgeschlagen. Da der Helper den `Authorization`-Header liefert, [fällt Claude Code für den Server nicht auf OAuth zurück](/docs/de/mcp#authenticate-with-remote-mcp-servers):

3229 3254 

3230```text theme={null}3255```text theme={null}

3231Server rejected the Authorization header minted by the configured headersHelper (HTTP 401). Check that the helper command returns a valid credential for this MCP endpoint — OAuth fallback is disabled when the helper supplies Authorization.3256Server rejected the Authorization header minted by the configured headersHelper (HTTP 401). Check that the helper command returns a valid credential for this MCP endpoint — OAuth fallback is disabled when the helper supplies Authorization.

3232```3257```

3233 3258 

3234Claude Code führt den Helper bei jedem Verbindungsversuch erneut aus, daher kann ein erneuter Versuch nach einer vorübergehenden Ablehnung, wie einer Token-Rotations-Rasse, mit einer frischen Anmeldeinformation erfolgreich sein.3259Claude Code führt den Helper bei jedem Verbindungsversuch erneut aus, sodass ein erneuter Versuch nach einer vorübergehenden Ablehnung, etwa einer Race Condition bei der Token-Rotation, mit neuen Anmeldedaten erfolgreich sein kann.

3235 3260 

3236**Was zu tun ist:**3261**Was zu tun ist:**

3237 3262 

3238* Führen Sie den `headersHelper`-Befehl selbst so aus, wie Claude Code ihn ausführt: aus dem [Verzeichnis, in dem Claude Code ihn ausführt](/docs/de/mcp#where-the-helper-runs), mit den [Umgebungsvariablen, die Claude Code für ihn setzt](/docs/de/mcp#use-dynamic-headers-for-custom-authentication), und ohne die [Anmeldeinformationsvariablen, die Claude Code entfernt](/docs/de/mcp#which-variables-a-helper-can-read) für einen Server aus einer Projekt `.mcp.json`, einem Plugin oder einer Projekt-Agent-Datei. Überprüfen Sie, dass er einen `Authorization`-Wert druckt, den der Endpunkt des Servers akzeptiert3263* Führen Sie den `headersHelper`-Befehl selbst so aus, wie Claude Code ihn ausführt: aus dem [Verzeichnis, in dem Claude Code ihn ausführt](/docs/de/mcp#where-the-helper-runs), mit den [Umgebungsvariablen, die Claude Code dafür setzt](/docs/de/mcp#use-dynamic-headers-for-custom-authentication), und ohne die [Anmeldedaten-Variablen, die Claude Code entfernt](/docs/de/mcp#which-variables-a-helper-can-read) bei einem Server aus einer Projekt-`.mcp.json`, einem Plugin oder einer Projekt-Agentendatei. Prüfen Sie, ob er einen `Authorization`-Wert ausgibt, den der Endpunkt des Servers akzeptiert

3239* Nachdem Sie den Helper oder seine Anmeldeinformationsquelle behoben haben, wählen Sie den Server in `/mcp` aus und wählen Sie **Reconnect**3264* Nachdem Sie den Helper oder die Quelle seiner Anmeldedaten korrigiert haben, wählen Sie den Server in `/mcp` aus und wählen Sie **Reconnect**

3240 3265 

3241Vor v2.1.248 führte Claude Code OAuth-Erkennung für einen Server durch, dessen Helper den `Authorization`-Header bereitstellte. Diese Erkennung konnte mit `Incompatible auth server: does not support dynamic client registration` fehlschlagen, anstatt die abgelehnte Anmeldeinformation zu melden.3266Vor v2.1.248 führte Claude Code für einen Server, dessen Helper den `Authorization`-Header lieferte, eine OAuth-Erkennung durch. Diese Erkennung konnte mit `Incompatible auth server: does not support dynamic client registration` fehlschlagen, anstatt die abgelehnten Anmeldedaten zu melden.

3242 3267 

3243<h3 id="mcp-permission-prompt-tool-not-found">3268<h3 id="mcp-permission-prompt-tool-not-found">

3244 MCP-Berechtigungsaufforderungs-Tool nicht gefunden3269 MCP-Tool für Berechtigungsabfragen nicht gefunden

3245</h3>3270</h3>

3246 3271 

3247Das Tool, das Sie an [`--permission-prompt-tool`](/docs/de/cli-reference#cli-flags) übergeben haben, war nicht unter den verbundenen MCP-Tools, als der Lauf zuerst eine Berechtigungsentscheidung benötigte, entweder weil sein Server nie verbunden wurde oder weil kein verbundener Server ein Tool mit diesem Namen verfügbar macht. Claude Code sendet Ihre Eingabeaufforderung immer noch: Der [nicht interaktive](/docs/de/headless) Lauf beendet sich mit diesem Fehler und Exit-Code 1 beim ersten Tool-Aufruf, daher erzeugt er keine Antwort, obwohl die Anfrage gestellt wurde. Vor dem ersten Prompt wartet Claude Code bis zu dem pro-Server-Verbindungs-Timeout von 30 Sekunden, der durch [`MCP_TIMEOUT`](/docs/de/env-vars) gesetzt ist, damit dieser Server verbunden wird. Vor v2.1.206 wartete der Start nicht, bis der Server die Verbindung beendete, daher erzeugte ein langsam startender, aber gesunder Server auch diesen Fehler.3272Das Tool, das Sie an [`--permission-prompt-tool`](/docs/de/cli-reference#cli-flags) übergeben haben, gehörte nicht zu den verbundenen MCP-Tools, als die Ausführung zum ersten Mal eine Berechtigungsentscheidung benötigte, entweder weil sein Server nie verbunden wurde oder weil kein verbundener Server ein Tool mit diesem Namen bereitstellt. Claude Code sendet Ihren Prompt trotzdem: Die [nicht interaktive](/docs/de/headless) Ausführung beendet sich beim ersten Tool-Aufruf mit diesem Fehler und Exit-Code 1, sodass sie keine Antwort liefert, obwohl die Anfrage gestellt wurde. Vor dem ersten Prompt wartet Claude Code bis zum Verbindungs-Timeout pro Server von 30 Sekunden, festgelegt durch [`MCP_TIMEOUT`](/docs/de/env-vars), darauf, dass dieser Server sich verbindet. Vor v2.1.206 wartete der Start nicht, bis der Server die Verbindung hergestellt hatte, sodass auch ein langsam startender, aber funktionsfähiger Server diesen Fehler verursachte.

3248 3273 

3249```text theme={null}3274```text theme={null}

3250Error: MCP tool mcp__permissions__approve (passed via --permission-prompt-tool) not found. Available MCP tools: none3275Error: MCP tool mcp__permissions__approve (passed via --permission-prompt-tool) not found. Available MCP tools: none

3251```3276```

3252 3277 

3253Die Liste nach `Available MCP tools:` benennt die MCP-Tools, die verbunden waren, als das Warten endete.3278Die Liste nach `Available MCP tools:` nennt die MCP-Tools, die verbunden waren.

3254 3279 

3255**Was zu tun ist:**3280**Was zu tun ist:**

3256 3281 

3257* Überprüfen Sie, dass der Server startet und verbunden bleibt: Führen Sie `claude mcp list` im selben Verzeichnis aus und bestätigen Sie, dass der Server als verbunden aufgelistet ist3282* Prüfen Sie, ob der Server startet und verbunden bleibt: Führen Sie `claude mcp list` im selben Verzeichnis aus und bestätigen Sie, dass der Server als verbunden aufgeführt ist

3258* Bestätigen Sie, dass der Tool-Name dem `mcp__<server>__<tool>`-Namen entspricht, den der Server verfügbar macht3283* Bestätigen Sie, dass der Tool-Name mit dem `mcp__<server>__<tool>`-Namen übereinstimmt, den der Server bereitstellt

3259* Wenn der Server länger als 30 Sekunden zum Starten benötigt, erhöhen Sie [`MCP_TIMEOUT`](/docs/de/env-vars)3284* Wenn der Server länger als 30 Sekunden zum Starten benötigt, erhöhen Sie [`MCP_TIMEOUT`](/docs/de/env-vars)

3260 3285 

3261<h3 id="oauth-callback-port-is-already-in-use">3286<h3 id="oauth-callback-port-is-already-in-use">

3262 OAuth-Callback-Port wird bereits verwendet3287 OAuth-Callback-Port wird bereits verwendet

3263</h3>3288</h3>

3264 3289 

3265Wenn Sie sich bei einem Remote-MCP-Server mit OAuth anmelden, startet Claude Code einen lokalen Listener, um den Anmelde-Callback zu empfangen. Wenn der Port, den dieser Listener benötigt, von einem anderen Prozess gehalten wird, schlägt die Anmeldung mit dieser Meldung fehl. Dies geschieht hauptsächlich mit einem [festen Callback-Port](/docs/de/mcp#use-a-fixed-oauth-callback-port), der durch die Variable [`MCP_OAUTH_CALLBACK_PORT`](/docs/de/env-vars) oder `--callback-port` gesetzt ist, da Claude Code ohne einen verfügbaren Port auswählt.3290Wenn Sie sich mit OAuth bei einem entfernten MCP-Server anmelden, startet Claude Code einen lokalen Listener, um den Anmelde-Callback zu empfangen. Wenn der Port, den dieser Listener benötigt, von einem anderen Prozess belegt ist, schlägt die Anmeldung mit dieser Meldung fehl. Das passiert meist bei einem [festen Callback-Port](/docs/de/mcp#use-a-fixed-oauth-callback-port), der über die Variable [`MCP_OAUTH_CALLBACK_PORT`](/docs/de/env-vars) oder `--callback-port` gesetzt wurde, da Claude Code ohne einen solchen einen verfügbaren Port wählt.

3266 3291 

3267```text theme={null}3292```text theme={null}

3268OAuth callback port <port> is already in use — another process may be holding it. Run `lsof -ti:<port> -sTCP:LISTEN` to find it.3293OAuth callback port <port> is already in use — another process may be holding it. Run `lsof -ti:<port> -sTCP:LISTEN` to find it.

3269```3294```

3270 3295 

3271Unter Windows ist der vorgeschlagene Befehl stattdessen `netstat -ano | findstr :<port>`.3296Unter Windows lautet der vorgeschlagene Befehl stattdessen `netstat -ano | findstr :<port>`.

3272 3297 

3273**Was zu tun ist:**3298**Was zu tun ist:**

3274 3299 

3275* Führen Sie den Befehl aus der Meldung aus, um den Prozess zu finden, der den Port hält, und stoppen Sie ihn oder warten Sie, bis er fertig ist3300* Führen Sie den Befehl aus der Meldung aus, um den Prozess zu finden, der den Port belegt, und beenden Sie ihn oder warten Sie, bis er fertig ist

3276* Wenn ein anderes Programm diesen Port dauerhaft benötigt, registrieren Sie einen anderen Redirect-URI beim Server und setzen Sie seinen Port mit `MCP_OAUTH_CALLBACK_PORT` oder `--callback-port`, je nachdem, was Sie verwenden3301* Wenn ein anderes Programm diesen Port dauerhaft benötigt, registrieren Sie beim Server einen anderen Redirect-URI und setzen Sie dessen Port mit `MCP_OAUTH_CALLBACK_PORT` oder `--callback-port`, je nachdem, was Sie verwenden

3277* Starten Sie dann die Anmeldung erneut, z. B. indem Sie den Server in `/mcp` auswählen3302* Starten Sie die Anmeldung dann erneut, zum Beispiel indem Sie den Server in `/mcp` auswählen

3278 3303 

3279<h3 id="no-available-ports-for-oauth-redirect">3304<h3 id="no-available-ports-for-oauth-redirect">

3280 Keine verfügbaren Ports für OAuth-Umleitung3305 Keine verfügbaren Ports für die OAuth-Weiterleitung

3281</h3>3306</h3>

3282 3307 

3283Wenn Sie sich bei einem Remote-MCP-Server mit [OAuth](/docs/de/mcp#authenticate-with-remote-mcp-servers) anmelden, startet Claude Code einen lokalen Listener, um den Anmelde-Callback zu empfangen. Die Anmeldung schlägt mit dieser Meldung fehl, wenn Claude Code keinen lokalen Port dafür binden kann. Etwas auf der Maschine verhindert, dass es auf `127.0.0.1` lauscht, z. B. Sicherheitssoftware oder eine Sandbox-Richtlinie, die lokale Listener verweigert.3308Wenn Sie sich mit [OAuth](/docs/de/mcp#authenticate-with-remote-mcp-servers) bei einem entfernten MCP-Server anmelden, startet Claude Code einen lokalen Listener, um den Anmelde-Callback zu empfangen. Die Anmeldung schlägt mit dieser Meldung fehl, wenn Claude Code dafür keinen lokalen Port binden kann. Etwas auf dem Rechner hindert es daran, auf `127.0.0.1` zu lauschen, zum Beispiel Sicherheitssoftware oder eine Sandbox-Richtlinie, die lokale Listener verbietet.

3284 3309 

3285```text theme={null}3310```text theme={null}

3286No available ports for OAuth redirect3311No available ports for OAuth redirect

3287```3312```

3288 3313 

3289Vor v2.1.268 fiel Claude Code nicht auf einen vom Betriebssystem zugewiesenen Port zurück, daher erschien die Meldung auch, wenn nur die selbst ausgewählten Ports nicht gebunden werden konnten. Dies kann auf Windows-Hosts geschehen, wo Hyper-V Port-Bereiche reserviert, die die Ports abdecken, die Claude Code auswählt.3314Vor v2.1.268 fiel Claude Code nicht auf einen vom Betriebssystem zugewiesenen Port zurück, sodass die Meldung auch erschien, wenn nur die selbst gewählten Ports nicht gebunden werden konnten. Das kann auf Windows-Hosts passieren, auf denen Hyper-V Portbereiche reserviert, die die Ports abdecken, aus denen Claude Code wählt.

3290 3315 

3291**Was zu tun ist:**3316**Was zu tun ist:**

3292 3317 

3293* Überprüfen Sie, ob Sicherheitssoftware oder eine Sandbox-Richtlinie Prozesse daran hindert, auf `127.0.0.1` zu lauschen, und erlauben Sie Claude Code, einen lokalen Port zu binden3318* Prüfen Sie, ob Sicherheitssoftware oder eine Sandbox-Richtlinie Prozesse daran hindert, auf `127.0.0.1` zu lauschen, und erlauben Sie Claude Code, einen lokalen Port zu binden

3294* Starten Sie dann die Anmeldung erneut, z. B. indem Sie den Server in `/mcp` auswählen3319* Starten Sie die Anmeldung dann erneut, zum Beispiel indem Sie den Server in `/mcp` auswählen

3295 3320 

3296<h3 id="security-review-fails-without-origin-head">3321<h3 id="security-review-fails-without-origin-head">

3297 /security-review schlägt ohne origin/HEAD fehl3322 /security-review schlägt ohne origin/HEAD fehl

3298</h3>3323</h3>

3299 3324 

3300[`/security-review`](/docs/de/commands#all-commands) erstellt seinen Review-Kontext, indem es Ihren Branch gegen `origin/HEAD` vergleicht, die lokale Ref, die aufzeichnet, welcher Branch der Standard auf Ihrem `origin`-Remote ist. Wenn diese Ref nicht existiert, schlagen die Git-Befehle, die den Diff sammeln, fehl und die Review stoppt, bevor sie beginnt.3325[`/security-review`](/docs/de/commands#all-commands) erstellt seinen Review-Kontext, indem es einen Diff Ihres Branches gegen `origin/HEAD` bildet, die lokale Ref, die festhält, welcher Branch auf Ihrem `origin`-Remote der Standard ist. Wenn diese Ref nicht existiert, schlagen die Git-Befehle fehl, die den Diff sammeln, und das Review stoppt, bevor es beginnt.

3301 3326 

3302```text theme={null}3327```text theme={null}

3303Error: Shell command failed for pattern "!`git diff --name-only origin/HEAD...`": [stderr]3328Error: Shell command failed for pattern "!`git diff --name-only origin/HEAD...`": [stderr]


3306'git <command> [<revision>...] -- [<file>...]'3331'git <command> [<revision>...] -- [<file>...]'

3307```3332```

3308 3333 

3309Die Meldung kann stattdessen `git log` oder einen anderen `git diff` zitieren. Git erstellt `origin/HEAD` nur, wenn der Remote einen Standard-Branch bewirbt und Ihr Fetch-Refspec ihn abdeckt, was ein vollständiger `git clone` eines Remote mit Commits tut. Die Ref fehlt in diesen Setups:3334Die Meldung kann stattdessen `git log` oder einen anderen `git diff` zitieren. Git erstellt `origin/HEAD` nur, wenn der Remote einen Standard-Branch bekannt gibt und Ihre Fetch-Refspec ihn abdeckt, was bei einem vollständigen `git clone` eines Remotes mit Commits der Fall ist. In diesen Konstellationen fehlt die Ref:

3310 3335 

3311* Ein Single-Branch- oder CI-Checkout, der einen zu engen Refspec abruft3336* Ein Single-Branch- oder CI-Checkout, der eine zu enge Refspec abruft

3312* Ein Remote, dessen serverseitige HEAD auf einen Branch zeigt, den niemand gepusht hat3337* Ein Remote, dessen serverseitiger HEAD auf einen Branch verweist, den niemand gepusht hat

3313* Ein Repository ohne `origin`-Remote oder eines, das Sie nie abgerufen haben3338* Ein Repository ohne `origin`-Remote oder eines, das Sie nie abgerufen haben

3314 3339 

3315Claude Code zeigt denselben Fehler für jeden Skill, der [dynamischen Kontext injiziert](/docs/de/skills#when-an-injected-command-fails), und ein fehlgeschlagener injizierter Befehl bricht die Invokation dieses Skills ab. Zwei Geschwister-Strings werden vor dem Befehl ausgelöst:3340Claude Code zeigt denselben Fehler für jeden Skill, der [dynamischen Kontext einfügt](/docs/de/skills#when-an-injected-command-fails), und ein fehlgeschlagener eingefügter Befehl bricht den Aufruf dieses Skills ab. Zwei verwandte Meldungen treten auf, bevor der Befehl überhaupt ausgeführt wird:

3316 3341 

3317* `Shell command permission check failed for pattern "..."`: Die Berechtigungsprüfung des Befehls hat ihn nicht erlaubt. [Berechtigungsprüfungen auf injizierten Befehlen](/docs/de/skills#permission-checks-on-injected-commands) behandelt, welche Ergebnisse in jedem Berechtigungsmodus abbrechen und wie Sie einen Befehl mit `allowed-tools` vorab genehmigen3342* `Shell command permission check failed for pattern "..."`: Die Berechtigungsprüfung des Befehls hat ihn nicht zugelassen. [Berechtigungsprüfungen für eingefügte Befehle](/docs/de/skills#permission-checks-on-injected-commands) beschreibt, welche Ergebnisse in jedem Berechtigungsmodus zum Abbruch führen und wie Sie einen Befehl mit `allowed-tools` vorab genehmigen

3318* ``Skill <name> requires bash (`shell: bash` in frontmatter) but Git Bash was not found``: Die Frontmatter des Skills verlangt Bash auf einer Maschine ohne ihn. Installieren Sie Git für Windows oder ändern Sie die Frontmatter zu `shell: powershell`. Siehe [Wie injizierte Befehle ausgeführt werden](/docs/de/skills#how-injected-commands-run)3343* ``Skill <name> requires bash (`shell: bash` in frontmatter) but Git Bash was not found``: Das Frontmatter des Skills verlangt bash auf einem Rechner, auf dem es nicht vorhanden ist. Installieren Sie Git for Windows oder ändern Sie das Frontmatter in `shell: powershell`. Siehe [Wie eingefügte Befehle ausgeführt werden](/docs/de/skills#how-injected-commands-run)

3319 3344 

3320**Was zu tun ist:**3345**Was zu tun ist:**

3321 3346 

3322* Erstellen Sie die Ref, indem Sie den Standard-Branch Ihres Remote benennen: `git remote set-head origin <default-branch>`. Dies funktioniert, wenn die lokale Tracking-Ref `origin/<default-branch>` existiert. Wenn nicht, wie in Single-Branch-Klonen, rufen Sie den Branch zuerst ab: Führen Sie `git remote set-branches --add origin <branch>` aus, dann `git fetch origin`, dann führen Sie den set-head-Befehl erneut aus. Führen Sie `/security-review` erneut aus.3347* Erstellen Sie die Ref, indem Sie den Standard-Branch Ihres Remotes angeben: `git remote set-head origin <default-branch>`. Das funktioniert, sofern die lokale Tracking-Ref `origin/<default-branch>` existiert. Falls nicht, wie bei Single-Branch-Klonen, rufen Sie den Branch zuerst ab: Führen Sie `git remote set-branches --add origin <branch>` aus, dann `git fetch origin`, und führen Sie dann den set-head-Befehl erneut aus. Führen Sie `/security-review` erneut aus.

3323* Wenn Sie den Branch nicht benennen möchten, führen Sie `git fetch origin` aus und dann `git remote set-head origin --auto`, das den Remote fragt, welcher Branch sein Standard ist. Es schlägt mit `error: Cannot determine remote HEAD` fehl, wenn der Remote keinen Standard-Branch bewirbt, weil er leer ist oder seine HEAD auf einen Branch zeigt, den niemand gepusht hat; benennen Sie den Branch stattdessen explizit. Es schlägt mit `error: Not a valid ref` fehl, wenn Ihr Klon diesen Branch nicht abruft; erweitern Sie den Refspec zuerst wie oben.3348* Wenn Sie den Branch lieber nicht angeben möchten, führen Sie `git fetch origin` und dann `git remote set-head origin --auto` aus, das den Remote fragt, welcher Branch sein Standard ist. Es schlägt mit `error: Cannot determine remote HEAD` fehl, wenn der Remote keinen Standard-Branch bekannt gibt, weil er leer ist oder sein HEAD auf einen Branch verweist, den niemand gepusht hat; geben Sie den Branch stattdessen explizit an. Es schlägt mit `error: Not a valid ref` fehl, wenn Ihr Klon diesen Branch nicht abruft; erweitern Sie zuerst die Refspec wie oben beschrieben.

3324* Wenn das Repository keinen Remote hat, fügen Sie einen mit `git remote add origin <url>` hinzu und rufen Sie ab, bevor Sie die Ref erstellen. Wenn der Remote leer ist, pushen Sie Ihren Branch zuerst mit `git push -u origin HEAD` und benennen Sie diesen Branch im set-head-Befehl; `origin/HEAD` zeigt dann auf den Branch, den Sie gerade gepusht haben, daher sieht `/security-review` einen leeren Diff, bis der Branch von ihm abweicht.3349* Wenn das Repository keinen Remote hat, fügen Sie einen mit `git remote add origin <url>` hinzu und rufen Sie ihn ab, bevor Sie die Ref erstellen. Wenn der Remote leer ist, pushen Sie zuerst Ihren Branch mit `git push -u origin HEAD` und geben Sie diesen Branch im set-head-Befehl an; `origin/HEAD` verweist dann auf den Branch, den Sie gerade gepusht haben, sodass `/security-review` einen leeren Diff sieht, bis der Branch davon abweicht.

3325 3350 

3326<h3 id="input-must-be-provided-when-using-print">3351<h3 id="input-must-be-provided-when-using-print">

3327 Eingabe muss bereitgestellt werden, wenn `--print` verwendet wird3352 Bei Verwendung von `--print` muss eine Eingabe angegeben werden

3328</h3>3353</h3>

3329 3354 

3330Bare `claude` benötigt stdout, um ein Terminal zu sein, um die interaktive UI zu starten. Wenn stdout umgeleitet wird oder die Konsole kein echtes Terminal ist, wie PowerShell ISE und einige IDE-Ausgabebereiche, führt `claude` stattdessen [nicht interaktiv](/docs/de/headless) aus. Das ist derselbe Modus wie `claude -p`, der eine Eingabeaufforderung erfordert, daher benennt die Meldung `--print`, auch wenn Sie das Flag nicht übergeben haben. Das Übergeben von `-p`/`--print` ohne Eingabeaufforderung und nichts auf stdin erzeugt überall denselben Fehler.3355Ein einfaches `claude` benötigt ein Terminal als stdout, um die interaktive Oberfläche zu starten. Wenn stdout umgeleitet wird oder die Konsole kein echtes Terminal ist, etwa PowerShell ISE und einige Ausgabebereiche von IDEs, wird `claude` stattdessen [nicht interaktiv](/docs/de/headless) ausgeführt. Das ist derselbe Modus wie `claude -p`, der einen Prompt erfordert, daher nennt die Meldung `--print`, auch wenn Sie das Flag nicht übergeben haben. Die Übergabe von `-p`/`--print` ohne Prompt und ohne per Pipe übergebene Eingabe auf stdin erzeugt überall denselben Fehler.

3331 3356 

3332```text theme={null}3357```text theme={null}

3333Error: Input must be provided either through stdin or as a prompt argument when using --print3358Error: Input must be provided either through stdin or as a prompt argument when using --print


3335 3360 

3336**Was zu tun ist:**3361**Was zu tun ist:**

3337 3362 

3338* Für interaktive Verwendung führen Sie `claude` in einem echten Terminal aus: Windows Terminal oder die PowerShell-Konsole statt ISE, und das integrierte Terminal Ihrer IDE statt eines Ausgabebereichs3363* Für die interaktive Nutzung führen Sie `claude` in einem echten Terminal aus: Windows Terminal oder der PowerShell-Konsole statt ISE, und im integrierten Terminal Ihrer IDE statt in einem Ausgabebereich

3339* Für einmalige Verwendung übergeben Sie die Eingabeaufforderung: `claude -p "your question"`, oder pipen Sie sie mit `echo "your question" | claude -p`3364* Für die einmalige Nutzung übergeben Sie den Prompt: `claude -p "your question"`, oder leiten Sie ihn per Pipe weiter mit `echo "your question" | claude -p`

3340 3365 

3341<h3 id="input-contained-only-whitespace">3366<h3 id="input-contained-only-whitespace">

3342 Eingabe enthielt nur Leerzeichen3367 Eingabe enthielt nur Leerraum

3343</h3>3368</h3>

3344 3369 

3345Im [nicht interaktiven Modus](/docs/de/headless) weigert sich Claude Code, eine Eingabeaufforderung zu akzeptieren, die nur aus Leerzeichen, Tabulatoren oder Zeilenumbrüchen besteht, anstatt sie zu senden, da die API Nachrichten ohne sichtbaren Text ablehnt. Welche Meldung Sie sehen, hängt davon ab, woher die leere Eingabeaufforderung kam:3370Im [nicht interaktiven Modus](/docs/de/headless) lehnt Claude Code einen Prompt, der ausschließlich aus Leerzeichen, Tabulatoren oder Zeilenumbrüchen besteht, ab, anstatt ihn zu senden, da die API Nachrichten ohne sichtbaren Text ablehnt. Welche Meldung Sie sehen, hängt davon ab, woher der leere Prompt stammt:

3346 3371 

3347* **Eingabeaufforderungs-Argument oder gepipte stdin für `claude -p`**: `claude` beendet sich mit `Error: Input contained only whitespace. Provide a prompt with text through stdin or as a prompt argument when using --print`3372* **Prompt-Argument oder per Pipe übergebenes stdin für `claude -p`**: `claude` beendet sich mit `Error: Input contained only whitespace. Provide a prompt with text through stdin or as a prompt argument when using --print`

3348* **Nachricht eingereicht an eine laufende `--input-format stream-json` oder [Agent SDK](/docs/de/agent-sdk/overview)-Sitzung**: Claude Code beendet die Runde ohne Aufruf des Modells und die Sitzung bleibt nutzbar. Die Ablehnung kommt als informative Meldung und als Ergebnis-Text der Runde: `Blank prompt — the message was only whitespace, so nothing was sent to the model.`3373* **Nachricht, die an eine laufende `--input-format stream-json`- oder [Agent SDK](/docs/de/agent-sdk/overview)-Sitzung gesendet wurde**: Claude Code beendet den Turn, ohne das Modell aufzurufen, und die Sitzung bleibt nutzbar. Die Ablehnung kommt als informative Nachricht und als Ergebnistext des Turns an: `Blank prompt — the message was only whitespace, so nothing was sent to the model.`

3349 3374 

3350Vor v2.1.229 hat Claude Code die Whitespace-only-Nachricht an die API gesendet, die die Anfrage mit einem 400-Fehler abgelehnt hat.3375Vor v2.1.229 sendete Claude Code die Nachricht, die nur Leerraum enthielt, an die API, die die Anfrage mit einem 400-Fehler ablehnte.

3351 3376 

3352**Was zu tun ist:**3377**Was zu tun ist:**

3353 3378 

3354* Fügen Sie sichtbaren Text in die Eingabeaufforderung ein. Wenn ein Skript die Eingabeaufforderung aus einer Variablen oder Datei erstellt, überprüfen Sie, dass die Quelle nicht leer ist, bevor Sie Claude Code aufrufen.3379* Fügen Sie sichtbaren Text in den Prompt ein. Wenn ein Skript den Prompt aus einer Variablen oder Datei erstellt, prüfen Sie vor dem Aufruf von Claude Code, ob die Quelle nicht leer ist.

3355 3380 

3356<h3 id="stream-json-input-carried-over-256m-characters-with-no-newline">3381<h3 id="stream-json-input-carried-over-256m-characters-with-no-newline">

3357 stream-json-Eingabe trug über 256M Zeichen ohne Zeilenumbruch3382 stream-json-Eingabe enthielt über 256M Zeichen ohne Zeilenumbruch

3358</h3>3383</h3>

3359 3384 

3360Ihr Programm hat mehr als 268.435.456 Zeichen auf stdin ohne Zeilenumbruch an einen `claude -p --input-format stream-json`-Lauf gesendet, daher druckt Claude Code diesen Fehler auf stderr und beendet sich mit Code 1, anstatt mehr Eingabe zu puffern. Die Meldung gibt dieses Budget als `256M` an. Vor v2.1.257 hat Claude Code solche Eingaben ohne Limit gepuffert, was den Speicher vergrößert hat, bis der Prozess abstürzte oder beendet wurde.3385Ihr Programm hat mehr als 268.435.456 Zeichen ohne Zeilenumbruch über stdin an eine `claude -p --input-format stream-json`-Ausführung gesendet, daher gibt Claude Code diesen Fehler auf stderr aus und beendet sich mit Exit-Code 1, anstatt weitere Eingaben zu puffern. Die Meldung gibt dieses Budget als `256M` an. Vor v2.1.257 pufferte Claude Code solche Eingaben ohne Begrenzung, wodurch der Speicherverbrauch wuchs, bis der Prozess abstürzte oder beendet wurde.

3361 3386 

3362```text theme={null}3387```text theme={null}

3363Error: stream-json input carried over 256M characters with no newline. Each stream-json message must be a single newline-terminated JSON line: either the producer is not newline-terminating its messages, or one message exceeded this budget.3388Error: stream-json input carried over 256M characters with no newline. Each stream-json message must be a single newline-terminated JSON line: either the producer is not newline-terminating its messages, or one message exceeded this budget.

3364```3389```

3365 3390 

3366Eingabe dieser Länge ohne Zeilenumbruch bedeutet normalerweise, dass der Producer überhaupt kein stream-json-Producer ist, wie eine Binärdatei oder einfache Log-Ausgabe, die versehentlich gepipet wird. Eine einzelne Nachricht über dem Budget schlägt dieselbe Überprüfung fehl.3391Eine so lange Eingabe ohne Zeilenumbruch bedeutet in der Regel, dass der Erzeuger überhaupt kein stream-json-Erzeuger ist, etwa eine Binärdatei oder einfache Log-Ausgabe, die versehentlich per Pipe übergeben wurde. Eine einzelne Nachricht über dem Budget scheitert an derselben Prüfung.

3367 3392 

3368**Was zu tun ist:**3393**Was zu tun ist:**

3369 3394 

3370* Überprüfen Sie, was auf stdin gepipet wird. Mit [`--input-format stream-json`](/docs/de/cli-reference#cli-flags) muss jede Nachricht eine Zeilenumbruch-terminierte JSON-Zeile sein3395* Prüfen Sie, was per Pipe an stdin übergeben wird. Mit [`--input-format stream-json`](/docs/de/cli-reference#cli-flags) muss jede Nachricht eine einzelne, mit Zeilenumbruch abgeschlossene JSON-Zeile sein

3371* Um stattdessen einfachen Text zu senden, lassen Sie `--input-format stream-json` weg; `claude -p` liest standardmäßig eine einfache Text-Eingabeaufforderung von stdin3396* Um stattdessen einfachen Text zu senden, entfernen Sie `--input-format stream-json`; `claude -p` liest standardmäßig einen Klartext-Prompt von stdin

3372 3397 

3373<h3 id="unknown-command">3398<h3 id="unknown-command">

3374 Unbekannter Befehl3399 Unknown command

3375</h3>3400</h3>

3376 3401 

3377In einer interaktiven Terminal-Sitzung haben Sie einen `/`-Namen eingereicht, der keinem Befehl in dieser Sitzung entspricht, daher meldet Claude Code den Namen, anstatt etwas auszuführen:3402In einer interaktiven Terminalsitzung haben Sie einen `/`-Namen abgesendet, der keinem Befehl in dieser Sitzung entspricht, daher meldet Claude Code den Namen, anstatt etwas auszuführen:

3378 3403 

3379```text theme={null}3404```text theme={null}

3380Unknown command: /hepl. Did you mean /help?3405Unknown command: /hepl. Did you mean /help?

3381```3406```

3382 3407 

3383Claude Code schlägt den nächsten Befehlsnamen oder Alias vor, den das Menü in dieser Sitzung auflistet. Wenn nichts nah ist, endet die Meldung nach dem Namen. Die Ursache ist normalerweise eine der folgenden:3408Claude Code schlägt den nächstliegenden Befehlsnamen oder Alias vor, den das Menü in dieser Sitzung auflistet. Wenn nichts ähnlich ist, endet die Meldung nach dem Namen. Die Ursache ist in der Regel eine der folgenden:

3384 3409 

3385* Ein Tippfehler, wie `/hepl` für `/help`. [Wie das Befehlsmenü das, was Sie eingeben, abgleicht](/docs/de/commands#how-the-command-menu-matches-what-you-type) behandelt das Auswählen einer nahen Übereinstimmung, bevor Sie einreichen3410* Ein Tippfehler, etwa `/hepl` statt `/help`. [Wie das Befehlsmenü Ihre Eingabe abgleicht](/docs/de/commands#how-the-command-menu-matches-what-you-type) beschreibt, wie Sie vor dem Absenden einen ähnlichen Treffer auswählen

3386* Ein Befehl, der existiert, aber in dieser Sitzung nicht verfügbar ist, weil eine Anforderung nicht erfüllt ist, wie Ihre Plattform, Ihr Plan oder Ihre Authentifizierungsmethode. Die Troubleshooting-Einträge für [`/web-setup`](/docs/de/web-quickstart#web-setup-shows-no-commands-match-or-unknown-command) und [`/schedule`](/docs/de/routines#schedule-returns-unknown-command) gehen durch zwei häufige Fälle. Einige Befehle antworten mit ihrer eigenen Meldung, wenn die Richtlinie Ihrer Organisation sie deaktiviert, wie [`Cloud sessions are disabled by your organization's policy`](#cloud-sessions-are-disabled-by-your-organizations-policy)3411* Ein Befehl, der existiert, aber in dieser Sitzung nicht verfügbar ist, weil eine Voraussetzung nicht erfüllt ist, etwa Ihre Plattform, Ihr Plan oder Ihre Authentifizierungsmethode. Die Einträge zur Fehlerbehebung für [`/web-setup`](/docs/de/web-quickstart#web-setup-shows-no-commands-match-or-unknown-command) und [`/schedule`](/docs/de/routines#schedule-returns-unknown-command) erläutern zwei häufige Fälle. Einige Befehle antworten mit einer eigenen Meldung, wenn die Richtlinie Ihrer Organisation sie deaktiviert, etwa [`Cloud sessions are disabled by your organization's policy`](#cloud-sessions-are-disabled-by-your-organizations-policy)

3387* Ein Befehl aus einem [Plugin](/docs/de/plugins/overview) oder [MCP-Server](/docs/de/mcp#use-mcp-prompts-as-commands), der in dieser Sitzung nicht installiert oder verbunden ist3412* Ein Befehl aus einem [Plugin](/docs/de/plugins/overview) oder [MCP-Server](/docs/de/mcp#use-mcp-prompts-as-commands), das bzw. der in dieser Sitzung nicht installiert oder verbunden ist

3388 3413 

3389Claude Code antwortet auf einen nicht übereinstimmenden `/`-Namen auf diese Weise nur in einer interaktiven Terminal-Sitzung. In jeder anderen Sitzung sendet es die Eingabeaufforderung als normale Nachricht an Claude, mit einer Notiz, dass der Befehl nicht ausgeführt wurde, und einer Liste von Befehlen, die Claude in der Sitzung ausführen kann. Diese Sitzungen umfassen:3414Claude Code beantwortet einen nicht übereinstimmenden `/`-Namen nur in einer interaktiven Terminalsitzung auf diese Weise. In jeder anderen Sitzung sendet es den Prompt stattdessen als normale Nachricht an Claude, mit einem Hinweis, dass der Befehl nicht ausgeführt wurde, und einer Liste der Befehle, die Claude in der Sitzung ausführen kann. Zu diesen Sitzungen gehören:

3390 3415 

3391* `-p`-Läufe3416* `-p`-Ausführungen

3392* [Agent SDK](/docs/de/agent-sdk/overview)-Anwendungen3417* [Agent SDK](/docs/de/agent-sdk/overview)-Anwendungen

3393* Die Code-Registerkarte der [Desktop-App](/docs/de/desktop)3418* Der Code-Tab der [Desktop-App](/docs/de/desktop)

3394* Das Chat-Panel der [VS Code-Erweiterung](/docs/de/vs-code)3419* Das Chat-Panel der [VS Code-Erweiterung](/docs/de/vs-code)

3395* [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) und [Routinen](/docs/de/routines)3420* [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) und [Routinen](/docs/de/routines)

3396 3421 

3397Für einen integrierten Befehl, der in einer dieser Sitzungen nicht ausgeführt werden kann, antwortet Claude Code immer noch, dass der Befehl nicht verfügbar ist, anstatt ihn an Claude zu senden. Vor v2.1.274 sendeten nur Cloud-Sitzungen und Routinen einen nicht übereinstimmenden Namen an Claude. Vor v2.1.273 antworteten sie auch mit `Unknown command`.3422Bei einem integrierten Befehl, der in einer dieser Sitzungen nicht ausgeführt werden kann, antwortet Claude Code weiterhin, dass der Befehl nicht verfügbar ist, anstatt ihn an Claude zu senden. Vor v2.1.274 sendeten nur Cloud-Sitzungen und Routinen einen nicht übereinstimmenden Namen an Claude. Vor v2.1.273 antworteten auch sie mit `Unknown command`.

3398 3423 

3399Claude Code behandelt nicht jeden Prompt, der mit `/` beginnt, als Befehl. Es sendet die Eingabeaufforderung als normale Nachricht an Claude, wenn das erste Wort nach dem `/` mit Interpunktion beginnt, wie das `/--`, das einen Lean-Doc-Kommentar öffnet, oder ein Pfad wie `/var/log/syslog`.3424Claude Code behandelt nicht jeden Prompt, der mit `/` beginnt, als Befehl. Es sendet den Prompt als normale Nachricht an Claude, wenn das erste Wort nach dem `/` mit einem Satzzeichen beginnt, etwa das `/--`, das einen Lean-Dokumentationskommentar einleitet, oder ein Pfad wie `/var/log/syslog` ist.

3400 3425 

3401Vor v2.1.236 führte Claude Code, wenn Sie die Eingabetaste drückten, während das Befehlsmenü eine nahe Übereinstimmung für den Namen auflistete, den Sie eingegeben haben, diese Übereinstimmung aus, daher führte ein Tippfehler wie `/hepl` `/help` aus, anstatt diese Meldung zu erzeugen.3426Vor v2.1.236 führte Claude Code, wenn Sie `Enter` drückten, während das Befehlsmenü einen ähnlichen Treffer für den eingegebenen Namen auflistete, diesen Treffer aus, sodass ein Tippfehler wie `/hepl` `/help` ausführte, anstatt diese Meldung zu erzeugen.

3402 3427 

3403**Was zu tun ist:**3428**Was zu tun ist:**

3404 3429 

3405* Führen Sie den vorgeschlagenen Namen aus, oder geben Sie `/` gefolgt von Teil des Namens ein, um zu sehen, was in dieser Sitzung verfügbar ist3430* Führen Sie den vorgeschlagenen Namen aus, oder geben Sie `/` gefolgt von einem Teil des Namens ein, um zu sehen, was in dieser Sitzung verfügbar ist

3406* Wenn Claude Code einen dokumentierten Befehl als unbekannt meldet, überprüfen Sie seine Zeile in der [Befehlsreferenz](/docs/de/commands) auf die Anforderung, die er benennt3431* Wenn Claude Code einen dokumentierten Befehl als unbekannt meldet, prüfen Sie dessen Zeile in der [Befehlsreferenz](/docs/de/commands) auf die dort genannte Voraussetzung

3407 3432 

3408<h3 id="diff-is-too-large-for-ultrareview">3433<h3 id="diff-is-too-large-for-ultrareview">

3409 Diff ist zu groß für ultrareview3434 Diff ist zu groß für ultrareview

3410</h3>3435</h3>

3411 3436 

3412Der Diff zwischen Ihrem Branch und dem Base-Branch, einschließlich nicht committeter und gestaffelter Änderungen, überschreitet die Größenlimits für eine [ultrareview](/docs/de/ultrareview), daher weigern sich `/code-review ultra` und der `claude ultrareview`-Unterbefehl die Review, bevor die Cloud-Sitzung startet. Eine abgelehnte Review verwendet keinen kostenlosen Lauf und belastet keine Nutzungsguthaben. Die Meldung benennt die geltenden Limits, die Größe Ihres Diff und die Dateien, die die meisten geänderten Zeilen beitragen. Vor v2.1.216 zeigte die Meldung nur die rohen Diff-Statistiken.3437Der Diff zwischen Ihrem Branch und dem Basis-Branch, einschließlich nicht committeter und gestagter Änderungen, überschreitet die Größenlimits für ein [ultrareview](/docs/de/ultrareview), daher verweigern `/code-review ultra` und der Unterbefehl `claude ultrareview` das Review, bevor die Cloud-Sitzung startet. Ein abgelehntes Review verbraucht keine kostenlose Ausführung und verrechnet kein Nutzungsguthaben. Die Meldung nennt die geltenden Limits, die Größe Ihres Diffs und die Dateien, die die meisten geänderten Zeilen beitragen. Vor v2.1.216 zeigte die Meldung nur die rohen Diff-Statistiken.

3413 3438 

3414```text theme={null}3439```text theme={null}

3415Diff is too large for ultrareview: 812 files, 96,410 lines changed (limits: 500 files, 8,000 lines). Largest files: package-lock.json (41,904 lines), dist/bundle.js (18,210 lines), src/generated/api.ts (9,876 lines). Pass a closer base branch (`/code-review ultra <branch>`) to narrow the scope, or split the change.3440Diff is too large for ultrareview: 812 files, 96,410 lines changed (limits: 500 files, 8,000 lines). Largest files: package-lock.json (41,904 lines), dist/bundle.js (18,210 lines), src/generated/api.ts (9,876 lines). Pass a closer base branch (`/code-review ultra <branch>`) to narrow the scope, or split the change.

3416```3441```

3417 3442 

3418Das Überprüfen eines Pull Request wendet dieselben Limits an; diese Form der Meldung beginnt mit `PR #<N> is too large for ultrareview` und benennt die Datei und Zeilenzahlen des PR.3443Für das Review eines Pull Requests gelten dieselben Limits; diese Form der Meldung beginnt mit `PR #<N> is too large for ultrareview` und nennt die Datei- und Zeilenanzahl des PR.

3419 3444 

3420**Was zu tun ist:**3445**Was zu tun ist:**

3421 3446 

3422* Übergeben Sie einen Base-Branch, der näher an Ihrer Arbeit liegt, wie `/code-review ultra develop`, damit die Review nur den Diff gegen diesen Branch abdeckt3447* Übergeben Sie einen Basis-Branch, der näher an Ihrer Arbeit liegt, etwa `/code-review ultra develop`, sodass das Review nur den Diff gegen diesen Branch abdeckt

3423* Teilen Sie die Änderung in kleinere Branches auf und überprüfen Sie jeden. Die Dateien, die die Meldung benennt, tragen die meisten geänderten Zeilen bei, daher beginnen Sie damit, diese in ihren eigenen Branch zu verschieben.3448* Teilen Sie die Änderung in kleinere Branches auf und führen Sie für jeden ein Review durch. Die Dateien, die die Meldung nennt, tragen die meisten geänderten Zeilen bei, also verschieben Sie diese zuerst in einen eigenen Branch.

3424 3449 

3425<h3 id="could-not-find-merge-base-with-the-base-branch">3450<h3 id="could-not-find-merge-base-with-the-base-branch">

3426 Merge-Base mit dem Base-Branch konnte nicht gefunden werden3451 Merge-Base mit dem Basis-Branch konnte nicht gefunden werden

3427</h3>3452</h3>

3428 3453 

3429`/code-review ultra` und der `claude ultrareview`-Unterbefehl überprüfen den Diff zwischen Ihrem Branch und einem Base-Branch, was einen Commit erfordert, den die beiden teilen. Wenn `git merge-base` keinen findet, weigert sich Claude Code, die Review zu starten, bevor die Cloud-Sitzung startet. Bei einem Klon, den Claude Code als vollständig überprüfen kann, mit mindestens einem Branch, fällt es stattdessen auf [Überprüfung jeder verfolgten Datei](/docs/de/ultrareview#diff-limits-and-fallbacks) zurück. Sie sehen diese Ablehnung, wenn der Base-Branch überhaupt nicht gefunden werden kann, wenn Claude Code nicht überprüfen kann, dass Ihr Klon vollständig ist, oder im seltenen Repository, wo der Whole-Tree-Diff nicht möglich ist, wie das SHA-256-Objektformat.3454`/code-review ultra` und der Unterbefehl `claude ultrareview` prüfen den Diff zwischen Ihrem Branch und einem Basis-Branch, wofür ein Commit benötigt wird, den beide gemeinsam haben. Wenn `git merge-base` keinen findet, verweigert Claude Code das Review, bevor die Cloud-Sitzung startet. Bei einem Klon, dessen Vollständigkeit Claude Code überprüfen kann und der mindestens einen Branch hat, fällt es darauf zurück, [jede verfolgte Datei zu prüfen](/docs/de/ultrareview#diff-limits-and-fallbacks), anstatt abzulehnen. Sie sehen diese Ablehnung, wenn der Basis-Branch überhaupt nicht gefunden werden kann, wenn Claude Code nicht überprüfen kann, ob Ihr Klon vollständig ist, oder in dem seltenen Repository, in dem der Diff über den gesamten Baum nicht möglich ist, etwa beim SHA-256-Objektformat.

3430 3455 

3431```text theme={null}3456```text theme={null}

3432Could not find merge-base with main. Pass the base branch explicitly (e.g. `/code-review ultra develop`) or make sure you're in a git repo with a main branch.3457Could not find merge-base with main. Pass the base branch explicitly (e.g. `/code-review ultra develop`) or make sure you're in a git repo with a main branch.

3433```3458```

3434 3459 

3435Der Hinweis nach dem ersten Satz hängt davon ab, was Claude Code beobachtet hat:3460Der Hinweis nach dem ersten Satz hängt davon ab, was Claude Code festgestellt hat:

3436 3461 

3437* **Sie haben keinen Base-Branch übergeben**: Claude Code verglich gegen den Standard-Branch des Repository und schlägt vor, Ihren Base explizit zu übergeben, wie im Beispiel oben3462* **Sie haben keinen Basis-Branch übergeben**: Claude Code hat mit dem Standard-Branch des Repositorys verglichen und schlägt vor, Ihre Basis explizit zu übergeben, wie im obigen Beispiel

3438* **Sie haben einen Base-Branch übergeben, der bereits in Ihrem Klon war**: Der Hinweis lautet ``Make sure <branch> exists locally or on origin (try `git fetch origin <branch>`)``3463* **Sie haben einen Basis-Branch übergeben, der bereits in Ihrem Klon vorhanden war**: Der Hinweis lautet ``Make sure <branch> exists locally or on origin (try `git fetch origin <branch>`)``

3439* **Sie haben einen Base-Branch übergeben, der nicht in Ihrem Klon war**: Claude Code hat ihn von origin abgerufen, bevor es verglich. Der Hinweis lautet ``<branch> was fetched from origin but shares no history with HEAD. If another branch is your real base, pass it explicitly (`/code-review ultra <branch>`)``; wenn Claude Code nicht sagen kann, ob Ihr Klon flach ist, schlägt es stattdessen `git fetch --unshallow origin` vor. Vor v2.1.221 schlug der Hinweis `git fetch --unshallow origin` für jeden abgerufenen Base-Branch vor, und bei einem vollständigen Klon schlägt dieser Befehl mit `fatal: --unshallow on a complete repository does not make sense` fehl.3464* **Sie haben einen Basis-Branch übergeben, der nicht in Ihrem Klon vorhanden war**: Claude Code hat ihn vor dem Vergleich von origin abgerufen. Der Hinweis lautet ``<branch> was fetched from origin but shares no history with HEAD. If another branch is your real base, pass it explicitly (`/code-review ultra <branch>`)``; wenn Claude Code nicht feststellen kann, ob Ihr Klon shallow ist, schlägt es stattdessen `git fetch --unshallow origin` vor. Vor v2.1.221 schlug der Hinweis für jeden abgerufenen Basis-Branch `git fetch --unshallow origin` vor, und bei einem vollständigen Klon schlägt dieser Befehl mit `fatal: --unshallow on a complete repository does not make sense` fehl.

3440 3465 

3441**Was zu tun ist:**3466**Was zu tun ist:**

3442 3467 

3443* Wenn ein anderer Branch Ihr echter Base ist, übergeben Sie ihn explizit: `/code-review ultra <branch>`3468* Wenn ein anderer Branch Ihre eigentliche Basis ist, übergeben Sie ihn explizit: `/code-review ultra <branch>`

3444* Wenn Ihr Klon möglicherweise keine vollständige Historie hat, führen Sie `git fetch --unshallow origin` aus und führen Sie die Review erneut aus3469* Wenn Ihr Klon möglicherweise nicht die vollständige Historie enthält, führen Sie `git fetch --unshallow origin` aus und starten Sie das Review erneut

3445 3470 

3446<h3 id="your-checkout-has-no-branches">3471<h3 id="your-checkout-has-no-branches">

3447 Ihr Checkout hat keine Branches3472 Ihr Checkout hat keine Branches

3448</h3>3473</h3>

3449 3474 

3450Ein Checkout kann Commits haben, aber keine Branches: Wenn Sie `git init` gefolgt von `git fetch <url>` und `git checkout FETCH_HEAD` ausführen, erhalten Sie einen detached HEAD ohne Refs. Claude Code packt Ihr Repository als Git-Bundle, um es für eine [ultrareview](/docs/de/ultrareview) hochzuladen, und es kann ein Repository, das keine Branches oder andere Refs hat, nicht bündeln, daher weigern sich `/code-review ultra` und der `claude ultrareview`-Unterbefehl die Review, bevor die Cloud-Sitzung startet.3475Ein Checkout kann Commits, aber keine Branches haben: Wenn Sie `git init` gefolgt von `git fetch <url>` und `git checkout FETCH_HEAD` ausführen, erhalten Sie einen Detached HEAD ohne Refs. Claude Code verpackt Ihr Repository als Git-Bundle, um es für ein [ultrareview](/docs/de/ultrareview) hochzuladen, und kann kein Repository bündeln, das keine Branches oder anderen Refs hat, daher verweigern `/code-review ultra` und der Unterbefehl `claude ultrareview` das Review, bevor die Cloud-Sitzung startet.

3451 3476 

3452```text theme={null}3477```text theme={null}

3453Your checkout has no branches (detached HEAD only), which cloud review can't bundle. Create one first — `git checkout -b <name>` — then rerun /code-review ultra.3478Your checkout has no branches (detached HEAD only), which cloud review can't bundle. Create one first — `git checkout -b <name>` — then rerun /code-review ultra.

3454```3479```

3455 3480 

3456Vor v2.1.221 versuchte Claude Code, jede verffolgte Datei in diesem Checkout zu überprüfen, und der Upload schlug fehl.3481Vor v2.1.221 versuchte Claude Code, jede verfolgte Datei in diesem Checkout zu prüfen, und der Upload schlug fehl.

3457 3482 

3458**Was zu tun ist:**3483**Was zu tun ist:**

3459 3484 

3460* Erstellen Sie einen Branch bei Ihrem aktuellen Commit mit `git checkout -b <name>`, dann führen Sie die Review erneut aus3485* Erstellen Sie mit `git checkout -b <name>` einen Branch bei Ihrem aktuellen Commit und starten Sie das Review dann erneut

3461 3486 

3462<h3 id="no-github-account-is-connected-to-your-claude-account">3487<h3 id="no-github-account-is-connected-to-your-claude-account">

3463 Kein GitHub-Konto ist mit Ihrem Claude-Konto verbunden3488 Mit Ihrem Claude-Konto ist kein GitHub-Konto verbunden

3464</h3>3489</h3>

3465 3490 

3466Sie haben `/code-review ultra <PR#>` oder `claude ultrareview <PR#>` ausgeführt, und bevor die Cloud-Sitzung erstellt wird, fragt Claude Code den Server, ob [das GitHub-Konto, das mit Ihrem Claude-Konto verbunden ist](/docs/de/ultrareview#review-a-pull-request), das Repository des PR erreichen kann. Kein Konto ist verbunden oder die Verbindung ist abgelaufen, daher würde der Cloud-Klon fehlschlagen und Claude Code weigert sich zu starten. Claude Code gibt keinen kostenlosen Lauf aus und belastet keine Nutzungsguthaben für einen abgelehnten Start.3491Sie haben `/code-review ultra <PR#>` oder `claude ultrareview <PR#>` ausgeführt, und vor dem Erstellen der Cloud-Sitzung fragt Claude Code den Server, ob [das mit Ihrem Claude-Konto verbundene GitHub-Konto](/docs/de/ultrareview#review-a-pull-request) auf das Repository des PR zugreifen kann. Es ist kein Konto verbunden, oder die Verbindung ist abgelaufen, daher würde der Klon in der Cloud fehlschlagen, und Claude Code verweigert den Start. Claude Code verbraucht für einen verweigerten Start keine kostenlose Ausführung und verrechnet kein Nutzungsguthaben.

3467 3492 

3468```text theme={null}3493```text theme={null}

3469Ultrareview clones <owner>/<repo> in the cloud with the GitHub account connected to your Claude account, and none is connected (or the connection expired). To fix: run /web-setup to reuse your GitHub CLI login, or connect an account at https://claude.ai/connect-github — then re-run /code-review ultra 1234 (allow a minute after connecting).3494Ultrareview clones <owner>/<repo> in the cloud with the GitHub account connected to your Claude account, and none is connected (or the connection expired). To fix: run /web-setup to reuse your GitHub CLI login, or connect an account at https://claude.ai/connect-github — then re-run /code-review ultra 1234 (allow a minute after connecting).

3470```3495```

3471 3496 

3472Wenn [`/web-setup`](/docs/de/web-quickstart#connect-from-your-terminal) in Ihrer Sitzung nicht verfügbar ist, benennt die Meldung nur den claude.ai-Link.3497Wenn [`/web-setup`](/docs/de/web-quickstart#connect-from-your-terminal) in Ihrer Sitzung nicht verfügbar ist, nennt die Meldung nur den claude.ai-Link.

3473 3498 

3474**Was zu tun ist:**3499**Was zu tun ist:**

3475 3500 

3476* Führen Sie `/web-setup` aus, um Ihre GitHub CLI-Anmeldung mit Ihrem Claude-Konto zu verbinden, oder verbinden Sie ein Konto unter [claude.ai/connect-github](https://claude.ai/connect-github)3501* Führen Sie `/web-setup` aus, um Ihre GitHub CLI-Anmeldung mit Ihrem Claude-Konto zu verbinden, oder verbinden Sie ein Konto unter [claude.ai/connect-github](https://claude.ai/connect-github)

3477* Führen Sie die Review eine Minute nach der Verbindung erneut aus3502* Starten Sie das Review eine Minute nach dem Verbinden erneut

3478 3503 

3479Vor v2.1.248 überprüfte Claude Code dies nicht vor dem Start.3504Vor v2.1.248 prüfte Claude Code dies nicht vor dem Start.

3480 3505 

3481<h3 id="your-connected-github-account-cant-see-the-repository">3506<h3 id="your-connected-github-account-cant-see-the-repository">

3482 Ihr verbundenes GitHub-Konto kann das Repository nicht sehen3507 Ihr verbundenes GitHub-Konto kann das Repository nicht sehen

3483</h3>3508</h3>

3484 3509 

3485Sie haben `/code-review ultra <PR#>` oder `claude ultrareview <PR#>` ausgeführt, und [das GitHub-Konto, das mit Ihrem Claude-Konto verbunden ist](/docs/de/ultrareview#review-a-pull-request), kann das Repository des PR nicht lesen, daher würde der Cloud-Klon fehlschlagen und Claude Code weigert sich zu starten. Claude Code gibt keinen kostenlosen Lauf aus und belastet keine Nutzungsguthaben für einen abgelehnten Start.3510Sie haben `/code-review ultra <PR#>` oder `claude ultrareview <PR#>` ausgeführt, und [das mit Ihrem Claude-Konto verbundene GitHub-Konto](/docs/de/ultrareview#review-a-pull-request) kann das Repository des PR nicht lesen, daher würde der Klon in der Cloud fehlschlagen, und Claude Code verweigert den Start. Claude Code verbraucht für einen verweigerten Start keine kostenlose Ausführung und verrechnet kein Nutzungsguthaben.

3486 3511 

3487```text theme={null}3512```text theme={null}

3488Your connected GitHub account can't see <owner>/<repo> — usually the Claude GitHub app isn't installed on <owner> or wasn't granted this repo (web-connected accounts need it for private repos), or a different GitHub account is connected. To fix: run /web-setup to reuse your GitHub CLI login, or install the app at https://github.com/apps/claude/installations/new — then re-run /code-review ultra 1234.3513Your connected GitHub account can't see <owner>/<repo> — usually the Claude GitHub app isn't installed on <owner> or wasn't granted this repo (web-connected accounts need it for private repos), or a different GitHub account is connected. To fix: run /web-setup to reuse your GitHub CLI login, or install the app at https://github.com/apps/claude/installations/new — then re-run /code-review ultra 1234.

3489```3514```

3490 3515 

3491Wenn [`/web-setup`](/docs/de/web-quickstart#connect-from-your-terminal) in Ihrer Sitzung nicht verfügbar ist, benennt die Meldung nur die App-Installation.3516Wenn [`/web-setup`](/docs/de/web-quickstart#connect-from-your-terminal) in Ihrer Sitzung nicht verfügbar ist, nennt die Meldung nur die App-Installation.

3492 3517 

3493**Was zu tun ist:**3518**Was zu tun ist:**

3494 3519 

3495* Wenn Ihre lokale `gh`-CLI das Repository lesen kann, führen Sie `/web-setup` aus, um diese Anmeldung mit Ihrem Claude-Konto zu verbinden3520* Wenn Ihre lokale `gh`-CLI das Repository lesen kann, führen Sie `/web-setup` aus, um diese Anmeldung mit Ihrem Claude-Konto zu verbinden

3496* Führen Sie die Review nach der Änderung erneut aus3521* Starten Sie das Review nach der Änderung erneut

3497 3522 

3498Vor v2.1.248 überprüfte Claude Code dies nicht vor dem Start.3523Vor v2.1.248 prüfte Claude Code dies nicht vor dem Start.

3499 3524 

3500<h3 id="the-github-app-preflight-failed-transiently">3525<h3 id="the-github-app-preflight-failed-transiently">

3501 Der GitHub-App-Preflight ist vorübergehend fehlgeschlagen3526 Die GitHub-App-Vorabprüfung ist vorübergehend fehlgeschlagen

3502</h3>3527</h3>

3503 3528 

3504Sie haben eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web) aus einem lokalen Repository gestartet, und zwei Schritte sind zusammen fehlgeschlagen. Claude Code konnte das Bundle Ihres Repository nicht erstellen oder hochladen. Bevor der Upload, überprüfte es, ob der Cloud-Service das Repository von GitHub klonen kann, und anstatt einer definitiven Antwort endete diese Überprüfung in einem Fehler, den ein erneuter Versuch klären könnte, wie ein Netzwerkfehler, ein Timeout oder ein vorübergehender Serverfehler. Die vollständige Meldung beginnt mit dem, was das Bundle gestoppt hat, z. B. `Could not upload repo bundle (<error>)`, und endet mit dem Preflight-Satz:3529Sie haben eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web) aus einem lokalen Repository gestartet, und zwei Schritte sind gemeinsam fehlgeschlagen. Claude Code konnte das Bundle Ihres Repositorys nicht erstellen oder hochladen. Vor dem Upload prüfte es, ob der Cloud-Dienst das Repository von GitHub klonen kann, und anstelle einer eindeutigen Antwort endete diese Prüfung mit einem Fehler, den ein erneuter Versuch beheben könnte, etwa einem Netzwerkfehler, einem Timeout oder einem vorübergehenden Serverfehler. Die vollständige Meldung beginnt mit dem, was das Bundle verhindert hat, zum Beispiel `Could not upload repo bundle (<error>)`, und endet mit dem Satz zur Vorabprüfung:

3505 3530 

3506```text theme={null}3531```text theme={null}

3507Could not upload repo bundle (<error>). The GitHub App preflight failed transiently (network or service hiccup) — retry in a moment to start from GitHub instead3532Could not upload repo bundle (<error>). The GitHub App preflight failed transiently (network or service hiccup) — retry in a moment to start from GitHub instead


3509 3534 

3510**Was zu tun ist:**3535**Was zu tun ist:**

3511 3536 

3512* Führen Sie den Befehl nach einem Moment erneut aus. Wenn die GitHub-Überprüfung besteht, kann Claude Code die Sitzung von einem GitHub-Klon starten, daher blockiert der fehlgeschlagene Upload den Start nicht mehr3537* Führen Sie den Befehl nach einem Moment erneut aus. Wenn die GitHub-Prüfung erfolgreich ist, kann Claude Code die Sitzung aus einem GitHub-Klon starten, sodass der fehlgeschlagene Upload den Start nicht mehr blockiert

3513* Wenn erneute Versuche weiterhin fehlschlagen, benennt der Anfang der Meldung, was den Upload gestoppt hat. Wenn diese Ursache etwas ist, das Sie beheben können, beheben Sie es, damit die Sitzung stattdessen von Ihrem lokalen Repository starten kann3538* Wenn die Wiederholungsversuche weiterhin fehlschlagen, nennt der Anfang der Meldung, was den Upload verhindert hat. Wenn Sie diese Ursache beheben können, beheben Sie sie, damit die Sitzung stattdessen aus Ihrem lokalen Repository starten kann

3514 3539 

3515Vor v2.1.251 endete Claude Code die Meldung mit `Please set up GitHub on https://claude.ai/code`, auch wenn die GitHub-Überprüfung nur vorübergehend fehlgeschlagen ist, und Setup-Ratschläge können einen vorübergehenden Fehler nicht klären.3540Vor v2.1.251 beendete Claude Code die Meldung mit `Please set up GitHub on https://claude.ai/code`, selbst wenn die GitHub-Prüfung nur vorübergehend fehlschlug, und ein Einrichtungshinweis kann einen vorübergehenden Fehler nicht beheben.

3516 3541 

3517<h3 id="the-repository-upload-cant-follow-a-git-setting">3542<h3 id="the-repository-upload-cant-follow-a-git-setting">

3518 Die Repository-Upload kann eine Git-Einstellung nicht befolgen3543 Der Repository-Upload kann einer Git-Einstellung nicht folgen

3519</h3>3544</h3>

3520 3545 

3521Sie haben eine [Cloud-Sitzung, die Ihr lokales Repository hochlädt](/docs/de/claude-code-on-the-web#send-local-repositories-without-github), oder eine [ultrareview](/docs/de/ultrareview) eines Branch gestartet, und der Upload kann eine der Git-Einstellungen nicht befolgen, die entscheiden, welche Attribut-Regeln auf Ihre Dateien angewendet werden. Wenn der Upload fortgefahren wäre und eine Regel verpasst hätte, könnte eine Datei, die Git vor dem Speichern transformiert, wie eine, die ein Clean-Filter verschlüsselt, die Cloud als auf der Festplatte erreichen. Claude Code weigert sich, den Upload durchzuführen, und nichts wird hochgeladen:3546Sie haben eine [Cloud-Sitzung gestartet, die Ihr lokales Repository hochlädt](/docs/de/claude-code-on-the-web#send-local-repositories-without-github), oder ein [ultrareview](/docs/de/ultrareview) eines Branches, und der Upload kann einer der Git-Einstellungen nicht folgen, die festlegen, welche Attributregeln für Ihre Dateien gelten. Würde der Upload fortgesetzt und eine Regel übersehen, könnte eine Datei, die Git vor dem Speichern umwandelt, etwa eine, die ein Clean-Filter verschlüsselt, so in die Cloud gelangen, wie sie auf der Festplatte liegt. Claude Code verweigert stattdessen den Upload, und nichts wird hochgeladen:

3522 3547 

3523```text theme={null}3548```text theme={null}

3524Not uploading this working tree: core.ignoreCase (which decides whether .gitattributes patterns match file names regardless of letter case) is set in <file>, and the upload cannot follow that setting, so a file git would change before storing it (to encrypt it, for example) could be uploaded as it is on disk. Move the core.ignoreCase line into this repository's .git/config or directly into your ~/.gitconfig, then retry.3549Not uploading this working tree: core.ignoreCase (which decides whether .gitattributes patterns match file names regardless of letter case) is set in <file>, and the upload cannot follow that setting, so a file git would change before storing it (to encrypt it, for example) could be uploaded as it is on disk. Move the core.ignoreCase line into this repository’s .git/config or directly into your ~/.gitconfig, then retry.

3525```3550```

3526 3551 

3527Die Meldung benennt die Einstellung und wo sie gesetzt ist, und endet mit der Lösung für den Fall, den Sie treffen. Die gleiche Ablehnung erscheint für `core.attributesFile` und `attr.tree`, jeweils mit ihrer eigenen Lösung.3552Die Meldung nennt die Einstellung und wo sie gesetzt ist, und endet mit der Lösung für den aufgetretenen Fall. Dieselbe Ablehnung erscheint für `core.attributesFile` und `attr.tree`, jeweils mit eigener Lösung.

3528 3553 

3529Die Meldung kann eine Konfigurationsdatei benennen, die Ihre Git-Konfiguration durch eine `include` oder `includeIf`-Direktive einzieht, auch wenn die Bedingung dieser Direktive nicht auf dieses Repository angewendet wird.3554Die Meldung kann eine Konfigurationsdatei nennen, die Ihre Git-Konfiguration über eine `include`- oder `includeIf`-Direktive einbindet, selbst wenn die Bedingung dieser Direktive für dieses Repository nicht zutrifft.

3530 3555 

3531**Was zu tun ist:**3556**Was zu tun ist:**

3532 3557 

3533* Wenden Sie die Lösung in der letzten Zeile der Meldung an3558* Wenden Sie die Lösung aus dem letzten Satz der Meldung an

3534 3559 

3535<h3 id="github-isnt-connected-to-your-claude-account">3560<h3 id="github-isnt-connected-to-your-claude-account">

3536 GitHub ist nicht mit Ihrem Claude-Konto verbunden3561 GitHub ist nicht mit Ihrem Claude-Konto verbunden

3537</h3>3562</h3>

3538 3563 

3539Sie haben eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web) aus Ihrem lokalen Repository gestartet, z. B. mit `/autofix-pr`. Kein GitHub-Konto ist mit Ihrem Claude-Konto verbunden oder die Verbindung ist abgelaufen, daher weigert sich Claude Code zu starten:3564Sie haben eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web) aus Ihrem lokalen Repository gestartet, zum Beispiel mit `/autofix-pr`. Mit Ihrem Claude-Konto ist kein GitHub-Konto verbunden, oder die Verbindung ist abgelaufen, daher verweigert Claude Code den Start:

3540 3565 

3541```text theme={null}3566```text theme={null}

3542GitHub isn't connected to your Claude account, so this repository can't be cloned in the cloud. Run /web-setup to connect with your GitHub CLI login, or connect on the web at https://claude.ai/connect-github3567GitHub isn't connected to your Claude account, so this repository can't be cloned in the cloud. Run /web-setup to connect with your GitHub CLI login, or connect on the web at https://claude.ai/connect-github

3543```3568```

3544 3569 

3545Wenn Sie eine Routine mit [`/schedule`](/docs/de/routines) erstellen, erscheint dieselbe Meldung als Setup-Notiz, die das Repository benennt; die Notiz blockiert nicht das Erstellen der Routine.3570Wenn Sie eine Routine mit [`/schedule`](/docs/de/routines) erstellen, erscheint dieselbe Meldung als Einrichtungshinweis, der das Repository nennt; der Hinweis blockiert das Erstellen der Routine nicht.

3546 3571 

3547**Was zu tun ist:**3572**Was zu tun ist:**

3548 3573 

3549* Führen Sie `/web-setup` aus, um Ihre GitHub CLI-Anmeldung mit Ihrem Claude-Konto zu verbinden, oder verbinden Sie ein Konto unter [claude.ai/connect-github](https://claude.ai/connect-github). Siehe [GitHub-Authentifizierungsoptionen](/docs/de/claude-code-on-the-web#github-authentication-options) für wie die beiden sich unterscheiden.3574* Führen Sie `/web-setup` aus, um Ihre GitHub CLI-Anmeldung mit Ihrem Claude-Konto zu verbinden, oder verbinden Sie ein Konto unter [claude.ai/connect-github](https://claude.ai/connect-github). Unter [GitHub-Authentifizierungsoptionen](/docs/de/claude-code-on-the-web#github-authentication-options) erfahren Sie, wie sich die beiden unterscheiden.

3550* Führen Sie den Befehl eine Minute nach der Verbindung erneut aus3575* Führen Sie den Befehl eine Minute nach dem Verbinden erneut aus

3551 3576 

3552Vor v2.1.268 meldete Claude Code dies als vorübergehenden Fehler der Claude GitHub-App-Überprüfung und schlug vor, erneut zu versuchen oder die App zu installieren; keiner verbindet ein GitHub-Konto.3577Vor v2.1.268 meldete Claude Code dies als vorübergehenden Fehler der Claude GitHub App-Prüfung und schlug vor, es erneut zu versuchen oder die App zu installieren; keines von beiden verbindet ein GitHub-Konto.

3553 3578 

3554<h3 id="single-sign-on-authorization-needed">3579<h3 id="single-sign-on-authorization-needed">

3555 Single-Sign-On-Autorisierung erforderlich3580 Single-Sign-On-Autorisierung erforderlich

3556</h3>3581</h3>

3557 3582 

3558Sie haben [`/install-github-app`](/docs/de/github-actions#quick-setup) ausgeführt und ein Repository ausgewählt, dessen Organisation SAML-Single-Sign-On erzwingt. Bevor das Setup, überprüft Claude Code Ihren Zugriff auf das Repository mit der GitHub CLI, und GitHub lehnte diese Überprüfung ab, weil Ihr `gh`-Token noch nicht für die Organisation autorisiert ist. Der Assistent zeigt die Warnung mit den Schritten zur Autorisierung:3583Sie haben [`/install-github-app`](/docs/de/github-actions#quick-setup) ausgeführt und ein Repository gewählt, dessen Organisation SAML-Single-Sign-On erzwingt. Vor der Einrichtung prüft Claude Code Ihren Zugriff auf das Repository mit der GitHub CLI, und GitHub hat diese Prüfung abgelehnt, weil Ihr `gh`-Token noch nicht für die Organisation autorisiert ist. Der Assistent zeigt die Warnung mit den Schritten zur Autorisierung an:

3559 3584 

3560```text theme={null}3585```text theme={null}

3561Single sign-on authorization needed3586Single sign-on authorization needed


3564 3589 

3565**Was zu tun ist:**3590**Was zu tun ist:**

3566 3591 

3567* Autorisieren Sie Ihre GitHub CLI-Anmeldung mit den `repo`- und `workflow`-Bereichen erneut, indem Sie `gh auth refresh -h github.com -s repo,workflow` ausführen, und autorisieren Sie die Organisation, wenn GitHub zur Single-Sign-On auffordert3592* Autorisieren Sie Ihre GitHub CLI-Anmeldung mit den Scopes `repo` und `workflow` erneut, indem Sie `gh auth refresh -h github.com -s repo,workflow` ausführen, und autorisieren Sie die Organisation, wenn GitHub zur Single-Sign-On-Anmeldung auffordert

3568* Wenn Sie sich mit einem persönlichen Zugangstoken in `GH_TOKEN` authentifizieren, öffnen Sie [github.com/settings/tokens](https://github.com/settings/tokens), wählen Sie **Configure SSO** auf dem Token und autorisieren Sie die Organisation3593* Wenn Sie sich mit einem Personal Access Token in `GH_TOKEN` authentifizieren, öffnen Sie [github.com/settings/tokens](https://github.com/settings/tokens), wählen Sie beim Token **Configure SSO** aus und autorisieren Sie die Organisation

3569* Führen Sie `/install-github-app` erneut aus3594* Führen Sie `/install-github-app` erneut aus

3570 3595 

3571Vor v2.1.273 zeigte Claude Code die Warnung `Admin permissions required` für diese Bedingung statt.3596Vor v2.1.273 zeigte Claude Code für diesen Zustand stattdessen die Warnung `Admin permissions required` an.

3572 3597 

3573<h3 id="failed-to-resume-the-conversation">3598<h3 id="failed-to-resume-the-conversation">

3574 Konversation konnte nicht fortgesetzt werden3599 Die Konversation konnte nicht fortgesetzt werden

3575</h3>3600</h3>

3576 3601 

3577Claude Code konnte das gespeicherte Transkript für die Sitzung, die Sie aus der [`claude --resume`-Auswahl](/docs/de/sessions#use-the-session-picker) ausgewählt haben, nicht lesen oder verarbeiten, daher beendet es den Prozess, anstatt in einem teilweise geladenen Zustand fortzufahren. Die Meldung enthält den Befehl zum erneuten Versuchen:3602Claude Code konnte das gespeicherte Transkript der Sitzung, die Sie in der [`claude --resume`-Auswahl](/docs/de/sessions#use-the-session-picker) ausgewählt haben, nicht lesen oder verarbeiten, daher beendet es den Prozess, anstatt in einem teilweise geladenen Zustand fortzufahren. Die Meldung enthält den Befehl für einen erneuten Versuch:

3578 3603 

3579```text theme={null}3604```text theme={null}

3580Failed to resume the conversation.3605Failed to resume the conversation.

3581Run claude --resume <session-id> to retry, or claude to start a new session.3606Run claude --resume <session-id> to retry, or claude to start a new session.

3582```3607```

3583 3608 

3584Claude Code beendet sich mit Code 1 nach Anzeige der Meldung. Die `/resume`-Auswahl in einer laufenden Sitzung meldet `Failed to resume conversation` in der Konversation statt, und Ihre aktuelle Sitzung läuft weiter. Vor v2.1.216 blieb ein fehlgeschlagenes Resume aus der `claude --resume`-Auswahl auf dem `Resuming conversation…`-Spinner unbegrenzt, anstatt diese Meldung anzuzeigen.3609Claude Code beendet sich nach der Anzeige der Meldung mit Exit-Code 1. Die `/resume`-Auswahl innerhalb einer laufenden Sitzung meldet stattdessen `Failed to resume conversation` in der Konversation, und Ihre aktuelle Sitzung läuft weiter. Vor v2.1.216 blieb ein fehlgeschlagenes Fortsetzen aus der `claude --resume`-Auswahl unbegrenzt beim Spinner `Resuming conversation…` hängen, anstatt diese Meldung anzuzeigen.

3585 3610 

3586**Was zu tun ist:**3611**Was zu tun ist:**

3587 3612 

3588* Führen Sie `claude --resume <session-id>` mit der Sitzungs-ID aus der Meldung aus, um erneut zu versuchen3613* Führen Sie `claude --resume <session-id>` mit der Sitzungs-ID aus der Meldung aus, um es erneut zu versuchen

3589* Wenn jeder erneute Versuch auf die gleiche Weise fehlschlägt, führen Sie `claude update` aus und setzen Sie fort. Versionen vor v2.1.275 schlagen das Resume fehl, wenn das gespeicherte Transkript einen Eintrag enthält, den sie nicht lesen können.3614* Wenn jeder erneute Versuch auf dieselbe Weise fehlschlägt, führen Sie `claude update` aus und setzen Sie die Sitzung erneut fort. Versionen vor v2.1.275 lassen das Fortsetzen fehlschlagen, wenn das gespeicherte Transkript einen Eintrag enthält, den sie nicht lesen können.

3590* Wenn der erneute Versuch erneut fehlschlägt, führen Sie `claude` aus, um eine neue Sitzung zu starten3615* Wenn der erneute Versuch wieder fehlschlägt, führen Sie `claude` aus, um eine neue Sitzung zu starten

3591 3616 

3592<h3 id="no-conversation-found-with-the-session-id">3617<h3 id="no-conversation-found-with-the-session-id">

3593 Keine Konversation mit der Sitzungs-ID gefunden3618 Keine Konversation mit der Sitzungs-ID gefunden

3594</h3>3619</h3>

3595 3620 

3596Sie haben eine Sitzungs-ID an `claude --resume <session-id>` übergeben und kein gespeichertes Transkript stimmte überein:3621Sie haben eine Sitzungs-ID an `claude --resume <session-id>` übergeben, und kein gespeichertes Transkript stimmte damit überein:

3597 3622 

3598```text theme={null}3623```text theme={null}

3599No conversation found with session ID: <session-id>3624No conversation found with session ID: <session-id>

3600```3625```

3601 3626 

3602Claude Code beendet sich mit Code 1 nach Anzeige der Meldung. Claude Code [durchsucht zuerst das aktuelle Projekt, dann jedes andere Projekt auf dieser Maschine](/docs/de/sessions#resume-a-session) nach der ID. Vor v2.1.223 stoppte die Suche im aktuellen Projektverzeichnis und seinen Git-Worktrees, daher Resume aus dem Verzeichnis, in dem die Sitzung zuletzt funktionierte.3627Claude Code beendet sich nach der Anzeige der Meldung mit Exit-Code 1. Claude Code [durchsucht zuerst das aktuelle Projekt und dann jedes andere Projekt auf diesem Rechner](/docs/de/sessions#resume-a-session) nach der ID. Vor v2.1.223 beschränkte sich die Suche auf das aktuelle Projektverzeichnis und dessen Git-Worktrees, setzen Sie die Sitzung also aus dem Verzeichnis fort, in dem sie zuletzt gearbeitet hat.

3603 3628 

3604Häufige Ursachen:3629Häufige Ursachen:

3605 3630 

3606* **Falsch eingegebene ID**: Für einen nicht interaktiven Lauf ist die ID das `session_id`-Feld der [`--output-format json`-Ausgabe](/docs/de/headless#get-structured-output)3631* **Falsch eingegebene ID**: Bei einer nicht interaktiven Ausführung ist die ID das Feld `session_id` der [`--output-format json`-Ausgabe](/docs/de/headless#get-structured-output)

3607* **Gelöschtes Transkript**: Claude Code entfernt Transkripte nach der [Aufbewahrungsfrist](/docs/de/sessions#where-transcripts-are-stored), 30 Tage standardmäßig, nach den [Aufbewahrungssweep-Regeln](/docs/de/claude-directory#cleaned-up-automatically)3632* **Gelöschtes Transkript**: Claude Code entfernt Transkripte nach der [Aufbewahrungsfrist](/docs/de/sessions#where-transcripts-are-stored), standardmäßig 30 Tage, gemäß den [Regeln für die Aufbewahrungsbereinigung](/docs/de/claude-directory#cleaned-up-automatically)

3608* **Andere Maschine**: Claude Code speichert Transkripte lokal, daher Resume die Sitzung auf der Maschine, auf der sie ausgeführt wurde3633* **Anderer Rechner**: Claude Code speichert Transkripte lokal, setzen Sie die Sitzung also auf dem Rechner fort, auf dem sie ausgeführt wurde

3609* **Doppelte Kopien**: Wenn Sie ein Projektverzeichnis unter `~/.claude/projects` kopiert haben, so dass zwei Transkripte dieselbe ID tragen, meldet Claude Code diese Meldung, anstatt eine Kopie willkürlich fortzusetzen3634* **Doppelte Kopien**: Wenn Sie ein Projektverzeichnis unter `~/.claude/projects` kopiert haben, sodass zwei Transkripte dieselbe ID tragen, meldet Claude Code diese Meldung, anstatt willkürlich eine Kopie fortzusetzen

3610 3635 

3611**Was zu tun ist:**3636**Was zu tun ist:**

3612 3637 

3613* Für eine interaktive Sitzung öffnen Sie die [Sitzungsauswahl](/docs/de/sessions#use-the-session-picker) mit `claude --resume` und drücken Sie `Ctrl+A`, um sie auf jedes Projekt auf dieser Maschine zu erweitern, dann wählen Sie die Sitzung3638* Öffnen Sie für eine interaktive Sitzung die [Sitzungsauswahl](/docs/de/sessions#use-the-session-picker) mit `claude --resume` und drücken Sie `Ctrl+A`, um sie auf jedes Projekt auf diesem Rechner zu erweitern, und wählen Sie dann die Sitzung aus

3614* Sitzungen, die mit `claude -p` oder dem [Agent SDK](/docs/de/agent-sdk/overview) erstellt wurden, erscheinen nicht in der Auswahl, daher überprüfen Sie die ID erneut gegen die `session_id`, die Ihr ursprünglicher Lauf gedruckt hat3639* Sitzungen, die mit `claude -p` oder dem [Agent SDK](/docs/de/agent-sdk/overview) erstellt wurden, erscheinen nicht in der Auswahl, gleichen Sie die ID daher erneut mit der `session_id` ab, die Ihre ursprüngliche Ausführung ausgegeben hat

3615 3640 

3616<h3 id="windows-reported-an-error-ebadf">3641<h3 id="windows-reported-an-error-ebadf">

3617 Windows meldete einen Fehler (EBADF), als Claude Code diese Sitzungs-Transkriptdatei las3642 Windows hat beim Lesen der Transkriptdatei dieser Sitzung durch Claude Code einen Fehler (EBADF) gemeldet

3618</h3>3643</h3>

3619 3644 

3620Sie haben eine Sitzung unter Windows fortgesetzt, ihre gespeicherte [Transkriptdatei](/docs/de/sessions#where-transcripts-are-stored) wurde normal geöffnet, und das Lesen schlug dann mit dem Systemfehler EBADF fehl. Der Systemfehler sagt nicht, warum das Lesen fehlgeschlagen ist, daher schlägt die Meldung wahrscheinliche Ursachen und was zu versuchen ist vor:3645Sie haben unter Windows eine Sitzung fortgesetzt, ihre gespeicherte [Transkriptdatei](/docs/de/sessions#where-transcripts-are-stored) wurde normal geöffnet, und das Lesen schlug anschließend mit dem Systemfehler EBADF fehl. Der Systemfehler gibt keinen Grund an, warum das Lesen fehlgeschlagen ist. Daher nennt die Meldung wahrscheinliche Ursachen und mögliche Lösungsschritte:

3621 3646 

3622```text theme={null}3647```text theme={null}

3623Windows reported an error (EBADF) when Claude Code read this session's transcript file, although the file had opened normally. This can happen when other software intercepts file reads — security, encryption or endpoint-management tools, for example. If it keeps happening for this conversation, try excluding the folder that holds Claude Code's session transcripts from such software (the .claude folder in your user profile, unless the app or CLAUDE_CONFIG_DIR points Claude Code elsewhere), or adding Claude Code to its allowed applications, then resume again.3648Windows reported an error (EBADF) when Claude Code read this session's transcript file, although the file had opened normally. This can happen when other software intercepts file reads — security, encryption or endpoint-management tools, for example. If it keeps happening for this conversation, try excluding the folder that holds Claude Code's session transcripts from such software (the .claude folder in your user profile, unless the app or CLAUDE_CONFIG_DIR points Claude Code elsewhere), or adding Claude Code to its allowed applications, then resume again.

3624```3649```

3625 3650 

3626Die Meldung folgt der Fehlerleitung des Befehls selbst, wie `Failed to resume session <session-id>`. Ein `claude --resume` oder [`claude -p`](/docs/de/headless)-Befehl beendet sich mit Code 1 nach Anzeige. Nach `/resume` in einer Sitzung läuft Ihre aktuelle Sitzung weiter.3651Die Meldung folgt auf die eigene Fehlerzeile des Befehls, etwa `Failed to resume session <session-id>`. Ein Befehl `claude --resume` oder [`claude -p`](/docs/de/headless) wird nach der Anzeige mit Code 1 beendet. Nach `/resume` innerhalb einer Sitzung läuft Ihre aktuelle Sitzung weiter.

3627 3652 

3628**Was zu tun ist:**3653**Vorgehensweise:**

3629 3654 

3630* Schließen Sie den Ordner aus, der Ihre Sitzungs-Transkripte enthält, von Software aus, die Dateilesevorgänge scannt oder abfängt, wie Sicherheits-, Verschlüsselungs- oder Endpoint-Management-Tools. Transkripte befinden sich standardmäßig unter `%USERPROFILE%\.claude\projects` oder unter dem Verzeichnis, das [`CLAUDE_CONFIG_DIR`](/docs/de/env-vars) benennt3655* Schließen Sie den Ordner mit Ihren Sitzungstranskripten von Software aus, die Dateilesevorgänge scannt oder abfängt, etwa Sicherheits-, Verschlüsselungs- oder Endpoint-Management-Tools. Transkripte liegen standardmäßig unter `%USERPROFILE%\.claude\projects` oder unter dem Verzeichnis, das [`CLAUDE_CONFIG_DIR`](/docs/de/env-vars) angibt

3631* Wenn Sie keine Ausschlussmöglichkeit hinzufügen können, fügen Sie Claude Code stattdessen zu den zulässigen Anwendungen dieser Software hinzu3656* Wenn Sie keine Ausnahme hinzufügen können, fügen Sie Claude Code stattdessen zu den zugelassenen Anwendungen dieser Software hinzu

3632* Setzen Sie die Sitzung erneut fort3657* Setzen Sie die Sitzung erneut fort

3633 3658 

3634Vor v2.1.282 kam der Fehler ohne Erklärung: `claude --resume <session-id>` endete bei `Failed to resume session <session-id>`, und ein `-p`-Lauf druckte nur den Systemfehlertext, wie `Failed to resume session: EBADF: bad file descriptor, read`.3659Vor v2.1.282 trat der Fehler ohne Erklärung auf: `claude --resume <session-id>` endete mit `Failed to resume session <session-id>`, und ein `-p`-Lauf gab nur den Text des Systemfehlers aus, etwa `Failed to resume session: EBADF: bad file descriptor, read`.

3635 3660 

3636<h3 id="cannot-switch-renderers-in-this-session">3661<h3 id="cannot-switch-renderers-in-this-session">

3637 Renderer können in dieser Sitzung nicht gewechselt werden3662 Renderer kann in dieser Sitzung nicht gewechselt werden

3638</h3>3663</h3>

3639 3664 

3640Wenn Sie Renderer wechseln, startet Claude Code seinen Prozess neu. Sie haben [`/tui`](/docs/de/fullscreen#enable-fullscreen-rendering) in einer Sitzung ausgeführt, die Claude Code ablehnt neu zu starten, daher wechselt es nicht und speichert nichts. Welche Meldung Sie sehen, sagt Ihnen die Ursache:3665Wenn Sie den Renderer wechseln, startet Claude Code seinen Prozess neu. Sie haben [`/tui`](/docs/de/fullscreen#enable-fullscreen-rendering) in einer Sitzung ausgeführt, die Claude Code nicht neu starten will. Daher findet kein Wechsel statt und nichts wird gespeichert. Welche Meldung Sie sehen, verrät die Ursache:

3641 

3642* `Cannot switch renderers while work is running in the background`: Sie haben Hintergrundarbeit, die ein Neustart aufgeben würde, wie eine Background-Shell oder einen Subagenten. Warten Sie, bis die Arbeit fertig ist, oder stoppen Sie sie mit [`/tasks`](/docs/de/commands), dann führen Sie `/tui fullscreen` oder `/tui default` erneut aus

3643*

3644 3666 

3645`Cannot switch renderers in this session`: Die Sitzung hat Einschränkungen, die Claude Code nicht an den neu gestarteten Prozess übergeben kann. Vor v2.1.234 startete Claude Code trotzdem neu und die neu gestartete Sitzung lief ohne sie3667* `Cannot switch renderers while work is running in the background`: Im Hintergrund läuft Arbeit, die ein Neustart abbrechen würde, etwa eine Hintergrund-Shell oder ein Subagent. Warten Sie, bis die Arbeit abgeschlossen ist, oder beenden Sie sie mit [`/tasks`](/docs/de/commands), und führen Sie dann erneut `/tui fullscreen` oder `/tui default` aus

3668* `Cannot switch renderers in this session`: Die Sitzung hat Einschränkungen, die Claude Code nicht an den neu gestarteten Prozess übergeben kann. Vor v2.1.234 startete Claude Code trotzdem neu, und die neu gestartete Sitzung lief ohne diese Einschränkungen

3646 3669 

3647In der Einschränkungsmeldung benennt der Teil in Klammern die Einschränkungen, die Claude Code gefunden hat:3670In der Meldung zu den Einschränkungen nennt der Teil in Klammern die Einschränkungen, die Claude Code gefunden hat:

3648 3671 

3649```text theme={null}3672```text theme={null}

3650Cannot switch renderers in this session — it has restrictions a restart can't carry over (permission rules set for this session only). Nothing was changed. Running /tui fullscreen in a session started without them switches every later session too.3673Cannot switch renderers in this session — it has restrictions a restart can't carry over (permission rules set for this session only). Nothing was changed. Running /tui fullscreen in a session started without them switches every later session too.

3651```3674```

3652 3675 

3653Jeder Grund, den die Meldung in Klammern zeigen kann:3676Jeder Grund, den die Meldung in Klammern anzeigen kann:

3654 3677 

3655* `launch flags: a custom system prompt, a tool allowlist, or restricted settings`: Sie haben die Sitzung mit einem Flag gestartet, das Claude Code nicht an den neu gestarteten Prozess zurückgibt. Diese Flags umfassen [`--system-prompt`](/docs/de/cli-reference#cli-flags), `--system-prompt-file`, `--append-system-prompt-file`, eine [`--tools`](/docs/de/cli-reference#cli-flags)-Allowlist, [`--setting-sources`](/docs/de/cli-reference#cli-flags) und [`--permission-prompt-tool`](/docs/de/cli-reference#cli-flags)3678* `launch flags: a custom system prompt, a tool allowlist, or restricted settings`: Sie haben die Sitzung mit einem Flag gestartet, das Claude Code nicht an den neu gestarteten Prozess zurückgibt. Zu diesen Flags gehören [`--system-prompt`](/docs/de/cli-reference#cli-flags), `--system-prompt-file`, `--append-system-prompt-file`, eine [`--tools`](/docs/de/cli-reference#cli-flags)-Allowlist, [`--setting-sources`](/docs/de/cli-reference#cli-flags) und [`--permission-prompt-tool`](/docs/de/cli-reference#cli-flags)

3656* `permission rules set for this session only`: Ein [Berechtigungsupdate](/docs/de/hooks#permission-update-entries) aus einem Hook oder SDK-Aufrufer hat Deny- oder Ask-Regeln mit dem `session`-Ziel hinzugefügt. Sitzungsspezifische Allow-Regeln lösen die Ablehnung nicht aus. Ein Neustart löscht sie, und Claude Code fragt stattdessen erneut3679* `permission rules set for this session only`: Ein [Berechtigungs-Update](/docs/de/hooks#permission-update-entries) von einem Hook oder SDK-Aufrufer hat deny- oder ask-Regeln mit dem Ziel `session` hinzugefügt. Sitzungsbezogene allow-Regeln lösen die Ablehnung nicht aus. Ein Neustart verwirft sie, und Claude Code fragt stattdessen erneut nach

3657* `ask-before-running rules with no command-line form`: Ein Berechtigungsupdate aus einem Hook oder SDK-Aufrufer hat Ask-Regeln neben den Regeln hinzugefügt, die Claude Code als `--allowed-tools` und `--disallowed-tools` zurückgibt. Kein Flag existiert für Ask-Regeln3680* `ask-before-running rules with no command-line form`: Ein Berechtigungs-Update von einem Hook oder SDK-Aufrufer hat ask-Regeln zusätzlich zu den Regeln hinzugefügt, die Claude Code als `--allowed-tools` und `--disallowed-tools` zurückgibt. Für ask-Regeln gibt es kein Flag

3658* `permission rules a command line cannot carry intact` und `added directories a command line cannot carry intact`: Ein Berechtigungsupdate hat eine Regel oder einen Verzeichnispfad mid-session hinzugefügt. Die Befehlszeile des neu gestarteten Prozesses kann seinen Text nicht als denselben Wert tragen3681* `permission rules a command line cannot carry intact` und `added directories a command line cannot carry intact`: Ein Berechtigungs-Update hat während der Sitzung eine Regel oder einen Verzeichnispfad hinzugefügt. Die Befehlszeile des neu gestarteten Prozesses kann deren Text nicht als denselben Wert übernehmen

3659 3682 

3660**Was zu tun ist:**3683**Vorgehensweise:**

3661 3684 

3662* Führen Sie in einer Sitzung, die ohne diese Einschränkungen gestartet wurde, `/tui fullscreen` oder `/tui default` aus, um zurückzuwechseln. Claude Code speichert die [`tui`-Einstellung](/docs/de/settings-reference#tui) dort3685* Führen Sie in einer Sitzung, die ohne diese Einschränkungen gestartet wurde, `/tui fullscreen` aus bzw. `/tui default`, um zurückzuwechseln. Claude Code speichert dort die [`tui`-Einstellung](/docs/de/settings-reference#tui)

3663 3686 

3664<h3 id="couldnt-open-claude-desktop">3687<h3 id="couldnt-open-claude-desktop">

3665 Claude Desktop konnte nicht geöffnet werden3688 Claude Desktop konnte nicht geöffnet werden

3666</h3>3689</h3>

3667 3690 

3668Sie haben [`/desktop`](/docs/de/desktop#coming-from-the-cli) oder seinen Alias `/app` in einer Sitzung ausgeführt, oder [`claude --desktop`](/docs/de/cli-reference#cli-flags) in Ihrer Shell, und der System-Befehl, den Claude Code zum Öffnen von Claude Desktop verwendet, ist fehlgeschlagen. Nach `/desktop` bleibt die Sitzung im Terminal; `claude --desktop` druckt die Meldung ohne das `Error:`-Präfix und beendet sich mit Status 1.3691Sie haben [`/desktop`](/docs/de/desktop#coming-from-the-cli) oder dessen Alias `/app` in einer Sitzung oder [`claude --desktop`](/docs/de/cli-reference#cli-flags) in Ihrer Shell ausgeführt, und der Systembefehl, mit dem Claude Code Claude Desktop öffnet, ist fehlgeschlagen. Nach `/desktop` bleibt die Sitzung im Terminal; `claude --desktop` gibt die Meldung ohne das Präfix `Error:` aus und wird mit Status 1 beendet.

3669 3692 

3670Der Text in Klammern benennt den Befehl, der fehlgeschlagen ist, mit seinem Exit-Status und der ersten Zeile seiner Fehlerausgabe, wenn er sie erzeugt hat. Auf macOS ist dieser Befehl `open`, wie in diesem Beispiel; unter Windows ist es `rundll32`:3693Der Text in Klammern nennt den fehlgeschlagenen Befehl mit seinem Exit-Status und der ersten Zeile seiner Fehlerausgabe, sofern er diese erzeugt hat. Unter macOS ist dieser Befehl `open`, wie in diesem Beispiel; unter Windows ist es `rundll32`:

3671 3694 

3672```text theme={null}3695```text theme={null}

3673Error: Couldn't open Claude Desktop (`open` exited 1: LSOpenURLsWithRole() failed for the URL claude://resume?session=<session-id> with error -10814). Open Claude Desktop and try again.3696Error: Couldn't open Claude Desktop (`open` exited 1: LSOpenURLsWithRole() failed for the URL claude://resume?session=<session-id> with error -10814). Open Claude Desktop and try again.

3674```3697```

3675 3698 

3676**Was zu tun ist:**3699**Vorgehensweise:**

3677 3700 

3678* Öffnen Sie Claude Desktop selbst, dann führen Sie `/desktop` oder `claude --desktop` erneut aus3701* Öffnen Sie Claude Desktop selbst und führen Sie dann erneut `/desktop` oder `claude --desktop` aus

3679* Um die vollständige Fehlerausgabe dieses Befehls zu lesen, aktivieren Sie Debug-Protokollierung mit `/debug` und führen Sie `/desktop` erneut aus, oder führen Sie `claude --desktop --debug-file <path>` aus, dann überprüfen Sie das Debug-Protokoll3702* Um die vollständige Fehlerausgabe des fehlgeschlagenen Befehls zu lesen, aktivieren Sie das Debug-Logging mit `/debug` und führen Sie `/desktop` erneut aus, oder führen Sie `claude --desktop --debug-file <path>` aus, und prüfen Sie anschließend das Debug-Log

3680 3703 

3681Vor v2.1.285 endete die Meldung mit `Open Claude Desktop and run /desktop again.` Vor v2.1.275 war es `Failed to open Claude Desktop. Please try opening it manually.` und sagte nicht, was fehlgeschlagen ist.3704Vor v2.1.285 endete die Meldung mit `Open Claude Desktop and run /desktop again.` Vor v2.1.275 lautete sie `Failed to open Claude Desktop. Please try opening it manually.` und gab nicht an, was fehlgeschlagen war.

3682 3705 

3683<h3 id="terminal-setup-left-your-zed-keymap-unchanged">3706<h3 id="terminal-setup-left-your-zed-keymap-unchanged">

3684 /terminal-setup hat Ihre Zed-Tastaturzuordnung unverändert gelassen3707 /terminal-setup hat Ihre Zed-Keymap unverändert gelassen

3685</h3>3708</h3>

3686 3709 

3687Sie haben [`/terminal-setup`](/docs/de/terminal-config#enter-multiline-prompts) in Zed ausgeführt, und Claude Code konnte das Update zu Ihrer Zed `keymap.json` nicht abschließen, daher hat es die Datei unverändert gelassen.3710Sie haben [`/terminal-setup`](/docs/de/terminal-config#enter-multiline-prompts) in Zed ausgeführt, und Claude Code konnte die Aktualisierung Ihrer Zed-Datei `keymap.json` nicht abschließen. Daher wurde die Datei unverändert gelassen.

3688 3711 

3689Jede Meldung benennt den Pfad zu Ihrer Tastaturzuordnung und endet mit dem Tastaturzuordnungsblock, den Sie selbst hinzufügen:3712Jede Meldung nennt den Pfad zu Ihrer Keymap und endet mit dem Tastenkombinationsblock, den Sie selbst hinzufügen können:

3690 3713 

3691```text theme={null}3714```text theme={null}

3692Couldn't update your Zed keymap, so it was left unchanged.3715Couldn't update your Zed keymap, so it was left unchanged.


3694{ "context": "Terminal", "bindings": { "shift-enter": ["terminal::SendText", "\u001b\r"] } }3717{ "context": "Terminal", "bindings": { "shift-enter": ["terminal::SendText", "\u001b\r"] } }

3695```3718```

3696 3719 

3697Die erste Zeile der Meldung benennt die Ursache:3720Die erste Zeile der Meldung nennt die Ursache:

3698 3721 

3699* `Couldn't read your Zed keymap, so it was left unchanged.`: Claude Code konnte die Datei nicht lesen, z. B. wegen Dateiberechtigungen3722* `Couldn't read your Zed keymap, so it was left unchanged.`: Claude Code konnte die Datei nicht lesen, zum Beispiel aufgrund von Dateiberechtigungen

3700* `Your Zed keymap isn't a readable list of keybindings, so it was left unchanged.`: Die Datei las sich gut, aber analysiert nicht als Array von Tastaturzuordnungsblöcken, auch mit `//`-Kommentaren und nachfolgenden Kommas erlaubt3723* `Your Zed keymap isn't a readable list of keybindings, so it was left unchanged.`: Die Datei wurde gelesen, lässt sich aber nicht als Array von Tastenkombinationsblöcken parsen, selbst wenn `//`-Kommentare und nachgestellte Kommas zugelassen werden

3701* `Couldn't back up your Zed keymap; not modifying it.`: Claude Code konnte die Datei nicht zu einer `.bak`-Sicherung daneben kopieren, daher hat es nichts geändert3724* `Couldn't back up your Zed keymap; not modifying it.`: Claude Code konnte die Datei nicht in eine `.bak`-Sicherung daneben kopieren und hat daher nichts geändert

3702* `Couldn't update your Zed keymap, so it was left unchanged.`: Das zusammengeführte Ergebnis überprüfte nicht als gültige Tastaturzuordnung, die die Bindung trägt, daher verwarf Claude Code es, anstatt zu schreiben. Ein Tastaturzuordnungsblock mit einem duplizierten Schlüssel kann dies verursachen3725* `Couldn't update your Zed keymap, so it was left unchanged.`: Das zusammengeführte Ergebnis ließ sich nicht als gültige Keymap mit der Tastenkombination verifizieren, daher hat Claude Code es verworfen, statt es zu schreiben. Ein Tastenkombinationsblock mit einem doppelten Schlüssel kann dies verursachen

3703 3726 

3704**Was zu tun ist:**3727**Vorgehensweise:**

3705 3728 

3706* Kopieren Sie den Block aus der Meldung in das Top-Level-Array in Ihrer `keymap.json` unter dem Pfad, den die Meldung benennt3729* Kopieren Sie den Block aus der Meldung in das oberste Array Ihrer `keymap.json` unter dem Pfad, den die Meldung nennt

3707* Für `isn't a readable list of keybindings`, beheben Sie den Syntaxfehler oder machen Sie den Top-Level-Wert der Datei ein Array, dann führen Sie `/terminal-setup` erneut aus3730* Bei `isn't a readable list of keybindings` beheben Sie den Syntaxfehler oder machen Sie den obersten Wert der Datei zu einem Array, und führen Sie dann erneut `/terminal-setup` aus

3708 3731 

3709Vor v2.1.247 konnte `/terminal-setup` eine Zed-Tastaturzuordnung, die `//`-Kommentare oder nachfolgende Kommas verwendete, nicht analysieren, und es ersetzte die gesamte Datei mit nur seiner eigenen Bindung, während es die Bindung als installiert meldete. Um eine Tastaturzuordnung wiederherzustellen, die eine frühere Version ersetzte, verwenden Sie die `.bak`-Sicherungsdatei, die unter [Mehrzeilige Eingabeaufforderungen eingeben](/docs/de/terminal-config#enter-multiline-prompts) beschrieben ist.3732Vor v2.1.247 konnte `/terminal-setup` eine Zed-Keymap mit `//`-Kommentaren oder nachgestellten Kommas nicht parsen und ersetzte die gesamte Datei nur durch die eigene Tastenkombination, während es die Tastenkombination als installiert meldete. Um eine Keymap wiederherzustellen, die eine frühere Version ersetzt hat, verwenden Sie die `.bak`-Sicherungsdatei, die unter [Mehrzeilige Prompts eingeben](/docs/de/terminal-config#enter-multiline-prompts) beschrieben ist.

3710 3733 

3711<h3 id="skill-usage-reports-are-not-available-on-this-connection">3734<h3 id="skill-usage-reports-are-not-available-on-this-connection">

3712 Skill-Nutzungsberichte sind auf dieser Verbindung nicht verfügbar3735 Skill-Nutzungsberichte sind über diese Verbindung nicht verfügbar

3713</h3>3736</h3>

3714 3737 

3715Sie haben [`/skill-doctor`](/docs/de/skills#find-unused-skills) über [Remote-Steuerung](/docs/de/remote-control) ausgeführt, von Ihrem Telefon oder Browser. Claude Code sendet den Skill-Nutzungsbericht nicht über Remote-Steuerung und antwortet stattdessen mit dieser Meldung:3738Sie haben [`/skill-doctor`](/docs/de/skills#find-unused-skills) über [Remote Control](/docs/de/remote-control) von Ihrem Smartphone oder Browser aus ausgeführt. Claude Code sendet den Skill-Nutzungsbericht nicht über Remote Control und antwortet stattdessen mit dieser Meldung:

3716 3739 

3717```text theme={null}3740```text theme={null}

3718Skill usage reports are not available on this connection.3741Skill usage reports are not available on this connection.

3719```3742```

3720 3743 

3721**Was zu tun ist:**3744**Vorgehensweise:**

3722 3745 

3723* Führen Sie `/skill-doctor` im Terminal auf der Maschine aus, auf der die Sitzung ausgeführt wird, oder führen Sie `claude -p "/skill-doctor"` dort aus3746* Führen Sie `/skill-doctor` im Terminal auf dem Rechner aus, auf dem die Sitzung läuft, oder führen Sie dort `claude -p "/skill-doctor"` aus

3724 3747 

3725<h3 id="custom-output-styles-cant-be-selected-over-remote-control">3748<h3 id="custom-output-styles-cant-be-selected-over-remote-control">

3726 Benutzerdefinierte Ausgabestile können nicht über Remote-Steuerung ausgewählt werden3749 Benutzerdefinierte Ausgabestile können nicht über Remote Control ausgewählt werden

3727</h3>3750</h3>

3728 3751 

3729Sie haben [`/output-style`](/docs/de/output-styles#change-your-output-style) von der mobilen App oder dem Web über [Remote-Steuerung](/docs/de/remote-control) ausgeführt, oder der Befehl kam in einer Nachricht an, die in die Sitzung weitergeleitet wurde. Da ein solcher Zug möglicherweise nicht vom Kontoinhaber kommt, listet Claude Code nur [integrierte Stile](/docs/de/output-styles#built-in-output-styles) auf und wählt sie aus, und fügt diese Notiz hinzu, wenn der Befehl die Stile auflistet oder den Namen, den Sie angegeben haben, nicht erkennt. Ein [benutzerdefinierter Stil](/docs/de/output-styles#create-a-custom-output-style)-Name erhält die gleiche Antwort wie ein Name, der nicht existiert:3752Sie haben [`/output-style`](/docs/de/output-styles#change-your-output-style) über [Remote Control](/docs/de/remote-control) aus der mobilen App oder dem Web ausgeführt, oder der Befehl kam in einer Nachricht an, die in die Sitzung weitergeleitet wurde. Da ein solcher Turn möglicherweise nicht vom Kontoinhaber stammt, listet Claude Code darin nur [integrierte Stile](/docs/de/output-styles#built-in-output-styles) auf und lässt nur diese auswählen. Es fügt diesen Hinweis immer dann hinzu, wenn der Befehl die Stile auflistet oder den angegebenen Namen nicht erkennt. Der Name eines [benutzerdefinierten Stils](/docs/de/output-styles#create-a-custom-output-style) erhält dieselbe Antwort wie ein Name, der nicht existiert:

3730 3753 

3731```text theme={null}3754```text theme={null}

3732Custom output styles can't be selected over Remote Control or from a relayed message. Select one in the session itself, or pick a built-in style here.3755Custom output styles can't be selected over Remote Control or from a relayed message. Select one in the session itself, or pick a built-in style here.

3733```3756```

3734 3757 

3735**Was zu tun ist:**3758**Vorgehensweise:**

3736 3759 

3737* Wählen Sie einen integrierten Stil, z. B. `/output-style concise`3760* Wählen Sie einen integrierten Stil, zum Beispiel `/output-style concise`

3738* Um einen benutzerdefinierten Stil zu verwenden, setzen Sie [`outputStyle`](/docs/de/settings-reference#outputstyle) in der Datei `.claude/settings.local.json` des Projekts, oder führen Sie `/output-style <style>` im Terminal der Sitzung selbst aus, wenn es eines hat3761* Um einen benutzerdefinierten Stil zu verwenden, setzen Sie [`outputStyle`](/docs/de/settings-reference#outputstyle) in der Datei `.claude/settings.local.json` des Projekts, oder führen Sie `/output-style <style>` im eigenen Terminal der Sitzung aus, falls sie eines hat

3739 3762 

3740<h3 id="output-styles-are-saved-to-local-settings-which-this-session-doesnt-load">3763<h3 id="output-styles-are-saved-to-local-settings-which-this-session-doesnt-load">

3741 Ausgabestile werden in lokalen Einstellungen gespeichert, die diese Sitzung nicht lädt3764 Ausgabestile werden in lokalen Einstellungen gespeichert, die diese Sitzung nicht lädt

3742</h3>3765</h3>

3743 3766 

3744Sie haben versucht, [Ausgabestile](/docs/de/output-styles) mit `/output-style <style>` oder `/config outputStyle=<style>` in einer Sitzung zu wechseln, deren Einstellungsquellen `local` ausschließen. Beispiele sind eine [Agent SDK](/docs/de/agent-sdk/typescript)-Sitzung, deren [`settingSources`](/docs/de/agent-sdk/typescript#options) `"local"` auslässt, und eine CLI-Sitzung, die mit einem [`--setting-sources`](/docs/de/cli-reference#cli-flags)-Wert gestartet wurde, der `local` auslässt. Beide Befehle speichern den Stil in `.claude/settings.local.json`, eine Datei, die eine solche Sitzung nie zurückliest, daher weigert sich Claude Code, anstatt eine Einstellung zu schreiben, die keine Auswirkung hätte:3767Sie haben versucht, mit `/output-style <style>` oder `/config outputStyle=<style>` den [Ausgabestil](/docs/de/output-styles) in einer Sitzung zu wechseln, deren Einstellungsquellen `local` ausschließen. Beispiele sind eine [Agent SDK](/docs/de/agent-sdk/typescript)-Sitzung, deren [`settingSources`](/docs/de/agent-sdk/typescript#options) `"local"` auslässt, und eine CLI-Sitzung, die mit einem [`--setting-sources`](/docs/de/cli-reference#cli-flags)-Wert gestartet wurde, der `local` auslässt. Beide Befehle speichern den Stil in `.claude/settings.local.json`, einer Datei, die eine solche Sitzung nie wieder einliest. Daher lehnt Claude Code den Wechsel ab, statt eine Einstellung zu schreiben, die keine Wirkung hätte:

3745 3768 

3746```text theme={null}3769```text theme={null}

3747Output styles are saved to local settings (.claude/settings.local.json), which this session doesn't load, so the style can't be changed here.3770Output styles are saved to local settings (.claude/settings.local.json), which this session doesn't load, so the style can't be changed here.

3748```3771```

3749 3772 

3750**Was zu tun ist:**3773**Vorgehensweise:**

3751 3774 

3752* Fügen Sie `local` zu den Einstellungsquellen der Sitzung hinzu und wechseln Sie erneut3775* Fügen Sie `local` zu den Einstellungsquellen der Sitzung hinzu und wechseln Sie erneut

3753* Setzen Sie den [`outputStyle`](/docs/de/settings-reference#outputstyle)-Schlüssel in einer Einstellungsdatei, die die Sitzung lädt, wie `.claude/settings.json` im Projekt oder `~/.claude/settings.json`. Im TypeScript SDK setzen Sie stattdessen `outputStyle` im Inline-`settings`-Objekt; siehe [Aktivieren Sie einen Ausgabestil](/docs/de/agent-sdk/modifying-system-prompts#activate-an-output-style)3776* Setzen Sie den Schlüssel [`outputStyle`](/docs/de/settings-reference#outputstyle) in einer Einstellungsdatei, die die Sitzung lädt, etwa `.claude/settings.json` im Projekt oder `~/.claude/settings.json`. Im TypeScript SDK setzen Sie `outputStyle` stattdessen im Inline-Objekt `settings`; siehe [Einen Ausgabestil aktivieren](/docs/de/agent-sdk/modifying-system-prompts#activate-an-output-style)

3754 3777 

3755<h2 id="plugin-errors">3778<h2 id="plugin-errors">

3756 Plugin-Fehler3779 Plugin-Fehler


4478 Fehler in Hintergrund-Sitzungen4501 Fehler in Hintergrund-Sitzungen

4479</h2>4502</h2>

4480 4503 

4481[Hintergrund-Sitzungen](/docs/de/agent-view) laufen ohne eigenes interaktives Terminal, daher verhalten sich Befehle, die eines benötigen, dort anders. Diese Meldungen erscheinen im Transkript einer Hintergrund-Sitzung, im Terminal, das sich an eine angehängt, in der Sitzung oder Shell, von der Sie sie entsenden, oder für die [Worktree-Guard-Einträge](#write-or-command-blocked-because-the-path-cannot-be-safely-resolved) unten in jeder Sitzung, die in einem Worktree isoliert ist oder einen Worktree-isolierten Subagenten ausführt; wenn eine Meldung spezifisch für eine Oberfläche ist, gibt ihr Eintrag das an.4504[Hintergrund-Sitzungen](/docs/de/agent-view) laufen ohne eigenes interaktives Terminal, daher verhalten sich Befehle, die eines benötigen, dort anders. Diese Meldungen erscheinen im Transkript einer Hintergrund-Sitzung, im Terminal, das sich an eine anhängt, in der Sitzung oder Shell, von der Sie sie entsenden, oder für die [Worktree-Guard-Einträge](#write-or-command-blocked-because-the-path-cannot-be-safely-resolved) unten in jeder Sitzung, die in einem Worktree isoliert ist oder einen Worktree-isolierten Subagenten ausführt; wenn eine Meldung spezifisch für eine Oberfläche ist, gibt ihr Eintrag das an.

4482 4505 

4483<h3 id="commands-refused-in-a-background-session">4506<h3 id="commands-refused-in-a-background-session">

4484 Befehle, die in einer Hintergrund-Sitzung abgelehnt werden4507 Befehle, die in einer Hintergrund-Sitzung abgelehnt werden


4486 4509 

4487Befehle, die einen interaktiven Dialog öffnen, können dies nicht tun, während kein Terminal an eine Hintergrund-Sitzung angehängt ist. `/install-github-app`, die `/mcp`-Einstellungsliste und die Authentifizierungsaktionen im MCP-Server-Menü antworten mit einer Meldung. Für `/install-github-app` und die `/mcp`-Einstellungsliste wird die Sitzung auch unter **Needs input** in der [Agent-Ansicht](/docs/de/agent-view) angezeigt, damit Sie sie finden, anhängen und den Befehl erneut ausführen können. Während ein Terminal angehängt ist, funktionieren diese Befehle normal.4510Befehle, die einen interaktiven Dialog öffnen, können dies nicht tun, während kein Terminal an eine Hintergrund-Sitzung angehängt ist. `/install-github-app`, die `/mcp`-Einstellungsliste und die Authentifizierungsaktionen im MCP-Server-Menü antworten mit einer Meldung. Für `/install-github-app` und die `/mcp`-Einstellungsliste wird die Sitzung auch unter **Needs input** in der [Agent-Ansicht](/docs/de/agent-view) angezeigt, damit Sie sie finden, anhängen und den Befehl erneut ausführen können. Während ein Terminal angehängt ist, funktionieren diese Befehle normal.

4488 4511 

4489Vor v2.1.216 wurde die Sitzung nach `/install-github-app` oder der `/mcp`-Einstellungsliste nicht unter **Needs input** angezeigt. In v2.1.213 bis v2.1.215 funktionieren die Befehle weiterhin, während ein Terminal angehängt ist, und die Ablehnungsmeldung sagte Ihnen, dass Sie anhängen und den Befehl erneut ausführen sollen. Von v2.1.208 bis v2.1.212 lehnte Claude Code sie sogar ab, während ein Terminal angehängt war, mit einer Meldung wie `Can't open MCP settings in a background session`; auf diesen Versionen führen Sie den Befehl stattdessen aus einer regulären `claude`-Sitzung aus oder aktualisieren. Vor v2.1.208 öffneten sie ihren Dialog innerhalb der Hintergrund-Sitzung. In v2.1.208 nur lehnte Claude Code auch die `/model`-Auswahl in einer Hintergrund-Sitzung ab, und `/upgrade` druckte die Upgrade-URL aus, anstatt einen Browser zu öffnen.4512Vor v2.1.216 wurde die Sitzung nach `/install-github-app` oder der `/mcp`-Einstellungsliste nicht unter **Needs input** angezeigt. In v2.1.213 bis v2.1.215 funktionierten die Befehle weiterhin, während ein Terminal angehängt war, und die Ablehnungsmeldung sagte Ihnen, dass Sie anhängen und den Befehl erneut ausführen sollen. Von v2.1.208 bis v2.1.212 lehnte Claude Code sie sogar ab, während ein Terminal angehängt war, mit einer Meldung wie `Can't open MCP settings in a background session`; auf diesen Versionen führen Sie den Befehl stattdessen aus einer regulären `claude`-Sitzung aus oder aktualisieren. Vor v2.1.208 öffneten sie ihren Dialog innerhalb der Hintergrund-Sitzung. Nur in v2.1.208 lehnte Claude Code auch die `/model`-Auswahl in einer Hintergrund-Sitzung ab, und `/upgrade` gab die Upgrade-URL aus, anstatt einen Browser zu öffnen.

4490 4513 

4491Die Formulierung nennt den Befehl. Die `/mcp`-Einstellungsliste meldet:4514Die Formulierung nennt den Befehl. Die `/mcp`-Einstellungsliste meldet:

4492 4515 


4497**Was zu tun ist:**4520**Was zu tun ist:**

4498 4521 

4499* Hängen Sie sich von der Agent-Ansicht an die Sitzung an und führen Sie den Befehl erneut aus4522* Hängen Sie sich von der Agent-Ansicht an die Sitzung an und führen Sie den Befehl erneut aus

4500* Oder verwenden Sie das Formular, das die Meldung nennt, wie `/mcp reconnect <server>`, `/mcp enable` oder `/mcp disable`, die ohne Anhängen funktionieren4523* Oder verwenden Sie die Form, die die Meldung nennt, wie `/mcp reconnect <server>`, `/mcp enable` oder `/mcp disable`, die ohne Anhängen funktionieren

4501 4524 

4502<h3 id="write-or-command-blocked-because-the-path-cannot-be-safely-resolved">4525<h3 id="write-or-command-blocked-because-the-path-cannot-be-safely-resolved">

4503 Schreib- oder Befehlsoperation blockiert, da der Pfad nicht sicher aufgelöst werden kann4526 Schreib- oder Befehlsoperation blockiert, da der Pfad nicht sicher aufgelöst werden kann

4504</h3>4527</h3>

4505 4528 

4506Claude hat auf eine Datei oder ein Arbeitsverzeichnis durch eine Schreibweise zugegriffen, die der [Worktree-Isolations-Guard](/docs/de/agent-view#how-file-edits-are-isolated) nicht zu einem verifizierbaren Ort auflösen kann. Der Guard überprüft Schreibvorgänge und Befehlsarbeitsverzeichnisse in [jeder Sitzung, die in einem Worktree isoliert ist](/docs/de/worktrees#how-claude-code-enforces-isolation), interaktiv oder im Hintergrund, und in [Worktree-isolierten Subagenten](/docs/de/worktrees#isolate-subagents-with-worktrees). Er löst Symlinks auf, bevor er überprüft, dass die Operation den gemeinsamen Checkout nicht erreicht, und wenn die Auflösung fehlschlägt, blockiert er die Operation, anstatt sie dort landen zu lassen. Die Meldung nennt die Pfadformen, die er ablehnt, und wie Sie erneut versuchen:4529Claude hat auf eine Datei oder ein Arbeitsverzeichnis durch eine Schreibweise zugegriffen, die der [Worktree-Isolations-Guard](/docs/de/agent-view#how-file-edits-are-isolated) nicht zu einem verifizierbaren Ort auflösen kann. Der Guard überprüft Schreibvorgänge und Befehlsarbeitsverzeichnisse in [jeder Sitzung, die in einem Worktree isoliert ist](/docs/de/worktrees#how-claude-code-enforces-isolation), interaktiv oder im Hintergrund, und in [Worktree-isolierten Subagenten](/docs/de/worktrees#isolate-subagents-with-worktrees). Er löst Symlinks auf, bevor er überprüft, dass die Operation den gemeinsamen Checkout nicht erreicht, und wenn die Auflösung fehlschlägt, blockiert er die Operation, anstatt sie dort landen zu lassen. Die Meldung nennt die Pfadformen, die er ablehnt, und wie Sie es erneut versuchen:

4507 4530 

4508```text theme={null}4531```text theme={null}

4509This write was blocked because the path is spelled in a form that cannot be safely resolved (for example through a symlink storing a raw dot segment, a network-share or device-namespace shape, or an unreadable ancestor directory). If the file is inside the worktree /path/to/worktree, address it by its direct symlink-free path instead.4532This write was blocked because the path is spelled in a form that cannot be safely resolved (for example through a symlink storing a raw dot segment, a network-share or device-namespace shape, or an unreadable ancestor directory). If the file is inside the worktree /path/to/worktree, address it by its direct symlink-free path instead.

4510```4533```

4511 4534 

4512Ein blockierter Befehl meldet die gleiche Ursache für sein Arbeitsverzeichnis und endet mit `re-run the command from its direct symlink-free path`. Vor v2.1.217 verglich der Guard Pfadschreibweisen ohne Symlinks aufzulösen, daher wurden diese Schreibweisen nicht blockiert und ein Schreibvorgang, der durch einen Symlink geleitet wurde, konnte im gemeinsamen Checkout landen.4535Ein blockierter Befehl meldet die gleiche Ursache für sein Arbeitsverzeichnis und endet mit `re-run the command from its direct symlink-free path`. Vor v2.1.217 verglich der Guard Pfadschreibweisen, ohne Symlinks aufzulösen, daher wurden diese Schreibweisen nicht blockiert und ein Schreibvorgang, der durch einen Symlink geleitet wurde, konnte im gemeinsamen Checkout landen.

4513 4536 

4514**Was zu tun ist:**4537**Was zu tun ist:**

4515 4538 

4516* Normalerweise nichts: Die vollständige Meldung geht an Claude als Werkzeugfehler, und Claude versucht es erneut mit dem direkten Pfad, den sie nennt. Für einen blockierten Datei-Edit zeigt die Gesprächsansicht nur eine kurze `Error editing file`-Zeile; die vollständige Meldung erscheint in der Transkript-Ansicht, die Sie mit `Ctrl+O` öffnen. Ein blockierter Befehl druckt ihn in seiner Befehlsausgabe.4539* Normalerweise nichts: Die vollständige Meldung geht an Claude als Tool-Fehler, und Claude versucht es erneut mit dem direkten Pfad, den sie nennt. Für einen blockierten Datei-Edit zeigt die Konversationsansicht nur eine kurze `Error editing file`-Zeile; die vollständige Meldung erscheint in der Transkript-Ansicht, die Sie mit `Ctrl+O` öffnen. Ein blockierter Befehl gibt sie in seiner Befehlsausgabe aus.

4517* Wenn die Blockierung bei derselben Datei wiederholt wird, läuft der Pfad wahrscheinlich durch einen committeten Symlink, dessen Ziel `..` enthält, wie `docs/current -> ../README.md`; bitten Sie Claude, die Zieldatei stattdessen über ihren echten Pfad zu bearbeiten, anstatt über den Link4540* Wenn die Blockierung bei derselben Datei wiederholt wird, läuft der Pfad wahrscheinlich durch einen committeten Symlink, dessen Ziel `..` enthält, wie `docs/current -> ../README.md`; bitten Sie Claude, die Zieldatei stattdessen über ihren echten Pfad zu bearbeiten, anstatt über den Link

4518 4541 

4519<h3 id="write-or-command-blocked-because-the-path-names-a-network-location">4542<h3 id="write-or-command-blocked-because-the-path-names-a-network-location">


4549 4572 

4550**Was zu tun ist:**4573**Was zu tun ist:**

4551 4574 

4552* Normalerweise nichts: Claude liest die Meldung und schreibt den Befehl so um, wie sein letzter Satz verlangt4575* Normalerweise nichts: Claude liest die Meldung und schreibt den Befehl so um, wie ihr letzter Satz verlangt

4553* Wenn ein Befehl, den Sie angefordert haben, weiterhin abgelehnt wird, schreiben Sie den gekennzeichneten Wert wörtlich: ersetzen Sie die Umleitung oder Substitution durch ihren Wert, und führen Sie git als seinen eigenen einfachen Befehl von innerhalb des Worktree aus4576* Wenn ein Befehl, den Sie angefordert haben, weiterhin abgelehnt wird, schreiben Sie den gekennzeichneten Wert wörtlich: Ersetzen Sie die Umleitung oder Substitution durch ihren Wert, und führen Sie git als eigenen einfachen Befehl von innerhalb des Worktree aus

4554* Um auf den Haupt-Checkout absichtlich zu handeln, führen Sie den Befehl selbst in einem Terminal außerhalb der Sitzung aus4577* Um absichtlich auf den Haupt-Checkout einzuwirken, führen Sie den Befehl selbst in einem Terminal außerhalb der Sitzung aus

4555 4578 

4556<h3 id="this-session-has-no-saved-transcript">4579<h3 id="this-session-has-no-saved-transcript">

4557 Diese Sitzung hat kein gespeichertes Transkript4580 Diese Sitzung hat kein gespeichertes Transkript

4558</h3>4581</h3>

4559 4582 

4560Sie haben sich an eine gestoppte [Hintergrund-Sitzung](/docs/de/agent-view) angehängt, die mit `←` oder `/background` von einem anderen Gespräch in den Hintergrund verschoben wurde und gestoppt wurde, bevor ihre erste Antwort fertig war. Bis diese erste Antwort fertig ist, lebt das Gespräch noch nur in der Sitzung, von der es in den Hintergrund verschoben wurde, daher lehnt `claude attach` ab, die gestoppte Sitzung zu starten, anstatt ein leeres Gespräch unter derselben Sitzungs-ID zu beginnen. Die Meldung endet mit dem `claude respawn`-Befehl für diese Sitzung:4583Sie 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:

4561 4584 

4562```text theme={null}4585```text theme={null}

4563This 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.4586This 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.

4564```4587```

4565 4588 

4566Das Öffnen der gleichen Sitzungszeile in der [Agent-Ansicht](/docs/de/agent-view) zeigt `Press enter again to restart this session fresh` unter der Liste an, und ein zweites `Enter` auf der Zeile startet die Sitzung mit einem leeren Gespräch neu. Vor v2.1.212 zeigte das Öffnen der gestoppten Sitzung die Ablehnungsmeldung ohne Möglichkeit, sie von der Agent-Ansicht aus neu zu starten. Vor v2.1.211 startete das Öffnen der gestoppten Sitzung stillschweigend dieses leere Gespräch und konnte die ursprüngliche Eingabeaufforderung der Sitzung erneut ausführen.4589Das Öffnen der Zeile derselben Sitzung in der [Agent-Ansicht](/docs/de/agent-view) zeigt stattdessen `Press enter again to restart this session fresh` unter der Liste an, und ein zweites `Enter` auf der Zeile startet die Sitzung mit einer leeren Konversation neu. Vor v2.1.212 zeigte das Öffnen der Zeile die Ablehnungsmeldung ohne Möglichkeit, die Sitzung von der Agent-Ansicht aus neu zu starten. Vor v2.1.211 startete das Öffnen der gestoppten Sitzung stillschweigend diese leere Konversation und konnte den ursprünglichen Prompt der Sitzung erneut ausführen.

4567 4590 

4568**Was zu tun ist:**4591**Was zu tun ist:**

4569 4592 

4570* Das Gespräch, das Sie in den Hintergrund verschoben haben, ist intakt: setzen Sie es mit [`claude --resume`](/docs/de/sessions) fort oder arbeiten Sie weiterhin darin4593* 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 darin

4571* 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-Ansicht4594* 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

4572* Wenn die Sitzung eine Antwort fertig gestellt 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 toleriert4595* 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

4573 4596 

4574<h3 id="this-session-is-running-in-another-terminal">4597<h3 id="this-session-is-running-in-another-terminal">

4575 Diese Sitzung läuft in einem anderen Terminal4598 Diese Sitzung läuft in einem anderen Terminal

4576</h3>4599</h3>

4577 4600 

4578Sie haben die Zeile einer gestoppten Sitzung in der [Agent-Ansicht](/docs/de/agent-view) geöffnet, und ihr gespeichertes Gespräch ist bereits in einem anderen aktiven Claude Code-Prozess auf diesem Computer offen, daher lehnt Claude Code ab, einen zweiten Prozess zu starten, der in das gleiche Transkript schreiben würde. Welche Meldung Sie sehen, hängt davon ab, [was das Gespräch hält](/docs/de/agent-view#opening-a-session-says-the-conversation-is-already-open):4601Sie haben die Zeile einer gestoppten Sitzung in der [Agent-Ansicht](/docs/de/agent-view) geöffnet, und ihre gespeicherte Konversation ist bereits in einem anderen aktiven Claude Code-Prozess auf diesem Computer offen, daher lehnt Claude Code ab, einen zweiten Prozess zu starten, der in das gleiche Transkript schreiben würde. Welche Meldung Sie sehen, hängt davon ab, [was die Konversation hält](/docs/de/agent-view#opening-a-session-says-the-conversation-is-already-open):

4579 4602 

4580```text theme={null}4603```text theme={null}

4581Can't open — this session is running in another terminal4604Can't open — this session is running in another terminal

4582This conversation is already open in another running Claude session — use that one, or close it and try again4605This conversation is already open in another running Claude session — use that one, or close it and try again

4583```4606```

4584 4607 

4585* **`running in another terminal`**: Ein Terminal hält das Gespräch, zum Beispiel eines, in dem Sie es mit `claude --resume` oder `/resume` fortgesetzt haben. Die Zeile zeigt auch `Open in a terminal`.4608* **`running in another terminal`**: Ein Terminal hält die Konversation, zum Beispiel eines, in dem Sie sie mit `claude --resume` oder `/resume` fortgesetzt haben. Die Zeile zeigt auch `Open in a terminal`.

4586* **`already open in another running Claude session`**: Ein anderer nicht-interaktiver Claude Code-Prozess hält es, zum Beispiel ein [Hintergrund-Sitzungs](/docs/de/agent-view#the-supervisor-process)-Prozess für das gleiche Gespräch, das noch nicht beendet ist.4609* **`already open in another running Claude session`**: Ein anderer nicht interaktiver Claude Code-Prozess hält sie, zum Beispiel ein [Hintergrund-Sitzungs](/docs/de/agent-view#the-supervisor-process)-Prozess für dieselbe Konversation, der noch nicht beendet ist.

4587 4610 

4588Claude Code speichert eine Antwort, die Sie beim Öffnen der Zeile eingegeben haben, und sendet sie als nächste Eingabeaufforderung der Sitzung, wenn die Sitzung das nächste Mal startet.4611Claude Code speichert eine Antwort, die Sie beim Öffnen der Zeile eingegeben haben, und sendet sie als nächsten Prompt der Sitzung, wenn die Sitzung das nächste Mal startet.

4589 4612 

4590**Was zu tun ist:**4613**Was zu tun ist:**

4591 4614 

4592* Setzen Sie das Gespräch in dem Prozess fort, der es offen hat, oder beenden Sie diesen Prozess und öffnen Sie die Zeile erneut4615* Setzen Sie die Konversation in dem Prozess fort, der sie offen hat, oder beenden Sie diesen Prozess und öffnen Sie die Zeile erneut

4593 4616 

4594Vor v2.1.248 existierte nur die `already open in another running Claude session`-Ablehnung: Ein Gespräch, das in einem Terminal fortgesetzt wurde, zählte nicht als offen, und das Öffnen der Zeile startete einen zweiten Claude Code-Prozess, der in das gleiche Gespräch schrieb.4617Vor v2.1.248 existierte nur die `already open in another running Claude session`-Ablehnung: Eine Konversation, die in einem Terminal fortgesetzt wurde, zählte nicht als offen, und das Öffnen der Zeile startete einen zweiten Claude Code-Prozess, der in dieselbe Konversation schrieb.

4595 4618 

4596<h3 id="this-sessions-saved-conversation-is-no-longer-on-disk">4619<h3 id="this-sessions-saved-conversation-is-no-longer-on-disk">

4597 Das gespeicherte Gespräch dieser Sitzung ist nicht mehr auf der Festplatte4620 Die gespeicherte Konversation dieser Sitzung ist nicht mehr auf der Festplatte

4598</h3>4621</h3>

4599 4622 

4600Sie haben eine [Hintergrund-Sitzung](/docs/de/agent-view) geöffnet, die endete, während der Hintergrund-Service aus war, und die [Transkript-Bereinigung](/docs/de/settings-reference#cleanupperioddays) hat seitdem sein gespeichertes Gespräch entfernt, zum Beispiel nachdem der Computer für Wochen aus war. Das Öffnen einer solchen Zeile [setzt normalerweise sein gespeichertes Gespräch fort](/docs/de/agent-view#sessions-show-as-failed-after-shutdown). Mit nichts zum Fortsetzen lehnt Claude Code ab, anstatt die ursprüngliche Eingabeaufforderung der Sitzung ohne Nachfrage erneut auszuführen:4623Sie haben eine [Hintergrund-Sitzung](/docs/de/agent-view) geöffnet, die endete, während der Hintergrund-Service aus war, und die [Transkript-Bereinigung](/docs/de/settings-reference#cleanupperioddays) hat seitdem ihre gespeicherte Konversation entfernt, zum Beispiel nachdem der Computer für Wochen aus war. Das Öffnen einer solchen Zeile [setzt normalerweise ihre gespeicherte Konversation fort](/docs/de/agent-view#sessions-show-as-failed-after-shutdown). Da nichts zum Fortsetzen übrig ist, lehnt Claude Code ab, anstatt den ursprünglichen Prompt der Sitzung ohne Nachfrage erneut auszuführen:

4601 4624 

4602```text theme={null}4625```text theme={null}

4603This session's saved conversation is no longer on disk (it ended while the background service was off, and old transcripts are cleaned up), so there is nothing to resume. `claude rm 7c5dcf5d` deletes the row; `claude respawn 7c5dcf5d` runs its original prompt again instead.4626This session's saved conversation is no longer on disk (it ended while the background service was off, and old transcripts are cleaned up), so there is nothing to resume. `claude rm 7c5dcf5d` deletes the row; `claude respawn 7c5dcf5d` runs its original prompt again instead.

4604```4627```

4605 4628 

4606`claude attach <id>` druckt diesen Text. In der Agent-Ansicht ist die Fußzeile kürzer und endet mit `ctrl+x deletes the row`.4629`claude attach <id>` gibt diesen Text aus. In der Agent-Ansicht ist die Fußzeile kürzer und endet mit `ctrl+x deletes the row`.

4607 4630 

4608**Was zu tun ist:**4631**Was zu tun ist:**

4609 4632 

4610* Führen Sie `claude rm <id>` aus, um die Zeile zu löschen. Wenn einer der [beibehaltenen Fälle](/docs/de/agent-view#what-deleting-a-session-removes) zutrifft, behält `claude rm` die Zeile und den Worktree stattdessen bei und nennt den Grund4633* Führen Sie `claude rm <id>` aus, um die Zeile zu löschen. Wenn einer der [beibehaltenen Fälle](/docs/de/agent-view#what-deleting-a-session-removes) zutrifft, behält `claude rm` die Zeile und den Worktree stattdessen bei und nennt den Grund

4611* Um die ursprüngliche Eingabeaufforderung der Sitzung erneut als frisches Gespräch auszuführen, führen Sie `claude respawn <id>` aus4634* Um den ursprünglichen Prompt der Sitzung erneut als frische Konversation auszuführen, führen Sie `claude respawn <id>` aus

4612 4635 

4613Vor v2.1.248 führte das Öffnen einer solchen Zeile die ursprüngliche Eingabeaufforderung der Sitzung erneut aus, anstatt abzulehnen, und zog eine Wochen alte Aufgabe in den Vordergrund.4636Vor v2.1.248 führte das Öffnen einer solchen Zeile den ursprünglichen Prompt der Sitzung erneut aus, anstatt abzulehnen, und zog eine Wochen alte Aufgabe zurück in den Vordergrund.

4614 4637 

4615<h3 id="worktree-has-commits-that-are-not-pushed-anywhere">4638<h3 id="worktree-has-commits-that-are-not-pushed-anywhere">

4616 Worktree hat Commits, die nirgendwo gepusht werden4639 Worktree hat Commits, die nirgendwo gepusht werden

4617</h3>4640</h3>

4618 4641 

4619Sie haben versucht, eine [Hintergrund-Sitzung](/docs/de/agent-view#what-deleting-a-session-removes) zu löschen, deren Worktree Commits enthält, die Claude Code nicht bestätigen kann, dass sie anderswo gespeichert sind. Claude Code behält den Worktree und die Sitzungszeile bei, anstatt die Commits zu zerstören. `claude rm` nennt den Branch und die nicht gepushten Commits und sagt, wie Sie vorgehen:4642Sie haben versucht, eine [Hintergrund-Sitzung](/docs/de/agent-view#what-deleting-a-session-removes) zu löschen, deren Worktree Commits enthält, bei denen Claude Code nicht bestätigen kann, dass sie anderswo gespeichert sind. Claude Code behält den Worktree und die Sitzungszeile bei, anstatt die Commits ungesehen zu zerstören. `claude rm` nennt den Branch und die nicht gepushten Commits und sagt, wie Sie vorgehen:

4620 4643 

4621```text theme={null}4644```text theme={null}

4622kept 7c5dcf5d — its worktree is still at "/home/you/project/.claude/worktrees/fix-login"4645kept 7c5dcf5d — its worktree is still at “/home/you/project/.claude/worktrees/fix-login”

4623 2 unpushed commits on "claude/fix-login": a1b2c3d "Fix login flow" and 1 more. They exist on no remote, so deleting the worktree would lose them.4646 2 unpushed commits on “claude/fix-login”: a1b2c3d “Fix login flow” and 1 more. They exist on no remote, so deleting the worktree would lose them.

4624 push them and run 'claude rm 7c5dcf5d' again, or discard the worktree and its commits: claude rm 7c5dcf5d --discard-unpushed a1b2c3d000000000000000000000000000000000@0123456789abcdef0123456789abcdef4647 push them and run 'claude rm 7c5dcf5d' again, or discard the worktree and its commits: claude rm 7c5dcf5d --discard-unpushed a1b2c3d000000000000000000000000000000000@0123456789abcdef0123456789abcdef

4625```4648```

4626 4649 

4627Wenn Claude Code die Commits nicht zusammenfassen kann, liest sich die Detailzeile `The worktree has unpushed commits` stattdessen. In der [Agent-Ansicht](/docs/de/agent-view) zeigt die Sitzungszeile `not deleted` mit dem gleichen Grund.4650Wenn Claude Code die Commits nicht zusammenfassen kann, lautet die Detailzeile stattdessen `The worktree has unpushed commits`. In der [Agent-Ansicht](/docs/de/agent-view) zeigt die Sitzungszeile `not deleted` mit dem gleichen Grund.

4628 4651 

4629Commits auf einem Remote blockieren die Löschung nicht. Auch nicht Commits auf der lokalen Kopie des Standard-Branches Ihres `origin`-Remote, solange dieser Branch in Ihrem Haupt-Checkout ausgecheckt ist, dem Repository-Verzeichnis selbst, nicht einem Worktree.4652Commits auf einem Remote blockieren die Löschung nicht. Auch nicht Commits auf der lokalen Kopie des Standard-Branches Ihres `origin`-Remote, solange dieser Branch in Ihrem Haupt-Checkout ausgecheckt ist, dem Repository-Verzeichnis selbst, nicht einem Worktree.

4630 4653 

4631**Was zu tun ist:**4654**Was zu tun ist:**

4632 4655 

4633* Um die Commits zu behalten, pushen Sie den Branch des Worktree, oder mergen Sie ihn in den Standard-Branch, der in Ihrem Haupt-Checkout ausgecheckt ist, dann löschen Sie die Sitzung erneut4656* Um die Commits zu behalten, pushen Sie den Branch des Worktree, oder mergen Sie ihn in den Standard-Branch, der in Ihrem Haupt-Checkout ausgecheckt ist, dann löschen Sie die Sitzung erneut

4634* Um die Commits zu verwerfen, führen Sie den `claude rm <id> --discard-unpushed`-Befehl aus, den die Meldung druckte, oder drücken Sie `Ctrl+X` zweimal auf der Sitzungszeile in der Agent-Ansicht erneut. Dies entfernt die Sitzung und den Worktree zusammen mit seinem Branch, den nicht gepushten Commits und allen nicht committeten Änderungen. Wenn der Worktree seit der Ablehnung einen Commit gewonnen hat, behält Claude Code ihn erneut und zeigt den aktualisierten Status4657* Um die Commits zu verwerfen, führen Sie den `claude rm <id> --discard-unpushed`-Befehl aus, den die Meldung ausgegeben hat, oder drücken Sie `Ctrl+X` zweimal auf der Sitzungszeile in der Agent-Ansicht erneut. Dies entfernt die Sitzung und den Worktree zusammen mit seinem Branch, den nicht gepushten Commits und allen nicht committeten Änderungen. Wenn der Worktree seit der Ablehnung einen Commit hinzubekommen hat, behält Claude Code ihn erneut und zeigt den aktualisierten Status

4635* Wenn die Meldung sagt, dass der Worktree auch von einer anderen beendeten Sitzung aufgezeichnet wird, blockiert das Löschen erneut nicht, ihn zu verwerfen: pushen Sie die Commits, dann löschen Sie die Sitzung erneut4658* Wenn die Meldung sagt, dass der Worktree auch von einer anderen beendeten Sitzung aufgezeichnet wird, verwirft erneutes Löschen ihn nicht: Pushen Sie die Commits, dann löschen Sie die Sitzung erneut

4636 4659 

4637Vor v2.1.268 setzte `claude rm` die Commit-Zusammenfassung auf die `kept`-Zeile selbst. Wenn `claude rm` die Commits nicht zusammenfassen konnte, las sich die `kept`-Zeile `worktree has commits that are not pushed anywhere` anstelle der Zusammenfassung.4660Vor v2.1.268 setzte `claude rm` die Commit-Zusammenfassung auf die `kept`-Zeile selbst. Wenn `claude rm` die Commits nicht zusammenfassen konnte, lautete die `kept`-Zeile `worktree has commits that are not pushed anywhere` anstelle der Zusammenfassung.

4638 4661 

4639Vor v2.1.260 nannte die Meldung nicht den Branch oder die Commits, und das Löschen erneut wurde auf die gleiche Weise abgelehnt: das Löschen der Sitzung ohne Pushen bedeutete das Entfernen des Worktree selbst mit `git worktree remove --force <path>`, dann das erneute Ausführen von `claude rm <id>`.4662Vor v2.1.260 nannte die Meldung nicht den Branch oder die Commits, und erneutes Löschen wurde auf die gleiche Weise abgelehnt: Das Löschen der Sitzung ohne Pushen bedeutete, den Worktree selbst mit `git worktree remove --force <path>` zu entfernen und dann `claude rm <id>` erneut auszuführen.

4640 4663 

4641Vor v2.1.248 zählte der Standard-Branch, der in Ihrem Haupt-Checkout ausgecheckt ist, nicht: Ein Branch, den Sie bereits dort gemergt haben, löste diese Ablehnung immer noch aus, bis seine Commits einen Remote erreichten.4664Vor v2.1.248 zählte der Standard-Branch, der in Ihrem Haupt-Checkout ausgecheckt ist, nicht: Ein Branch, den Sie bereits dort gemergt hatten, löste diese Ablehnung immer noch aus, bis seine Commits einen Remote erreichten.

4642 4665 

4643<h3 id="terminal-host-process-died">4666<h3 id="terminal-host-process-died">

4644 Terminal-Host-Prozess ist gestorben4667 Terminal-Host-Prozess ist gestorben

4645</h3>4668</h3>

4646 4669 

4647Jedes [Hintergrund-Sitzungs](/docs/de/agent-view)-Terminal läuft in einem Host-Prozess unter dem Hintergrund-Service, und dieser Prozess ist gestorben, während der Service seine Verbindung noch hielt, daher konnte die Sitzung nicht erreicht werden.4670Das Terminal jeder [Hintergrund-Sitzung](/docs/de/agent-view) läuft in einem Host-Prozess unter dem Hintergrund-Service, und dieser Prozess ist gestorben, während der Service seine Verbindung noch hielt, daher konnte die Sitzung nicht erreicht werden.

4648 4671 

4649Unter Linux und WSL überprüft der Hintergrund-Service jeden Host-Prozess alle paar Sekunden, markiert die Sitzung als fehlgeschlagen, wenn der Prozess beendet wurde, aber seine Verbindung zum Service nie geschlossen wurde, und zeigt den Grund auf ihrer Zeile in der [Agent-Ansicht](/docs/de/agent-view#read-session-state):4672Unter Linux und WSL überprüft der Hintergrund-Service jeden Host-Prozess alle paar Sekunden, markiert die Sitzung als fehlgeschlagen, wenn der Prozess beendet wurde, aber seine Verbindung zum Service nie geschlossen wurde, und zeigt den Grund auf ihrer Zeile in der [Agent-Ansicht](/docs/de/agent-view#read-session-state):

4650 4673 


4652terminal host process died — press Enter to restart4675terminal host process died — press Enter to restart

4653```4676```

4654 4677 

4655Aus der Shell startet `claude attach <id>` eine Sitzung, die bereits als fehlgeschlagen für einen toten Host markiert ist, neu, und druckt ansonsten den Grund und beendet sich:4678Aus der Shell startet `claude attach <id>` eine Sitzung, die bereits wegen eines toten Hosts als fehlgeschlagen markiert ist, neu, und gibt ansonsten die Ursache aus und beendet sich:

4656 4679 

4657```text theme={null}4680```text theme={null}

4658Couldn't attach to <id> — This session's terminal host process died (the conversation is saved) — run `claude attach <id>` again to restart it on a fresh host.4681Couldn't attach to <id> — This session's terminal host process died (the conversation is saved) — run `claude attach <id>` again to restart it on a fresh host.

4659```4682```

4660 4683 

4661Das Gespräch ist in jedem Fall gespeichert.4684Die Konversation ist in jedem Fall gespeichert.

4662 4685 

4663Eine Zeile, die einen [Shell-Befehl](/docs/de/agent-view#run-a-shell-command) ausführt, zeigt stattdessen `terminal host process died — its output is gone; the command was not run again`, und `claude attach` druckt `This command's terminal host process died — its output is gone and the command was not run again`. Claude Code führt den Befehl niemals für Sie erneut aus.4686Eine Zeile, die einen [Shell-Befehl](/docs/de/agent-view#run-a-shell-command) ausführt, zeigt stattdessen `terminal host process died — its output is gone; the command was not run again`, und `claude attach` gibt `This command's terminal host process died — its output is gone and the command was not run again` aus. Claude Code führt den Befehl niemals für Sie erneut aus.

4664 4687 

4665**Was zu tun ist:**4688**Was zu tun ist:**

4666 4689 

4667* Drücken Sie in der Agent-Ansicht `Enter` auf der fehlgeschlagenen Zeile; die Sitzung startet auf einem frischen Host-Prozess neu und das Gespräch wird fortgesetzt4690* Drücken Sie in der Agent-Ansicht `Enter` auf der fehlgeschlagenen Zeile; die Sitzung startet auf einem frischen Host-Prozess neu und die Konversation wird fortgesetzt

4668* Führen Sie aus der Shell `claude attach <id>` erneut aus. Claude Code druckt `Session <id>'s terminal host died — restarting it on a fresh one…` und öffnet die Sitzung erneut4691* Führen Sie aus der Shell `claude attach <id>` erneut aus. Claude Code gibt `Session <id>'s terminal host died — restarting it on a fresh one…` aus und öffnet die Sitzung erneut

4669* Sie können eine Shell-Befehl-Zeile auf diese Weise nicht neu starten; entsenden Sie den Befehl erneut, um ihn erneut auszuführen4692* Sie können eine Shell-Befehl-Zeile auf diese Weise nicht neu starten; entsenden Sie den Befehl erneut, um ihn erneut auszuführen

4670 4693 

4671Vor v2.1.247 konnte ein toter Host-Prozess jede Liveness-Überprüfung bestehen, die der Hintergrund-Service ausführte, daher zeigte das Öffnen der Sitzung `opening… · esc to cancel` unbegrenzt und `claude attach <id>` wartete ohne Fehlermeldung.4694Vor v2.1.247 konnte ein toter Host-Prozess jede Liveness-Überprüfung bestehen, die der Hintergrund-Service ausführte, daher zeigte das Öffnen der Sitzung `opening… · esc to cancel` unbegrenzt und `claude attach <id>` wartete ohne Fehlermeldung.


4674 Sitzung antwortet nicht4697 Sitzung antwortet nicht

4675</h3>4698</h3>

4676 4699 

4677Sie haben eine [Hintergrund-Sitzung](/docs/de/agent-view) geöffnet und der Hintergrund-Service hat das Öffnen akzeptiert, aber keine Ausgabe kam für etwa zehn Sekunden an, daher schließt Claude Code, dass der Prozess, der das Terminal der Sitzung weiterleitet, keine Ausgabe liefern kann, und beendet den Versuch, anstatt zu warten.4700Sie haben eine [Hintergrund-Sitzung](/docs/de/agent-view) geöffnet und der Hintergrund-Service hat das Öffnen akzeptiert, aber etwa zehn Sekunden lang kam keine Ausgabe an, daher schließt Claude Code, dass der Prozess, der das Terminal der Sitzung weiterleitet, keine Ausgabe liefern kann, und beendet den Versuch, anstatt zu warten.

4678 4701 

4679In der Agent-Ansicht bietet Claude Code einen Neustart in der Fußzeile an:4702In der Agent-Ansicht bietet Claude Code einen Neustart in der Fußzeile an:

4680 4703 


4682Press enter again to restart this session — it isn't responding (its conversation is saved and resumes).4705Press enter again to restart this session — it isn't responding (its conversation is saved and resumes).

4683```4706```

4684 4707 

4685Aus der Shell druckt `claude attach <id>` den Grund und beendet sich:4708Aus der Shell gibt `claude attach <id>` die Ursache aus und beendet sich:

4686 4709 

4687```text theme={null}4710```text theme={null}

4688Couldn't attach to <id> — Session isn't responding — `claude stop <id>`, then `claude attach <id>` restarts it (the conversation is saved).4711Couldn't attach to <id> — Session isn't responding — `claude stop <id>`, then `claude attach <id>` restarts it (the conversation is saved).


4692 4715 

4693**Was zu tun ist:**4716**Was zu tun ist:**

4694 4717 

4695* Drücken Sie in der Agent-Ansicht `Enter` auf der gleichen Zeile erneut. Claude Code stoppt den nicht reagierenden Prozess und startet die Sitzung neu, und das Gespräch wird fortgesetzt. Nichts wird ohne diesen zweiten Druck gestoppt4718* Drücken Sie in der Agent-Ansicht `Enter` auf derselben Zeile erneut. Claude Code stoppt den nicht reagierenden Prozess und startet die Sitzung neu, und die Konversation wird fortgesetzt. Nichts wird ohne diesen zweiten Tastendruck gestoppt

4696* Führen Sie aus der Shell `claude stop <id>` aus, dann `claude attach <id>`4719* Führen Sie aus der Shell `claude stop <id>` aus, dann `claude attach <id>`

4697* Drücken Sie für eine Shell-Befehl-Zeile `Ctrl+X` in der Agent-Ansicht oder führen Sie `claude stop <id>` aus, um sie zu stoppen; entsenden Sie den Befehl erneut, um ihn erneut auszuführen4720* Drücken Sie für eine Shell-Befehl-Zeile `Ctrl+X` in der Agent-Ansicht oder führen Sie `claude stop <id>` aus, um sie zu stoppen; entsenden Sie den Befehl erneut, um ihn erneut auszuführen

4698 4721 

4699<h3 id="session-was-stopped-while-the-respawn-was-in-flight">4722<h3 id="session-was-stopped-while-the-respawn-was-in-flight">

4700 Sitzung wurde gestoppt, während der Respawn im Flug war4723 Sitzung wurde gestoppt, während der Respawn im Gange war

4701</h3>4724</h3>

4702 4725 

4703Sie haben eine [Hintergrund-Sitzung](/docs/de/agent-view) geöffnet, deren Prozess nicht lief, und während Claude Code sie neu startete, stoppte ein anderer Claude Code-Prozess sie, zum Beispiel `claude stop` in einem anderen Terminal. Claude Code hält die Sitzung gestoppt:4726Sie haben eine [Hintergrund-Sitzung](/docs/de/agent-view) geöffnet, deren Prozess nicht lief, und während Claude Code sie neu startete, stoppte ein anderer Claude Code-Prozess sie, zum Beispiel `claude stop` in einem anderen Terminal. Claude Code hält die Sitzung gestoppt:


4706Session <id> was stopped while the respawn was in flight4729Session <id> was stopped while the respawn was in flight

4707```4730```

4708 4731 

4709Das Öffnen einer Sitzung, die Sie gerade entsandt haben, während ihr Prozess noch startet, wartet auf den Prozess stattdessen. Vor v2.1.246 konnte das Öffnen zu diesem Zeitpunkt sie stoppen und diese Meldung anzeigen.4732Das Öffnen einer Sitzung, die Sie gerade entsandt haben, während ihr Prozess noch startet, wartet stattdessen auf den Prozess. Vor v2.1.246 konnte das Öffnen zu diesem Zeitpunkt sie stoppen und diese Meldung anzeigen.

4710 4733 

4711**Was zu tun ist:**4734**Was zu tun ist:**

4712 4735 

4713* Wenn Sie die Sitzung nicht gestoppt haben, öffnen Sie ihre Zeile erneut in der Agent-Ansicht oder führen Sie `claude respawn <id>` aus, um sie neu zu starten4736* Wenn Sie die Sitzung nicht gestoppt haben, öffnen Sie ihre Zeile erneut in der Agent-Ansicht oder führen Sie `claude respawn <id>` aus, um sie neu zu starten

4714* Wenn Sie sie selbst gestoppt haben, bleibt nichts zu tun: die Sitzung bleibt gestoppt4737* Wenn Sie sie selbst gestoppt haben, bleibt nichts zu tun: Die Sitzung bleibt gestoppt

4715 4738 

4716<h3 id="session-agent-no-longer-available">4739<h3 id="session-agent-no-longer-available">

4717 Sitzungs-Agent nicht mehr verfügbar4740 Sitzungs-Agent nicht mehr verfügbar

4718</h3>4741</h3>

4719 4742 

4720Sie haben eine Sitzung fortgesetzt, die einen [benutzerdefinierten Agent](/docs/de/sub-agents#invoke-subagents-explicitly) ausführte, gestartet mit `--agent` oder der `agent`-Einstellung, und Claude Code hat keinen Agent mit diesem Namen gefunden. Es durchsucht zuerst das ursprüngliche Verzeichnis der Sitzung, wenn Sie [diesen Arbeitsbereich vertraut haben](/docs/de/permissions#project-allow-rules-and-workspace-trust), dann das Verzeichnis, von dem aus Sie fortsetzen. Die Sitzung wird immer noch fortgesetzt, aber mit den Standard-Tools, so dass die Tool-Einschränkungen des Agenten nicht mehr gelten:4743Sie haben eine Sitzung fortgesetzt, die einen [benutzerdefinierten Agenten](/docs/de/sub-agents#invoke-subagents-explicitly) ausführte, gestartet mit `--agent` oder der `agent`-Einstellung, und Claude Code hat keinen Agenten mit diesem Namen gefunden. Es durchsucht zuerst das ursprüngliche Verzeichnis der Sitzung, wenn Sie [diesem Workspace vertraut haben](/docs/de/permissions#project-allow-rules-and-workspace-trust), dann das Verzeichnis, von dem aus Sie fortsetzen. Die Sitzung wird trotzdem fortgesetzt, aber mit den Standard-Tools, sodass die Tool-Einschränkungen des Agenten nicht mehr gelten:

4721 4744 

4722```text theme={null}4745```text theme={null}

4723This session was running agent 'code-reviewer', which is no longer available (no agent by that name in /home/you/project). Continuing with the default tools and system prompt — the agent's tool restrictions no longer apply. To restore it, re-create the agent, or resume with an explicit --agent <name>.4746This session was running agent 'code-reviewer', which is no longer available (no agent by that name in /home/you/project). Continuing with the default tools and system prompt — the agent's tool restrictions no longer apply. To restore it, re-create the agent, or resume with an explicit --agent <name>.

4724```4747```

4725 4748 

4726Die Warnung nennt nur die Verzeichnisse, die Claude Code durchsucht hat, und sie erscheint im fortgesetzten Gespräch, ob Sie eine [Hintergrund-Sitzung](/docs/de/agent-view) aufwecken, `/resume` oder `claude --resume` ausführen, oder im [nicht-interaktiven Modus](/docs/de/headless) fortsetzen, wo sie auch zu stderr geht. Sitzungen, die `--input-format stream-json` verwenden, zeigen sie nicht, da das Agent SDK Agenten nach dem Start bereitstellt.4749Die Warnung nennt nur die Verzeichnisse, die Claude Code durchsucht hat, und sie erscheint in der fortgesetzten Konversation, ob Sie eine [Hintergrund-Sitzung](/docs/de/agent-view) aufwecken, `/resume` oder `claude --resume` ausführen oder im [nicht interaktiven Modus](/docs/de/headless) fortsetzen, wo sie auch an stderr geht. Sitzungen, die `--input-format stream-json` verwenden, zeigen sie nicht, da das Agent SDK Agenten nach dem Start bereitstellt.

4727 4750 

4728Claude Code speichert den Fallback nicht in der Sitzung, daher wiederholt sich die Warnung bei jedem Fortsetzen, bis Sie handeln. Der eingebaute `claude`-Agent löst die Warnung nicht aus, da das Zurückfallen auf den Standard-Toolset für ihn nichts ändert. Vor v2.1.216 setzte Claude Code stillschweigend als Standard-Agent fort, und die Suche deckte nur das Verzeichnis ab, von dem aus Sie fortgesetzt haben, daher ging ein Projekt-Agent bei jedem Fortsetzen von einem anderen Verzeichnis verloren.4751Claude Code speichert den Fallback nicht in der Sitzung, daher wiederholt sich die Warnung bei jedem Fortsetzen, bis Sie handeln. Der eingebaute `claude`-Agent löst die Warnung nicht aus, da das Zurückfallen auf das Standard-Toolset für ihn nichts ändert. Vor v2.1.216 setzte Claude Code stillschweigend als Standard-Agent fort, und die Suche deckte nur das Verzeichnis ab, von dem aus Sie fortgesetzt haben, daher ging ein projektbezogener Agent bei jedem Fortsetzen aus einem anderen Verzeichnis verloren.

4729 4752 

4730**Was zu tun ist:**4753**Was zu tun ist:**

4731 4754 

4732* Erstellen Sie die Agent-Datei unter `.claude/agents/<name>.md` im Projekt der Sitzung oder unter `~/.claude/agents/<name>.md` für einen persönlichen Agent neu, dann setzen Sie erneut fort4755* Erstellen Sie die Agent-Datei unter `.claude/agents/<name>.md` im Projekt der Sitzung oder unter `~/.claude/agents/<name>.md` für einen persönlichen Agenten neu, dann setzen Sie erneut fort

4733* Oder setzen Sie mit `--agent <name>` fort, das einen Agent benennt, der existiert, um die Sitzung stattdessen als dieser Agent auszuführen4756* Oder setzen Sie mit `--agent <name>` fort, das einen Agenten benennt, der existiert, um die Sitzung stattdessen als dieser Agent auszuführen

4734* Wenn der Agent Projekt-Agent ist und Sie das ursprüngliche Verzeichnis der Sitzung nicht vertraut haben, führen Sie Claude Code dort einmal aus, akzeptieren Sie den Vertrauensdialog, dann setzen Sie erneut fort4757* Wenn der Agent projektbezogen ist und Sie dem ursprünglichen Verzeichnis der Sitzung nicht vertraut haben, führen Sie Claude Code dort einmal aus, akzeptieren Sie den Vertrauensdialog, dann setzen Sie erneut fort

4735 4758 

4736<h3 id="claude_code_process_wrapper-launcher-errors">4759<h3 id="claude_code_process_wrapper-launcher-errors">

4737 CLAUDE\_CODE\_PROCESS\_WRAPPER Launcher-Fehler4760 CLAUDE\_CODE\_PROCESS\_WRAPPER Launcher-Fehler


4743CLAUDE_CODE_PROCESS_WRAPPER: launcher `/opt/corp/launcher` is not an executable regular file4766CLAUDE_CODE_PROCESS_WRAPPER: launcher `/opt/corp/launcher` is not an executable regular file

4744```4767```

4745 4768 

4746Ein Launcher, der startet, aber beendet wird, ohne sich selbst durch Claude Code zu ersetzen, schlägt die Sitzung fehl, die er startete, und die Sitzungszeile in der Agent-Ansicht meldet, dass der Launcher `must exec, not daemonize`, gefolgt von allem, was der Launcher druckte. Eine Sitzung, die nicht starten oder den Hintergrund-Service nicht erreichen kann, weil des Launchers, meldet das Launcher-Problem als Grund innerhalb von `Couldn't reach the background service (...)`.4769Ein Launcher, der startet, aber beendet wird, ohne sich selbst durch Claude Code zu ersetzen, lässt die Sitzung fehlschlagen, die er startete, und die Sitzungszeile in der Agent-Ansicht meldet, dass der Launcher `must exec, not daemonize`, gefolgt von allem, was der Launcher ausgegeben hat. Eine Sitzung, die wegen des Launchers nicht starten oder den Hintergrund-Service nicht erreichen kann, meldet das Launcher-Problem als Grund innerhalb von `Couldn't reach the background service (...)`.

4747 4770 

4748**Was zu tun ist:**4771**Was zu tun ist:**

4749 4772 

4750* Setzen Sie die Variable auf den absoluten Pfad einer ausführbaren Datei, die mit `exec "$@"` endet. Siehe [den Launcher-Vertrag](/docs/de/corporate-launcher#the-launcher-contract) für den vollständigen Vertrag4773* Setzen Sie die Variable auf den absoluten Pfad einer ausführbaren Datei, die mit dem Aufruf `exec "$@"` endet. Siehe [den Launcher-Vertrag](/docs/de/corporate-launcher#the-launcher-contract) für den vollständigen Vertrag

4751* Überprüfen Sie `/status`, das den aufgelösten Start-Befehl in seinem Self-exec-Eintrag anzeigt und warnt, wenn der laufende Hintergrund-Service nicht damit übereinstimmt, oder führen Sie `claude daemon status` aus einer Shell aus4774* Überprüfen Sie `/status`, das den aufgelösten Start-Befehl in seinem Self-exec-Eintrag anzeigt und warnt, wenn der laufende Hintergrund-Service nicht damit übereinstimmt, oder führen Sie `claude daemon status` aus einer Shell aus

4752* Nach dem Beheben des Wertes im `env`-Block von [Einstellungen](/docs/de/corporate-launcher#set-up-the-launcher) starten Sie den Hintergrund-Service mit `claude daemon stop --any` neu, damit der nächste Dispatch einen umschlossenen startet4775* Nach dem Beheben des Wertes im `env`-Block der [Einstellungen](/docs/de/corporate-launcher#set-up-the-launcher) starten Sie den Hintergrund-Service mit `claude daemon stop --any` neu, damit der nächste Dispatch einen umschlossenen startet

4753 4776 

4754<h3 id="eunknown-when-starting-a-background-session">4777<h3 id="eunknown-when-starting-a-background-session">

4755 EUNKNOWN beim Starten einer Hintergrund-Sitzung4778 EUNKNOWN beim Starten einer Hintergrund-Sitzung

4756</h3>4779</h3>

4757 4780 

4758Windows lehnte ab, ein Programm mit einem Fehlercode zu starten, der keinen Standardnamen hat, daher wird der Fehler als `EUNKNOWN` angezeigt. Der übliche Auslöser ist eine Softwarebeschränkungsrichtlinie, wie Gruppenrichtlinie oder AppLocker, die das gestartete Programm blockiert. Der Fehler erscheint, wenn Sie eine [Hintergrund-Sitzung](/docs/de/agent-view) mit `/background` oder `claude --bg` starten:4781Windows lehnte ab, ein Programm zu starten, mit einem Fehlercode, der keinen Standardnamen hat, daher wird der Fehler als `EUNKNOWN` angezeigt. Der übliche Auslöser ist eine Softwarebeschränkungsrichtlinie, wie Gruppenrichtlinie oder AppLocker, die das gestartete Programm blockiert. Der Fehler erscheint, wenn Sie eine [Hintergrund-Sitzung](/docs/de/agent-view) mit `/background` oder `claude --bg` starten:

4759 4782 

4760```text theme={null}4783```text theme={null}

4761Couldn't reach the background service (spawn background service: EUNKNOWN: unknown error, uv_spawn) — run 'claude daemon status'4784Couldn't reach the background service (spawn background service: EUNKNOWN: unknown error, uv_spawn) — run 'claude daemon status'


4763 4786 

4764Bei einigen Konten sagt die Meldung `daemon` anstelle von `background service`.4787Bei einigen Konten sagt die Meldung `daemon` anstelle von `background service`.

4765 4788 

4766Bei einer npm-Installation hat ein `EUNKNOWN`, das erscheint, während `npm install -g @anthropic-ai/claude-code` die Binärdatei ersetzt, die gleiche Ursache wie [`EACCES` beim Starten einer Hintergrund-Sitzung](#eacces-when-starting-a-background-session) und wird gelöscht, wenn Sie nach Abschluss der Installation erneut versuchen.4789Bei einer npm-Installation hat ein `EUNKNOWN`, das erscheint, während `npm install -g @anthropic-ai/claude-code` die Binärdatei ersetzt, die gleiche Ursache wie [`EACCES` während einer Neuinstallation](#eacces-when-starting-a-background-session) und verschwindet, wenn Sie es nach Abschluss der Installation erneut versuchen.

4767 4790 

4768Claude Code startet den Hintergrund-Service über PowerShell, damit der Service das Schließen des Terminals überlebt, wobei PowerShell 7 verwendet wird, wenn es installiert ist, und Windows PowerShell 5.1 ansonsten. Wenn weder PowerShell laufen kann, startet Claude Code den Service stattdessen direkt, daher verursacht eine Richtlinie, die nur PowerShell blockiert, diesen Fehler nicht.4791Claude Code startet den Hintergrund-Service über PowerShell, damit der Service das Schließen des Terminals überlebt, wobei PowerShell 7 verwendet wird, wenn es installiert ist, und ansonsten Windows PowerShell 5.1. Wenn keine der beiden PowerShell-Versionen laufen kann, startet Claude Code den Service stattdessen direkt, daher verursacht eine Richtlinie, die nur PowerShell blockiert, diesen Fehler nicht.

4769 4792 

4770Vor v2.1.212 verwendete Claude Code nur Windows PowerShell 5.1, um den Service zu starten, daher schlugen alle Maschinen fehl, auf denen Gruppenrichtlinie PowerShell 5.1 blockierte, mit `Couldn't start the session — EUNKNOWN: unknown error, uv_spawn`, sogar mit PowerShell 7 installiert.4793Vor v2.1.212 verwendete Claude Code nur Windows PowerShell 5.1, um den Service zu starten, daher schlug jede Maschine, auf der Gruppenrichtlinie PowerShell 5.1 blockierte, mit `Couldn't start the session — EUNKNOWN: unknown error, uv_spawn` fehl, selbst wenn PowerShell 7 installiert war.

4771 4794 

4772**Was zu tun ist:**4795**Was zu tun ist:**

4773 4796 

4774* Wenn die Meldung `Couldn't start the session` liest, aktualisieren Sie auf v2.1.212 oder später. Auf früheren Versionen können Sie auch `claude daemon run` in einem separaten Terminal zuerst ausführen, dann die Hintergrund-Sitzung erneut starten. Dieser Befehl führt den Hintergrund-Service im Vordergrund des Terminals aus, daher dauert der Service nur so lange wie dieses Terminal offen bleibt.4797* Wenn die Meldung `Couldn't start the session` lautet, aktualisieren Sie auf v2.1.212 oder später. Auf früheren Versionen können Sie auch zuerst `claude daemon run` in einem separaten Terminal ausführen und dann die Hintergrund-Sitzung erneut starten. Dieser Befehl führt den Hintergrund-Service im Vordergrund des Terminals aus, daher läuft der Service nur so lange, wie dieses Terminal offen bleibt.

4775* Wenn eine npm-Installation die Binärdatei ersetzt, warten Sie, bis sie fertig ist, dann starten Sie die Hintergrund-Sitzung erneut4798* Wenn eine npm-Installation die Binärdatei ersetzt hat, warten Sie, bis sie fertig ist, dann starten Sie die Hintergrund-Sitzung erneut

4776* Wenn der Fehler auf v2.1.212 oder später erscheint, während keine npm-Installation läuft, überprüfen Sie mit Ihrem Windows-Administrator, ob eine Beschränkungsrichtlinie die Claude Code-Ausführungsdatei blockiert4799* Wenn der Fehler auf v2.1.212 oder später erscheint, während keine npm-Installation läuft, klären Sie mit Ihrem Windows-Administrator, ob eine Beschränkungsrichtlinie die Claude Code-Ausführungsdatei blockiert

4777* Wenn der Hintergrund-Service stoppt, wenn Sie das Terminal schließen, startete Claude Code ihn ohne PowerShell. Installieren Sie PowerShell 7, oder bitten Sie Ihren Administrator, PowerShell freizugeben, damit der Service das Terminal überleben kann.4800* Wenn der Hintergrund-Service stoppt, wenn Sie das Terminal schließen, hat Claude Code ihn ohne PowerShell gestartet. Installieren Sie PowerShell 7, oder bitten Sie Ihren Administrator, PowerShell freizugeben, damit der Service das Terminal überleben kann.

4778 4801 

4779<h3 id="eacces-when-starting-a-background-session">4802<h3 id="eacces-when-starting-a-background-session">

4780 EACCES beim Starten einer Hintergrund-Sitzung4803 EACCES beim Starten einer Hintergrund-Sitzung

4781</h3>4804</h3>

4782 4805 

4783Claude Code konnte seine eigene Binärdatei nicht ausführen, um den [Hintergrund-Service](/docs/de/agent-view#the-supervisor-process) zu starten, der Hintergrund-Sitzungen hostet. Bei einer npm-Installation bedeutet dies normalerweise, dass `npm install -g @anthropic-ai/claude-code` die Binärdatei zu diesem Zeitpunkt ersetzt, ob Sie es ausführten oder der [Auto-Updater](/docs/de/setup#auto-updates) es tat. Der Fehler erscheint, wenn Sie eine Sitzung aus der [Agent-Ansicht](/docs/de/agent-view) öffnen:4806Claude Code konnte seine eigene Binärdatei nicht ausführen, um den [Hintergrund-Service](/docs/de/agent-view#the-supervisor-process) zu starten, der Hintergrund-Sitzungen hostet. Bei einer npm-Installation bedeutet dies normalerweise, dass `npm install -g @anthropic-ai/claude-code` die Binärdatei zu diesem Zeitpunkt ersetzte, ob Sie es ausgeführt haben oder der [Auto-Updater](/docs/de/setup#auto-updates). Der Fehler erscheint, wenn Sie eine Sitzung aus der [Agent-Ansicht](/docs/de/agent-view) öffnen:

4784 4807 

4785```text theme={null}4808```text theme={null}

4786Couldn't start the background service — spawn background service: EACCES: permission denied, posix_spawn '/usr/local/lib/node_modules/@anthropic-ai/claude-code/bin/claude'4809Couldn't start the background service — spawn background service: EACCES: permission denied, posix_spawn '/usr/local/lib/node_modules/@anthropic-ai/claude-code/bin/claude'

4787```4810```

4788 4811 

4789Wenn Sie eine Sitzung mit `/background` oder `claude --bg` starten, erscheint der gleiche Grund innerhalb von `Couldn't reach the background service (...)`. Während des gleichen Neuinstallationsfensters kann der Fehler einen anderen Code benennen, wie `ENOENT` oder `ENOEXEC`, oder `EUNKNOWN` oder `EPERM` auf Windows; ein `EUNKNOWN`, das über Wiederholungen hinweg anhält, hat eine [andere Ursache](#eunknown-when-starting-a-background-session).4812Wenn Sie eine Sitzung mit `/background` oder `claude --bg` starten, erscheint der gleiche Grund innerhalb von `Couldn't reach the background service (...)`. Während desselben Neuinstallationsfensters kann der Fehler stattdessen einen anderen Code benennen, wie `ENOENT` oder `ENOEXEC`, oder `EUNKNOWN` oder `EPERM` unter Windows; ein `EUNKNOWN`, das über Wiederholungsversuche hinweg anhält, hat eine [andere Ursache](#eunknown-when-starting-a-background-session).

4790 4813 

4791Bei einer npm-Installation wartet Claude Code auf die Neuinstallation und versucht es automatisch erneut: bis zu zehn Sekunden, und bis zu zwei Minuten, während eine npm-Installation von Claude Code auf der Maschine sichtbar noch läuft, was einen anderen Claude Code-Prozess abdeckt, der ein Update herunterlädt. Wenn die Installation länger als diese Wartezeit dauert, benennt der Fehler das Update stattdessen des bloßen Fehlercodes:4814Bei einer npm-Installation wartet Claude Code, bis die Neuinstallation abgeschlossen ist, und versucht es automatisch erneut: bis zu zehn Sekunden, und bis zu zwei Minuten, während eine npm-Installation von Claude Code auf der Maschine sichtbar noch läuft, was einen anderen Claude Code-Prozess abdeckt, der ein Update herunterlädt. Wenn die Installation länger als diese Wartezeit dauert, benennt der Fehler das Update anstelle des bloßen Fehlercodes:

4792 4815 

4793```text theme={null}4816```text theme={null}

4794Claude Code is being updated by npm on this machine (still not runnable after 2 min, EACCES) — try again when the update finishes4817Claude Code is being updated by npm on this machine (still not runnable after 2 min, EACCES) — try again when the update finishes

4795```4818```

4796 4819 

4797Vor v2.1.257 stoppte die Wartezeit bei zehn Sekunden in jedem Fall, daher erschien dieser Fehler, während ein anderer Claude Code-Prozess noch ein Update herunterlädt. Vor v2.1.246 schlug Claude Code sofort fehl, ohne zu warten.4820Vor v2.1.257 endete die Wartezeit in jedem Fall nach zehn Sekunden, daher erschien dieser Fehler, während ein anderer Claude Code-Prozess noch ein Update herunterlud. Vor v2.1.246 schlug Claude Code sofort fehl, ohne zu warten.

4798 4821 

4799**Was zu tun ist:**4822**Was zu tun ist:**

4800 4823 

4801* Warten Sie ein paar Sekunden, dann öffnen Sie die Sitzung oder entsenden Sie erneut. Wenn die Meldung sagt, Claude Code wird aktualisiert, versuchen Sie es erneut, nachdem das Update fertig ist.4824* Warten Sie ein paar Sekunden, dann öffnen Sie die Sitzung oder entsenden Sie erneut. Wenn die Meldung sagt, dass Claude Code aktualisiert wird, versuchen Sie es erneut, nachdem das Update fertig ist.

4802* Wenn der Fehler anhält, während keine npm-Installation läuft, kann Ihr Benutzer die installierte Binärdatei nicht ausführen. Überprüfen Sie ihre Berechtigungen und die ihres Verzeichnisses, oder installieren Sie Claude Code neu.4825* Wenn der Fehler anhält, während keine npm-Installation läuft, kann Ihr Benutzer die installierte Binärdatei nicht ausführen. Überprüfen Sie ihre Berechtigungen und die ihres Verzeichnisses, oder installieren Sie Claude Code neu.

4803 4826 

4804<h3 id="background-service-exited-before-it-became-reachable">4827<h3 id="background-service-exited-before-it-became-reachable">

4805 Hintergrund-Service beendet, bevor er erreichbar wurde4828 Hintergrund-Service beendet, bevor er erreichbar wurde

4806</h3>4829</h3>

4807 4830 

4808Der Prozess, den Claude Code als [Hintergrund-Service](/docs/de/agent-view#the-supervisor-process) startete, beendet sich, bevor er Verbindungen akzeptierte, daher konnte Claude Code Ihre Sitzung nicht öffnen. Wenn der Service einen Fehler druckte, bevor er beendet wurde, gibt der Grund in Klammern den Exit-Code oder das Signal und die erste Zeile an, die der Service druckte, die benennt, was ihn stoppte:4831Der Prozess, den Claude Code als [Hintergrund-Service](/docs/de/agent-view#the-supervisor-process) startete, hat sich beendet, bevor er Verbindungen akzeptierte, daher konnte Claude Code Ihre Sitzung nicht öffnen. Wenn der Service vor dem Beenden einen Fehler ausgegeben hat, gibt der Grund in Klammern den Exit-Code oder das Signal und die erste Zeile an, die der Service ausgegeben hat, die benennt, was ihn gestoppt hat:

4809 4832 

4810```text theme={null}4833```text theme={null}

4811Couldn't reach the background service (background service exited before it became reachable (exit code N): <the service's first error line>) — run 'claude daemon status'4834Couldn't reach the background service (background service exited before it became reachable (exit code N): <the service's first error line>) — run 'claude daemon status'

4812```4835```

4813 4836 

4814Wenn Sie eine Sitzung aus der [Agent-Ansicht](/docs/de/agent-view) öffnen, folgt der gleiche Grund `Couldn't start the background service —`. Wenn der Service nichts druckte, bevor er beendet wurde, sagt die Meldung `nothing on stderr` stattdessen.4837Wenn Sie eine Sitzung aus der [Agent-Ansicht](/docs/de/agent-view) öffnen, folgt der gleiche Grund auf `Couldn't start the background service —`. Wenn der Service vor dem Beenden nichts ausgegeben hat, sagt die Meldung stattdessen `nothing on stderr`.

4815 4838 

4816Claude Code meldet den Fehler mit der Fehlerzeile des Service. Vor v2.1.246 wurde der Fehler nur nach einer 45-Sekunden-Wartezeit angezeigt, als `background service did not become reachable within 45s`, ohne die Fehlerzeile des Service.4839Claude Code meldet den Fehler mit der Fehlerzeile des Service. Vor v2.1.246 wurde der Fehler erst nach einer Wartezeit von 45 Sekunden angezeigt, als `background service did not become reachable within 45s`, ohne die Fehlerzeile des Service.

4817 4840 

4818Zwei zitierte Gründe haben bekannte Ursachen:4841Zwei zitierte Gründe haben bekannte Ursachen:

4819 4842 

4820* `Error: claude native binary not installed.`: eine npm-Installation ersetzt die Claude Code-Binärdatei zu diesem Zeitpunkt, daher führte der Service stattdessen npm-Platzhalter aus. Versuchen Sie es erneut, nachdem die Installation fertig ist; wenn die Zeile mit keiner Installation läuft anhält, [schließen Sie die npm-Installation ab](/docs/de/troubleshoot-install#native-binary-not-found-after-npm-install). Vor v2.1.257 produzierte eine macOS npm-Selbstaktualisierung diesen Fehler bei jedem Start während des Installationsfensters.4843* `Error: claude native binary not installed.`: Eine npm-Installation ersetzte die Claude Code-Binärdatei zu diesem Zeitpunkt, daher führte der Service stattdessen den Platzhalter von npm aus. Versuchen Sie es erneut, nachdem die Installation fertig ist; wenn die Zeile anhält, ohne dass eine Installation läuft, [schließen Sie die npm-Installation ab](/docs/de/troubleshoot-install#native-binary-not-found-after-npm-install). Vor v2.1.257 verursachte eine npm-Selbstaktualisierung unter macOS diesen Fehler bei jedem Start während des Installationsfensters.

4821* `nothing on stderr` mit Exit-Code 1, bei jedem Start, auf Windows: `daemon.lock` benennt einen Prozess, den Claude Code weder signalisieren noch beweisen kann, dass er weg ist, daher schließt jeder neue Service, dass ein anderer die Sperre hält und beendet sich. Eine Sperre, deren Schreiber Claude Code beweisen kann, dass er weg ist, wird von selbst ersetzt und produziert diesen Fehler nicht. Wenn der Fehler bei jedem Start wiederholt wird, löschen Sie `~/.claude/daemon.lock`, dann öffnen Sie die Sitzung oder entsenden Sie erneut. Vor v2.1.257 blockierte eine solche Sperre jeden Start, bis Sie die Datei löschten.4844* `nothing on stderr` mit Exit-Code 1, bei jedem Start, unter Windows: `daemon.lock` benennt einen Prozess, den Claude Code weder signalisieren noch als beendet nachweisen kann, daher schließt jeder neue Service, dass ein anderer die Sperre hält, und beendet sich. Eine Sperre, deren Schreiber Claude Code als beendet nachweisen kann, wird von selbst ersetzt und verursacht diesen Fehler nicht. Wenn der Fehler bei jedem Start wiederholt auftritt, löschen Sie `~/.claude/daemon.lock`, dann öffnen Sie die Sitzung oder entsenden Sie erneut. Vor v2.1.257 blockierte eine solche Sperre jeden Start, bis Sie die Datei löschten.

4822 4845 

4823**Was zu tun ist:**4846**Was zu tun ist:**

4824 4847 

4825* Wenn die Meldung eine Zeile zitiert, beheben Sie, was sie benennt, dann öffnen Sie die Sitzung oder entsenden Sie erneut. Der nächste Versuch startet den Service erneut4848* Wenn die Meldung eine Zeile zitiert, beheben Sie, was sie benennt, dann öffnen Sie die Sitzung oder entsenden Sie erneut. Der nächste Versuch startet den Service erneut

4826* Führen Sie `claude daemon status` aus, um zu überprüfen, ob ein Service jetzt läuft4849* Führen Sie `claude daemon status` aus, um zu überprüfen, ob jetzt ein Service läuft

4827 4850 

4828<h3 id="working-directory-no-longer-exists-when-starting-a-background-session">4851<h3 id="working-directory-no-longer-exists-when-starting-a-background-session">

4829 Arbeitsverzeichnis existiert nicht mehr beim Starten einer Hintergrund-Sitzung4852 Arbeitsverzeichnis existiert nicht mehr beim Starten einer Hintergrund-Sitzung


4835Couldn't start a background session (working directory no longer exists or is not accessible: /tmp/demo)4858Couldn't start a background session (working directory no longer exists or is not accessible: /tmp/demo)

4836```4859```

4837 4860 

4838Vor v2.1.257 schien die Sitzung zu starten und zeigte sich dann in der Agent-Ansicht als fehlgeschlagene Zeile mit dem gleichen Grund.4861Vor v2.1.257 schien die Sitzung zu starten und erschien dann in der Agent-Ansicht als fehlgeschlagene Zeile mit dem gleichen Grund.

4839 4862 

4840Vor v2.1.281 erschien diese Meldung auch, wenn das Verzeichnis bereits weg war, bevor Sie die Sitzung gestartet haben. Dieser Fall meldet [`could not be resolved on disk`](#workspace-not-trusted-when-dispatching-a-background-session).4863Vor v2.1.281 erschien diese Meldung auch, wenn das Verzeichnis bereits weg war, bevor Sie die Sitzung gestartet haben. Dieser Fall meldet [`could not be resolved on disk`](#workspace-not-trusted-when-dispatching-a-background-session).

4841 4864 


4844* Erstellen Sie das Verzeichnis neu, das die Meldung nennt, oder entsenden Sie aus einem Verzeichnis, das existiert, dann versuchen Sie es erneut4867* Erstellen Sie das Verzeichnis neu, das die Meldung nennt, oder entsenden Sie aus einem Verzeichnis, das existiert, dann versuchen Sie es erneut

4845 4868 

4846<h3 id="workspace-not-trusted-when-dispatching-a-background-session">4869<h3 id="workspace-not-trusted-when-dispatching-a-background-session">

4847 Arbeitsbereich nicht vertraut beim Entsenden einer Hintergrund-Sitzung4870 Workspace nicht vertraut beim Entsenden einer Hintergrund-Sitzung

4848</h3>4871</h3>

4849 4872 

4850Sie haben eine [Hintergrund-Sitzung](/docs/de/agent-view) in einem Verzeichnis gestartet oder neu gestartet, das Sie nicht [vertraut haben](/docs/de/permissions#project-allow-rules-and-workspace-trust), und der Arbeitsbereich-Vertrauensdialog konnte nicht erscheinen, um Sie zu fragen. Claude Code startet die Sitzung nicht:4873Sie haben eine [Hintergrund-Sitzung](/docs/de/agent-view) in einem Verzeichnis gestartet oder neu gestartet, dem Sie nicht [vertraut haben](/docs/de/permissions#project-allow-rules-and-workspace-trust), und der Workspace-Vertrauensdialog konnte nicht erscheinen, um Sie zu fragen. Claude Code startet die Sitzung nicht:

4851 4874 

4852```text theme={null}4875```text theme={null}

4853Workspace not trusted. Run `claude` in /path/to/project once and accept the trust prompt, then retry.4876Workspace not trusted. Run `claude` in /path/to/project once and accept the trust prompt, then retry.

4854```4877```

4855 4878 

4856Aus einem Terminal im eigenen Verzeichnis der Sitzung zeigt der gleiche Befehl stattdessen den Vertrauensdialog und startet die Sitzung, sobald Sie akzeptieren. Diese Meldung erscheint, wo kein Dialog kann, wie in einem Skript, oder wenn Sie eine Sitzung von einem anderen Verzeichnis als ihrem eigenen neu starten.4879Aus einem Terminal im eigenen Verzeichnis der Sitzung zeigt derselbe Befehl stattdessen den Vertrauensdialog und startet die Sitzung, sobald Sie akzeptieren. Diese Meldung erscheint dort, wo kein Dialog erscheinen kann, etwa in einem Skript, oder wenn Sie eine Sitzung aus einem anderen Verzeichnis als ihrem eigenen neu starten.

4857 4880 

4858Zwei Varianten nennen eine andere Ursache:4881Zwei Varianten nennen eine andere Ursache:

4859 4882 

4860* **`The home directory is trusted one session at a time`**: Das Verzeichnis der Sitzung ist Ihr Home-Verzeichnis. Claude Code speichert niemals Vertrauen für das Home-Verzeichnis, daher zählt das Akzeptieren des Dialogs dort in einer früheren Sitzung nicht.4883* **`The home directory is trusted one session at a time`**: Das Verzeichnis der Sitzung ist Ihr Home-Verzeichnis. Claude Code speichert niemals Vertrauen für das Home-Verzeichnis, daher zählt das Akzeptieren des Dialogs dort in einer früheren Sitzung nicht.

4861* **`<path> could not be resolved on disk`**: Claude Code konnte das Verzeichnis der Sitzung auf der Festplatte nicht finden.4884* **`<path> could not be resolved on disk`**: Claude Code konnte das Verzeichnis der Sitzung auf der Festplatte nicht finden.

4862 4885 

4886Vor v2.1.286 konnte diese Meldung unter Windows auch in einem Verzeichnis erscheinen, dem Sie bereits vertraut hatten, wenn dessen Vertrauenseintrag mit dem Pfad in anderer Groß-/Kleinschreibung gespeichert war. Aktualisieren Sie auf v2.1.286 oder später.

4887 

4863**Was zu tun ist:**4888**Was zu tun ist:**

4864 4889 

4865* Führen Sie `claude` im Verzeichnis aus, das die Meldung nennt, und akzeptieren Sie den Vertrauensdialog, dann führen Sie den Befehl erneut aus4890* Führen Sie `claude` im Verzeichnis aus, das die Meldung nennt, und akzeptieren Sie den Vertrauensdialog, dann führen Sie den Befehl erneut aus

4866* Für die Home-Verzeichnis-Meldung führen Sie den Befehl aus einem Terminal in Ihrem Home-Verzeichnis aus, damit der Dialog erscheinen kann, oder starten Sie die Sitzung stattdessen von einem Projekt-Verzeichnis4891* Für die Home-Verzeichnis-Meldung führen Sie den Befehl aus einem Terminal in Ihrem Home-Verzeichnis aus, damit der Dialog erscheinen kann, oder starten Sie die Sitzung stattdessen aus einem Projektverzeichnis

4867* Für die `could not be resolved on disk`-Meldung erstellen Sie das Verzeichnis neu, oder starten Sie eine neue Sitzung von einem Verzeichnis, das existiert4892* Für die `could not be resolved on disk`-Meldung erstellen Sie das Verzeichnis neu, oder starten Sie eine neue Sitzung aus einem Verzeichnis, das existiert

4868 4893 

4869<h2 id="wrapper-and-ide-errors">4894<h2 id="wrapper-and-ide-errors">

4870 Fehler bei Wrapper und IDE4895 Fehler bei Wrapper und IDE

fullscreen.md +3 −1

Details

104* **Klicken Sie auf eine Option in einem Mehrfachauswahlmenü**, um sie umzuschalten, und klicken Sie auf die Schaltfläche „Senden", um Ihre Auswahl zu bestätigen. Wenn Sie auf eine Freitextzeile klicken, z. B. die Zeile `Other` in einer Multiple-Choice-Frage, wird das Eingabefeld fokussiert, damit Sie eine Antwort eingeben können. Erfordert Claude Code v2.1.208 oder später.104* **Klicken Sie auf eine Option in einem Mehrfachauswahlmenü**, um sie umzuschalten, und klicken Sie auf die Schaltfläche „Senden", um Ihre Auswahl zu bestätigen. Wenn Sie auf eine Freitextzeile klicken, z. B. die Zeile `Other` in einer Multiple-Choice-Frage, wird das Eingabefeld fokussiert, damit Sie eine Antwort eingeben können. Erfordert Claude Code v2.1.208 oder später.

105* **Klicken Sie auf den Wert einer Einstellung im `/config`-Bereich**, um ihn zu ändern, und scrollen Sie die Einstellungsliste mit dem Mausrad. Erfordert Claude Code v2.1.271 oder später.105* **Klicken Sie auf den Wert einer Einstellung im `/config`-Bereich**, um ihn zu ändern, und scrollen Sie die Einstellungsliste mit dem Mausrad. Erfordert Claude Code v2.1.271 oder später.

106* **Scrollen Sie ein Auswahlmenü oder Mehrfachauswahlmenü mit dem Mausrad**, wenn es mehr Optionen hat, als es auf einmal anzeigt, z. B. die `/model`-Liste in einem kurzen Terminalfenster. Das Rad scrollt die Liste, während sich der Zeiger über den Optionen befindet. Erfordert Claude Code v2.1.280 oder später.106* **Scrollen Sie ein Auswahlmenü oder Mehrfachauswahlmenü mit dem Mausrad**, wenn es mehr Optionen hat, als es auf einmal anzeigt, z. B. die `/model`-Liste in einem kurzen Terminalfenster. Das Rad scrollt die Liste, während sich der Zeiger über den Optionen befindet. Erfordert Claude Code v2.1.280 oder später.

107* **Scrollen Sie eine überflutete Liste mit ihrer Scrollleiste.** In Listenpanels wie `/skills`, `/mcp` und der Installed-Liste von `/plugin` wird eine Scrollleiste neben einer Liste mit mehr Zeilen als Platz angezeigt, während sich der Zeiger darüber befindet. Klicken Sie auf die Spur, um zu diesem Punkt zu springen, oder ziehen Sie den Schieber. Erfordert Claude Code v2.1.281 oder später.107* **Scrollen Sie eine überlaufende Liste mit ihrer Scrollleiste.** In Listenpanels wie `/skills`, `/mcp` und der Installed-Liste von `/plugin` wird eine Scrollleiste neben einer Liste mit mehr Zeilen als Platz angezeigt, während sich der Zeiger darüber befindet. Klicken Sie auf die Spur, um zu diesem Punkt zu springen, oder ziehen Sie den Schieber. Erfordert Claude Code v2.1.281 oder später.

108 * Wo die Leiste an ihren Enden die Pfeile `↑` und `↓` hat, klicken Sie auf einen Pfeil, um eine einzelne Zeile zu scrollen, oder halten Sie ihn gedrückt, um weiter zu scrollen. Die Pfeile erfordern Claude Code v2.1.286 oder später.

109* **Klicken Sie auf die Zeile `↑ N more` oder `↓ N more` am Rand einer Liste**, um zu diesem Ende der Liste zu springen, ohne eine Option auszuwählen. Erfordert Claude Code v2.1.286 oder später.

108* **Klicken Sie auf ein reduziertes Werkzeugergebnis**, um es zu erweitern und die vollständige Ausgabe anzuzeigen. Klicken Sie erneut, um es zu reduzieren. Der Werkzeugaufruf und sein Ergebnis werden zusammen erweitert. Nur Nachrichten, die mehr zu zeigen haben, sind anklickbar.110* **Klicken Sie auf ein reduziertes Werkzeugergebnis**, um es zu erweitern und die vollständige Ausgabe anzuzeigen. Klicken Sie erneut, um es zu reduzieren. Der Werkzeugaufruf und sein Ergebnis werden zusammen erweitert. Nur Nachrichten, die mehr zu zeigen haben, sind anklickbar.

109 * Das Klicken erweitert auch die Ausgabe eines `!`-Shell-Befehls, ob ein älteres abgeschnittenes Ergebnis oder die Live-Fortschrittszeile während der Befehlsausführung. Erfordert Claude Code v2.1.257 oder später.111 * Das Klicken erweitert auch die Ausgabe eines `!`-Shell-Befehls, ob ein älteres abgeschnittenes Ergebnis oder die Live-Fortschrittszeile während der Befehlsausführung. Erfordert Claude Code v2.1.257 oder später.

110 * Das Klicken erweitert auch eine gedimmte `Message from @<sender>`-Zeile, wenn der Absender ein [Teamkollege](/docs/de/agent-teams) oder ein anderer Agent ist, der in Ihrer Sitzung läuft. Die Zeile für eine Nachricht von [einer Ihrer anderen Sitzungen](/docs/de/cross-session-messaging#what-a-message-looks-like) zeigt auch die erste Zeile der Nachricht an und ist nicht anklickbar. Drücken Sie daher `Ctrl+o`, um diese zu lesen.112 * Das Klicken erweitert auch eine gedimmte `Message from @<sender>`-Zeile, wenn der Absender ein [Teamkollege](/docs/de/agent-teams) oder ein anderer Agent ist, der in Ihrer Sitzung läuft. Die Zeile für eine Nachricht von [einer Ihrer anderen Sitzungen](/docs/de/cross-session-messaging#what-a-message-looks-like) zeigt auch die erste Zeile der Nachricht an und ist nicht anklickbar. Drücken Sie daher `Ctrl+o`, um diese zu lesen.

headless.md +8 −0

Details

62| Benutzerdefinierte Agenten | `--agents <json>` |62| Benutzerdefinierte Agenten | `--agents <json>` |

63| Ein Plugin | `--plugin-dir <path>`, `--plugin-url <url>` |63| Ein Plugin | `--plugin-dir <path>`, `--plugin-url <url>` |

64 64 

65Der Bare-Modus schränkt außerdem ein, was während der Sitzung geschieht:

66 

67* **MCP-Server**: Es werden nur Server verbunden, die über die Befehlszeile übergeben werden, z. B. mit `--mcp-config`. In einer interaktiven Sitzung überspringt Claude Code außerdem die automatische IDE-Verbindung, sofern Sie nicht `--ide` übergeben.

68* **System-Erinnerungen**: Claude erhält Ihre Prompts und die Tool-Ergebnisse ohne die [System-Erinnerungen](/docs/de/glossary#system-reminder), die Claude Code ihnen sonst beifügen würde. Beispielsweise wird Claude nicht darüber informiert, wenn sich eine zuvor gelesene Datei auf der Festplatte ändert, und erhält nicht die Liste der verfügbaren Skills, einschließlich Skills aus einem `--add-dir`-Ordner.

69* **Hintergrundaufgaben**: Es werden keine ausgeführt. Ein Befehl, der sein [Timeout](/docs/de/tools-reference#timeout-and-output-limits) erreicht, wird gestoppt, statt [in den Hintergrund verschoben zu werden](/docs/de/tools-reference#background-commands).

70 

71Vor v2.1.286 galten diese Einschränkungen nur teilweise: Eine interaktive `--bare`-Sitzung verband die MCP-Server, die auch eine normale Sitzung verbinden würde, jede `--bare`-Sitzung sendete System-Erinnerungen, und Hintergrundaufgaben blieben verfügbar.

72 

65<Note>73<Note>

66 `--bare` ist der empfohlene Modus für skriptgesteuerte und SDK-Aufrufe und wird in einer zukünftigen Version zum Standard für `-p`.74 `--bare` ist der empfohlene Modus für skriptgesteuerte und SDK-Aufrufe und wird in einer zukünftigen Version zum Standard für `-p`.

67</Note>75</Note>

hooks.md +4 −10

Details

731 Das `/hooks`-Menü731 Das `/hooks`-Menü

732</h3>732</h3>

733 733 

734Geben Sie `/hooks` in Claude Code ein, um einen schreibgeschützten Browser für Ihre konfigurierten Hooks zu öffnen. Das Menü zeigt jedes Hook-Ereignis mit einer Anzahl konfigurierter Hooks, lässt Sie in Matcher bohren und zeigt die vollständigen Details jedes Hook-Handlers. Verwenden Sie es, um die Konfiguration zu überprüfen, zu überprüfen, aus welcher Einstellungsdatei ein Hook stammt, oder um einen Hook-Befehl, Prompt oder URL zu überprüfen.734Geben Sie `/hooks` in Claude Code ein, um eine nur lesende Ansicht Ihrer konfigurierten Hooks zu öffnen. Die Liste kennzeichnet jeden Hook mit seiner Herkunft, z. B. Benutzereinstellungen, Projekteinstellungen, lokale Einstellungen, ein Plugin oder die aktuelle Sitzung.

735 735 

736Das Menü zeigt alle fünf Hook-Typen: `command`, `prompt`, `agent`, `http` und `mcp_tool`. Jeder Hook ist mit einem `[type]`-Präfix und einer Quelle gekennzeichnet, die angibt, wo er definiert wurde:736Wählen Sie einen Hook aus, um den vollständigen Text dessen zu sehen, was er ausführt, und wo er definiert ist, z. B. den Pfad seiner Einstellungsdatei oder den Namen seines Plugins.

737 737 

738* `User Settings`: aus `~/.claude/settings.json`738Um alle Hook-Ereignisse zu durchsuchen, einschließlich solcher ohne konfigurierte Hooks, wählen Sie `All events` am Ende der Liste aus.

739* `Project Settings`: aus `.claude/settings.json`

740* `Local Settings`: aus `.claude/settings.local.json`

741* `Plugin Hooks`: aus der `hooks/hooks.json` eines Plugins

742* `Session Hooks`: in der aktuellen Sitzung im Speicher registriert

743 

744Das Auswählen eines Hooks öffnet eine Detailansicht, die sein Ereignis, Matcher, Typ, Quellendatei und den vollständigen Befehl, Prompt oder URL anzeigt. Das Menü ist schreibgeschützt: Um Hooks hinzuzufügen, zu ändern oder zu entfernen, bearbeiten Sie die Einstellungs-JSON direkt oder bitten Sie Claude, die Änderung vorzunehmen.

745 739 

746<h3 id="disable-or-remove-hooks">740<h3 id="disable-or-remove-hooks">

747 Hooks deaktivieren oder entfernen741 Hooks deaktivieren oder entfernen

748</h3>742</h3>

749 743 

750Um einen Hook zu entfernen, löschen Sie seinen Eintrag aus der Einstellungs-JSON-Datei.744Um einen in einer Einstellungsdatei definierten Hook zu entfernen, löschen Sie seinen Eintrag aus dieser Datei.

751 745 

752Um alle Hooks vorübergehend zu deaktivieren, ohne sie zu entfernen, setzen Sie `"disableAllHooks": true` in Ihrer Einstellungsdatei. Claude Code liest den Wert, der nach [Einstellungspriorität](/docs/de/settings#settings-precedence) bleibt, sodass ein `"disableAllHooks": false` in der `.claude/settings.json` eines Projekts ein `true` in Ihren Benutzereinstellungen überschreibt. Um Hooks für einen Run auszuschalten, unabhängig davon, was die Einstellungen des Projekts sagen, übergeben Sie `--settings '{"disableAllHooks": true}'`, was Vorrang vor Projekt- und lokalen Einstellungen hat. Es gibt keine Möglichkeit, einen einzelnen Hook zu deaktivieren, während er in der Konfiguration bleibt.746Um alle Hooks vorübergehend zu deaktivieren, ohne sie zu entfernen, setzen Sie `"disableAllHooks": true` in Ihrer Einstellungsdatei. Claude Code liest den Wert, der nach [Einstellungspriorität](/docs/de/settings#settings-precedence) bleibt, sodass ein `"disableAllHooks": false` in der `.claude/settings.json` eines Projekts ein `true` in Ihren Benutzereinstellungen überschreibt. Um Hooks für einen Run auszuschalten, unabhängig davon, was die Einstellungen des Projekts sagen, übergeben Sie `--settings '{"disableAllHooks": true}'`, was Vorrang vor Projekt- und lokalen Einstellungen hat. Es gibt keine Möglichkeit, einen einzelnen Hook zu deaktivieren, während er in der Konfiguration bleibt.

753 747 

hooks-guide.md +12 −9

Details

69 </Step>69 </Step>

70 70 

71 <Step title="Überprüfen Sie die Konfiguration">71 <Step title="Überprüfen Sie die Konfiguration">

72 Geben Sie `/hooks` ein, um den Hooks-Browser zu öffnen. Sie sehen eine Liste aller verfügbaren Hook-Events mit einer Anzahl neben jedem Event, das Hooks konfiguriert hat. Wählen Sie `Notification` aus, um zu bestätigen, dass Ihr neuer Hook in der Liste angezeigt wird. Wenn Sie den Hook auswählen, werden seine Details angezeigt: das Event, der Matcher, der Typ, die Quelldatei und der Befehl.72 Geben Sie `/hooks` in der Eingabeaufforderung von Claude Code ein, um den Hooks-Browser zu öffnen. Ihr neuer Hook erscheint in der Liste unter `Notification`.

73 </Step>73 </Step>

74 74 

75 <Step title="Testen Sie den Hook">75 <Step title="Testen Sie den Hook">


77 </Step>77 </Step>

78</Steps>78</Steps>

79 79 

80<Tip>

81 Das Menü `/hooks` ist schreibgeschützt. Um Hooks hinzuzufügen, zu ändern oder zu entfernen, bearbeiten Sie Ihre Einstellungs-JSON direkt oder bitten Sie Claude, die Änderung vorzunehmen.

82</Tip>

83 

84<h2 id="what-you-can-automate">80<h2 id="what-you-can-automate">

85 Was Sie automatisieren können81 Was Sie automatisieren können

86</h2>82</h2>


97 93 

98Erhalten Sie eine Desktop-Benachrichtigung, wenn Claude die Arbeit beendet und Ihre Eingabe benötigt, damit Sie zu anderen Aufgaben wechseln können, ohne das Terminal zu überprüfen.94Erhalten Sie eine Desktop-Benachrichtigung, wenn Claude die Arbeit beendet und Ihre Eingabe benötigt, damit Sie zu anderen Aufgaben wechseln können, ohne das Terminal zu überprüfen.

99 95 

100Dieser Hook verwendet das `Notification`-Event, das ausgelöst wird, wenn Claude auf Eingaben oder Berechtigungen wartet. Siehe [wann jeder Benachrichtigungstyp ausgelöst wird](/docs/de/hooks#notification) für den genauen Zeitpunkt. Jede Registerkarte unten verwendet den nativen Benachrichtigungsbefehl der Plattform. Fügen Sie dies zu `~/.claude/settings.json` hinzu:96Dieser Hook verwendet das `Notification`-Event, das Claude Code auslöst, wenn Claude auf Eingaben oder Berechtigungen wartet. Siehe [wann jeder Benachrichtigungstyp ausgelöst wird](/docs/de/hooks#notification) für den genauen Zeitpunkt.

97 

98Jede Registerkarte unten verwendet den nativen Benachrichtigungsbefehl der Plattform. Fügen Sie dies zu `~/.claude/settings.json` hinzu:

101 99 

102<Tabs>100<Tabs>

103 <Tab title="macOS">101 <Tab title="macOS">


120 ```118 ```

121 119 

122 <Accordion title="Wenn keine Benachrichtigung angezeigt wird">120 <Accordion title="Wenn keine Benachrichtigung angezeigt wird">

123 `osascript` leitet Benachrichtigungen über die integrierte Script Editor-App weiter. Wenn Script Editor keine Benachrichtigungsberechtigung hat, schlägt der Befehl stillschweigend fehl, und macOS fordert Sie nicht auf, sie zu gewähren. Führen Sie dies einmal im Terminal aus, um Script Editor in Ihren Benachrichtigungseinstellungen angezeigt zu bekommen:121 `osascript` leitet Benachrichtigungen über die integrierte Script Editor-App weiter. Wenn Script Editor keine Benachrichtigungsberechtigung hat, schlägt der Befehl stillschweigend fehl, und macOS fordert Sie nicht auf, sie zu gewähren.

122 

123 Führen Sie dies einmal im Terminal aus, um Script Editor in Ihren Benachrichtigungseinstellungen angezeigt zu bekommen:

124 124 

125 ```bash theme={null}125 ```bash theme={null}

126 osascript -e 'display notification "test"'126 osascript -e 'display notification "test"'


180 ```180 ```

181 181 

182 <Accordion title="Wenn kein Dialog angezeigt wird">182 <Accordion title="Wenn kein Dialog angezeigt wird">

183 Dieser Befehl öffnet ein Dialogfeld statt einer Benachrichtigung in der Ecke Ihres Bildschirms, sodass das Dialogfeld hinter Ihrem Terminal-Fenster öffnen kann. Testen Sie den Befehl zunächst direkt in PowerShell. Wenn Sie Claude Code in WSL ausführen, muss `powershell.exe` über Windows-Interop auf Ihrem `PATH` verfügbar sein.183 Dieser Befehl öffnet ein Dialogfeld statt einer Benachrichtigung in der Ecke Ihres Bildschirms, sodass das Dialogfeld hinter Ihrem Terminal-Fenster öffnen kann. Testen Sie den Befehl zunächst direkt in PowerShell.

184 

185 Wenn Sie Claude Code in WSL ausführen, muss `powershell.exe` über Windows-Interop auf Ihrem `PATH` verfügbar sein.

184 </Accordion>186 </Accordion>

185 </Tab>187 </Tab>

186</Tabs>188</Tabs>


212 214 

213`agent_needs_input` für eine Teamkollegen-Terminal-Setup-Frage erfordert Claude Code v2.1.248 oder später.215`agent_needs_input` für eine Teamkollegen-Terminal-Setup-Frage erfordert Claude Code v2.1.248 oder später.

214 216 

215Geben Sie `/hooks` ein und wählen Sie `Notification` aus, um zu bestätigen, dass der Hook registriert ist. Für das vollständige Event-Schema siehe die [Notification-Referenz](/docs/de/hooks#notification).217Geben Sie `/hooks` im Eingabefeld von Claude Code ein und bestätigen Sie, dass der Hook unter `Notification` angezeigt wird.

216 218 

217<h3 id="auto-format-code-after-edits">219<h3 id="auto-format-code-after-edits">

218 Code nach Bearbeitungen automatisch formatieren220 Code nach Bearbeitungen automatisch formatieren


1055* Dateibearbeitungen werden normalerweise automatisch aufgegriffen. Wenn sie nach einigen Sekunden nicht angezeigt werden, hat der Datei-Watcher die Änderung möglicherweise übersehen: Starten Sie Ihre Sitzung neu, um ein Neuladen zu erzwingen.1057* Dateibearbeitungen werden normalerweise automatisch aufgegriffen. Wenn sie nach einigen Sekunden nicht angezeigt werden, hat der Datei-Watcher die Änderung möglicherweise übersehen: Starten Sie Ihre Sitzung neu, um ein Neuladen zu erzwingen.

1056* Überprüfen Sie, dass Ihr JSON gültig ist: Nachfolgende Kommas und Kommentare sind nicht zulässig1058* Überprüfen Sie, dass Ihr JSON gültig ist: Nachfolgende Kommas und Kommentare sind nicht zulässig

1057* Bestätigen Sie, dass sich die Einstellungsdatei am richtigen Ort befindet: `.claude/settings.json` für Projekt-Hooks, `~/.claude/settings.json` für globale Hooks1059* Bestätigen Sie, dass sich die Einstellungsdatei am richtigen Ort befindet: `.claude/settings.json` für Projekt-Hooks, `~/.claude/settings.json` für globale Hooks

1060* Wenn das Menü `Only hooks from managed settings run here` anzeigt, hat Ihre Organisation [`allowManagedHooksOnly`](/docs/de/settings-reference#allowmanagedhooksonly) gesetzt. Hooks in Ihren Benutzer-, Projekt- und lokalen Einstellungsdateien werden nicht ausgeführt und nicht aufgelistet

1058 1061 

1059<h3 id="stop-hook-hits-the-block-cap">1062<h3 id="stop-hook-hits-the-block-cap">

1060 Stop Hook trifft die Block-Obergrenze1063 Stop Hook trifft die Block-Obergrenze

Details

394* Beenden Sie mit `Escape`, `Backspace` oder `Ctrl+U` bei einer leeren Eingabeaufforderung394* Beenden Sie mit `Escape`, `Backspace` oder `Ctrl+U` bei einer leeren Eingabeaufforderung

395* Das Einfügen von Text, der mit `!` beginnt, in eine leere Eingabeaufforderung aktiviert automatisch den Shell-Modus und entspricht dem eingegebenen `!`-Verhalten395* Das Einfügen von Text, der mit `!` beginnt, in eine leere Eingabeaufforderung aktiviert automatisch den Shell-Modus und entspricht dem eingegebenen `!`-Verhalten

396 396 

397Sofern Ihre Sitzung nicht eine der unter [striktem Sandbox-Modus](/docs/de/sandboxing#the-unsandboxed-retry-escape-hatch) aufgelisteten ist, werden Befehle, die Sie im Shell-Modus eingeben, außerhalb der [Sandbox](/docs/de/sandboxing) ausgeführt, auch wenn Sie Sandboxing aktiviert haben, da die Sandbox für die Befehle gilt, die Claude ausführt.397Sofern Ihre Sitzung nicht eine der unter [striktem Sandbox-Modus](/docs/de/sandboxing#turn-off-the-retry-with-strict-sandbox-mode) aufgelisteten ist, werden Befehle, die Sie im Shell-Modus eingeben, außerhalb der [Sandbox](/docs/de/sandboxing) ausgeführt, auch wenn Sie Sandboxing aktiviert haben, da die Sandbox für die Befehle gilt, die Claude ausführt.

398 398 

399Claude antwortet automatisch auf die Befehlsausgabe, sobald sie im Transkript ankommt, sodass Sie `! npm test` ausführen und eine Erklärung der Fehler ohne eine zweite Eingabeaufforderung erhalten können. Die Antwort kostet das Gleiche wie das Senden einer normalen Eingabeaufforderung. Um das frühere Verhalten wiederherzustellen, bei dem die Ausgabe zum Kontext hinzugefügt wird, ohne eine Antwort zu geben, setzen Sie [`respondToBashCommands`](/docs/de/settings-reference#respondtobashcommands) auf `false` in `settings.json`. Vor v2.1.186 hat der Shell-Modus die Ausgabe immer zum Kontext hinzugefügt, ohne eine Antwort zu geben.399Claude antwortet automatisch auf die Befehlsausgabe, sobald sie im Transkript ankommt, sodass Sie `! npm test` ausführen und eine Erklärung der Fehler ohne eine zweite Eingabeaufforderung erhalten können. Die Antwort kostet das Gleiche wie das Senden einer normalen Eingabeaufforderung. Um das frühere Verhalten wiederherzustellen, bei dem die Ausgabe zum Kontext hinzugefügt wird, ohne eine Antwort zu geben, setzen Sie [`respondToBashCommands`](/docs/de/settings-reference#respondtobashcommands) auf `false` in `settings.json`. Vor v2.1.186 hat der Shell-Modus die Ausgabe immer zum Kontext hinzugefügt, ohne eine Antwort zu geben.

400 400 

Details

73 73 

74Streamen Sie Inferenzantworten. Claude Code liest den Stream, während er ankommt, also wenn Ihr Gateway vollständige Antworten puffert, bevor es sie weiterleitet, stellt Claude Code fest.74Streamen Sie Inferenzantworten. Claude Code liest den Stream, während er ankommt, also wenn Ihr Gateway vollständige Antworten puffert, bevor es sie weiterleitet, stellt Claude Code fest.

75 75 

76Liefern Sie die vollständige Ereignissequenz jeder Antwort, ohne Ereignisse zu verwerfen, zu duplizieren oder neu zu ordnen. Wenn ein Ereignis auf einen Inhaltsblock verweist, dessen `content_block_start` nie angekommen ist, oder auf einen Block, dessen `content_block_stop` bereits angekommen ist, stoppt Claude Code das Lesen des Streams bei diesem Ereignis, anstatt es anzuwenden, sodass ein dupliziertes `content_block_stop` denselben Tool-Aufruf nicht zweimal ausführen kann. [Die obige Antwort kann unvollständig sein](/docs/de/errors#the-response-above-may-be-incomplete) beschreibt, was der Benutzer sieht, unter den Varianten `Part of the response never arrived` und `The response stream was malformed`.76Liefern Sie die vollständige Ereignissequenz jeder Antwort, ohne Ereignisse zu verwerfen, zu duplizieren oder neu zu ordnen. Wenn eine Amazon Bedrock-Guardrail eine Antwort blockiert, leiten Sie die Ereignisse, die sie sendet, unverändert weiter, auch wenn sie auf einen Inhaltsblock verweisen, dessen `content_block_stop` bereits angekommen ist. [AWS Guardrails](/docs/de/amazon-bedrock#aws-guardrails) beschreibt, wie diese Antwort endet. Wenn ein anderes Ereignis auf einen Inhaltsblock verweist, dessen `content_block_start` nie angekommen ist, oder auf einen Block, dessen `content_block_stop` bereits angekommen ist, stoppt Claude Code das Lesen des Streams bei diesem Ereignis, anstatt es anzuwenden, sodass ein dupliziertes `content_block_stop` denselben Tool-Aufruf nicht zweimal ausführen kann. [Die obige Antwort kann unvollständig sein](/docs/de/errors#the-response-above-may-be-incomplete) beschreibt, was der Benutzer sieht, unter den Varianten `Part of the response never arrived` und `The response stream was malformed`.

77 77 

78Leiten Sie jede Antwort durch ihre endgültigen `message_delta` und `message_stop` Ereignisse weiter, bevor Sie den Body beenden. Ein Body, der nach einem `message_delta` mit einem `stop_reason` endet, ohne dass noch ein Inhaltsblock offen ist und kein Inhaltsblock-Ereignis nach diesem Frame folgt, zählt als vollständig, auch wenn `message_stop` fehlt. Ein Body, den Ihr Gateway sauberer beendet, sobald ein Inhaltsblock gestartet hat, wird genauso behandelt wie eine unterbrochene Verbindung: [Automatische Wiederholungen](/docs/de/errors#automatic-retries) sagt, wann Claude Code die Anfrage erneut stellt, und [Die obige Antwort kann unvollständig sein](/docs/de/errors#the-response-above-may-be-incomplete) behandelt, was es behält, sobald sichtbarer Inhalt angekommen ist. Claude Code behält den `stop_reason`, den ein `message_delta` liefert, bei, sodass ein späteres nur-Nutzungs-`message_delta`, dessen `delta` `stop_reason: null` oder keinen `stop_reason` Schlüssel hat, ihn nicht löscht.78Leiten Sie jede Antwort durch ihre endgültigen `message_delta` und `message_stop` Ereignisse weiter, bevor Sie den Body beenden. Ein Body, der nach einem `message_delta` mit einem `stop_reason` endet, ohne dass noch ein Inhaltsblock offen ist und kein Inhaltsblock-Ereignis nach diesem Frame folgt, zählt als vollständig, auch wenn `message_stop` fehlt. Ein Body, den Ihr Gateway sauberer beendet, sobald ein Inhaltsblock gestartet hat, wird genauso behandelt wie eine unterbrochene Verbindung: [Automatische Wiederholungen](/docs/de/errors#automatic-retries) sagt, wann Claude Code die Anfrage erneut stellt, und [Die obige Antwort kann unvollständig sein](/docs/de/errors#the-response-above-may-be-incomplete) behandelt, was es behält, sobald sichtbarer Inhalt angekommen ist. Claude Code behält den `stop_reason`, den ein `message_delta` liefert, bei, sodass ein späteres nur-Nutzungs-`message_delta`, dessen `delta` `stop_reason: null` oder keinen `stop_reason` Schlüssel hat, ihn nicht löscht.

79 79 

Details

470| [`wslInheritsWindowsSettings`](/docs/de/settings-reference#wslinheritswindowssettings) | Wenn in der HKLM-Registrierung oder einer Datei unter `C:\Program Files\ClaudeCode` gesetzt, lesen Sie die Windows-Richtlinienkette in WSL, und lesen Sie `/etc/claude-code` nur, wenn [kein Windows-Admin-Dokument vorhanden ist](#present-admin-documents); der Eintrag gibt die Reihenfolge an |470| [`wslInheritsWindowsSettings`](/docs/de/settings-reference#wslinheritswindowssettings) | Wenn in der HKLM-Registrierung oder einer Datei unter `C:\Program Files\ClaudeCode` gesetzt, lesen Sie die Windows-Richtlinienkette in WSL, und lesen Sie `/etc/claude-code` nur, wenn [kein Windows-Admin-Dokument vorhanden ist](#present-admin-documents); der Eintrag gibt die Reihenfolge an |

471 471 

472<Note>472<Note>

473 Bei Team- und Enterprise-Plänen aktiviert oder deaktiviert ein Owner [Remote Control](/docs/de/remote-control) und [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) organisationsweit in [Claude Code Admin-Einstellungen](https://claude.ai/admin-settings/claude-code). Remote Control kann zusätzlich pro Gerät mit der Einstellung [`disableRemoteControl`](/docs/de/settings-reference#disableremotecontrol) deaktiviert werden. Cloud-Sitzungen haben keinen verwalteten Einstellungsschlüssel pro Gerät.473 Bei Team- und Enterprise-Plänen aktiviert oder deaktiviert ein Owner [Remote Control](/docs/de/remote-control) und [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) organisationsweit in [Claude Code Admin-Einstellungen](https://claude.ai/admin-settings/claude-code). Wenn ein Owner Remote Control ausschaltet, werden auch bereits verbundene Sitzungen getrennt, die Claude Code v2.1.286 oder später ausführen. Jede dieser Sitzungen wird getrennt, sobald sie das nächste Mal die Richtlinie Ihrer Organisation aktualisiert, etwa einmal pro Stunde. Was in diesen Sitzungen geschieht, erfahren Sie unter [`Remote Control was turned off by your organization's policy`](/docs/de/remote-control#remote-control-was-turned-off-by-your-organizations-policy).

474 

475 Remote Control kann zusätzlich pro Gerät mit der Einstellung [`disableRemoteControl`](/docs/de/settings-reference#disableremotecontrol) deaktiviert werden. Cloud-Sitzungen haben keinen verwalteten Einstellungsschlüssel pro Gerät.

474 476 

475 Um zu überprüfen, ob diese Organisationseinstellungen einen bestimmten Computer erreicht haben, führen Sie dort `claude doctor` aus und lesen Sie die Zeile `Organization policy`, die angibt, von wo Claude Code die Richtlinie geladen hat oder warum sie nicht geladen wurde. Erfordert Claude Code v2.1.261 oder später. In einer laufenden Sitzung zeigt `/status` dieselbe Zeile an, wenn die Richtlinie nicht geladen wurde.477 Um zu überprüfen, ob diese Organisationseinstellungen einen bestimmten Computer erreicht haben, führen Sie dort `claude doctor` aus und lesen Sie die Zeile `Organization policy`, die angibt, von wo Claude Code die Richtlinie geladen hat oder warum sie nicht geladen wurde. Erfordert Claude Code v2.1.261 oder später. In einer laufenden Sitzung zeigt `/status` dieselbe Zeile an, wenn die Richtlinie nicht geladen wurde.

476</Note>478</Note>

memory.md +6 −4

Details

50Behandeln Sie CLAUDE.md als den Ort, an dem Sie aufschreiben, was Sie sonst erklären würden. Fügen Sie hinzu, wenn:50Behandeln Sie CLAUDE.md als den Ort, an dem Sie aufschreiben, was Sie sonst erklären würden. Fügen Sie hinzu, wenn:

51 51 

52* Claude denselben Fehler ein zweites Mal macht52* Claude denselben Fehler ein zweites Mal macht

53* Eine Code-Überprüfung etwas findet, das Claude über diese Codebasis hätte wissen sollen53* Ein Code-Review etwas findet, das Claude über diese Codebasis hätte wissen sollen

54* Sie dieselbe Korrektur oder Klarstellung in den Chat eingeben, die Sie in der letzten Sitzung eingegeben haben54* Sie dieselbe Korrektur oder Klarstellung in den Chat eingeben, die Sie in der letzten Sitzung eingegeben haben

55* Ein neuer Teamkollege denselben Kontext benötigen würde, um produktiv zu sein55* Ein neuer Teamkollege denselben Kontext benötigen würde, um produktiv zu sein

56 56 


161 161 

162Alle entdeckten Dateien werden in den Kontext verkettet, statt sich gegenseitig zu überschreiben. Über den Verzeichnisbaum wird der Inhalt vom Dateisystem-Root bis zu Ihrem Arbeitsverzeichnis geordnet. Für das Beispiel `foo/bar/` erscheint `foo/CLAUDE.md` im Kontext vor `foo/bar/CLAUDE.md`, daher werden Anweisungen näher an dem Ort, an dem Sie Claude gestartet haben, zuletzt gelesen. Innerhalb jedes Verzeichnisses wird `CLAUDE.local.md` nach `CLAUDE.md` angehängt, daher sind Ihre persönlichen Notizen das letzte, was Claude auf dieser Ebene liest.162Alle entdeckten Dateien werden in den Kontext verkettet, statt sich gegenseitig zu überschreiben. Über den Verzeichnisbaum wird der Inhalt vom Dateisystem-Root bis zu Ihrem Arbeitsverzeichnis geordnet. Für das Beispiel `foo/bar/` erscheint `foo/CLAUDE.md` im Kontext vor `foo/bar/CLAUDE.md`, daher werden Anweisungen näher an dem Ort, an dem Sie Claude gestartet haben, zuletzt gelesen. Innerhalb jedes Verzeichnisses wird `CLAUDE.local.md` nach `CLAUDE.md` angehängt, daher sind Ihre persönlichen Notizen das letzte, was Claude auf dieser Ebene liest.

163 163 

164Claude entdeckt auch `CLAUDE.md`- und `CLAUDE.local.md`-Dateien in Unterverzeichnissen unter Ihrem aktuellen Arbeitsverzeichnis. Statt sie beim Start zu laden, werden sie eingebunden, wenn Claude Dateien in diesen Unterverzeichnissen liest.164Claude entdeckt auch `CLAUDE.md`- und `CLAUDE.local.md`-Dateien in Unterverzeichnissen unter Ihrem aktuellen Arbeitsverzeichnis. Statt sie beim Start zu laden, werden sie eingebunden, wenn Claude Dateien in diesen Unterverzeichnissen liest. Für Dateien innerhalb eines Worktrees unter `.claude/worktrees/` siehe [Subagenten mit Worktrees isolieren](/docs/de/worktrees#isolate-subagents-with-worktrees).

165 165 

166Wenn Sie in einem großen Monorepo arbeiten, in dem CLAUDE.md-Dateien anderer Teams aufgegriffen werden, verwenden Sie [`claudeMdExcludes`](#exclude-specific-claude-md-files), um sie zu überspringen. Für das vollständige Layout von Root- und Pro-Verzeichnis-CLAUDE.md-Dateien und Regeln siehe [Monorepos und große Repos](/docs/de/large-codebases).166Wenn Sie in einem großen Monorepo arbeiten, in dem CLAUDE.md-Dateien anderer Teams aufgegriffen werden, verwenden Sie [`claudeMdExcludes`](#exclude-specific-claude-md-files), um sie zu überspringen. Für das vollständige Layout von Root- und Pro-Verzeichnis-CLAUDE.md-Dateien und Regeln siehe [Monorepos und große Repos](/docs/de/large-codebases).

167 167 


232- Include OpenAPI documentation comments232- Include OpenAPI documentation comments

233```233```

234 234 

235Regeln ohne ein `paths`-Feld werden bedingungslos geladen und gelten für alle Dateien. Pfadgebundene Regeln werden ausgelöst, wenn Claude Dateien liest, die dem Muster entsprechen, nicht bei jedem Tool-Einsatz. Ab v2.1.198 funktioniert das Matching auch, wenn Claude eine Datei über einen symlinks Pfad zum Projektverzeichnis erreicht, zum Beispiel in einem symlinks Checkout.235Regeln ohne ein `paths`-Feld werden bedingungslos geladen und gelten für alle Dateien. Pfadgebundene Regeln werden ausgelöst, wenn Claude Dateien liest, die dem Muster entsprechen, nicht bei jedem Tool-Einsatz. Das Matching funktioniert auch, wenn Claude eine Datei über einen per Symlink verknüpften Pfad zum Projektverzeichnis erreicht, zum Beispiel in einem per Symlink verknüpften Checkout.

236 236 

237Verwenden Sie Glob-Muster im Feld `paths`, um Dateien nach Erweiterung, Verzeichnis oder einer beliebigen Kombination zu vergleichen:237Verwenden Sie Glob-Muster im Feld `paths`, um Dateien nach Erweiterung, Verzeichnis oder einer beliebigen Kombination zu vergleichen:

238 238 


538 Aktivieren oder deaktivieren Sie Auto-Memory538 Aktivieren oder deaktivieren Sie Auto-Memory

539</h3>539</h3>

540 540 

541Auto-Memory ist standardmäßig aktiviert. Um es umzuschalten, öffnen Sie `/memory` in einer Sitzung und verwenden Sie den Auto-Memory-Schalter, der `autoMemoryEnabled` in Ihren Benutzereinstellungen unter `~/.claude/settings.json` speichert. Um es für ein einzelnes Projekt auszuschalten, setzen Sie `autoMemoryEnabled` in den Einstellungen dieses Projekts:541Auto-Memory ist in lokalen Sitzungen standardmäßig aktiviert. Außerhalb von [Claude Tag](https://claude.com/docs/claude-tag/overview)-Sitzungen läuft eine Sitzung in einer [selbst gehosteten Umgebung](/docs/de/self-hosted-environments-configuration#how-each-session’s-config-is-assembled) standardmäßig mit deaktiviertem Auto-Memory.

542 

543Um es umzuschalten, öffnen Sie `/memory` in einer Sitzung und verwenden Sie den Auto-Memory-Schalter, der `autoMemoryEnabled` in Ihren Benutzereinstellungen unter `~/.claude/settings.json` speichert. Um es für ein einzelnes Projekt auszuschalten, setzen Sie `autoMemoryEnabled` in den Einstellungen dieses Projekts:

542 544 

543```json theme={null}545```json theme={null}

544{546{

permissions.md +124 −123

Details

223Das Etikett, das für ein Werkzeug im Transkript und im Berechtigungsdialog angezeigt wird, kann sich vom kanonischen Namen unterscheiden. Beispielsweise hat das Werkzeug mit der Bezeichnung `Stop Task` im Transkript den kanonischen Namen `TaskStop`. Berechtigungsregeln und [Hook-Matcher](/docs/de/hooks) gleichen das Etikett nicht ab, daher passt eine Regel, die als `Stop Task` geschrieben ist, nicht. Für Ablehnungs- und Anfrage-Regeln erfasst die obige Startwarnmeldung die Nichtübereinstimmung. Verwenden Sie die kanonischen Namen, die in der [Werkzeugreferenz](/docs/de/tools-reference) aufgelistet sind.223Das Etikett, das für ein Werkzeug im Transkript und im Berechtigungsdialog angezeigt wird, kann sich vom kanonischen Namen unterscheiden. Beispielsweise hat das Werkzeug mit der Bezeichnung `Stop Task` im Transkript den kanonischen Namen `TaskStop`. Berechtigungsregeln und [Hook-Matcher](/docs/de/hooks) gleichen das Etikett nicht ab, daher passt eine Regel, die als `Stop Task` geschrieben ist, nicht. Für Ablehnungs- und Anfrage-Regeln erfasst die obige Startwarnmeldung die Nichtübereinstimmung. Verwenden Sie die kanonischen Namen, die in der [Werkzeugreferenz](/docs/de/tools-reference) aufgelistet sind.

224 224 

225<h2 id="tool-specific-permission-rules">225<h2 id="tool-specific-permission-rules">

226 Werkzeugspezifische Berechtigungsregeln226 Toolspezifische Berechtigungsregeln

227</h2>227</h2>

228 228 

229<h3 id="bash">229<h3 id="bash">

230 Bash230 Bash

231</h3>231</h3>

232 232 

233Bash-Berechtigungsregeln gleichen den gesamten Befehlstext ab, wobei `*` für beliebigen Text steht. [Wildcard-Muster](#wildcard-patterns) zeigt, welche Befehle jede Regelform abgleicht und wo `*` platziert werden sollte. Der Rest dieses Abschnitts behandelt, wie Claude Code zusammengesetzte Befehle und Wrapper abgleicht, was eine Regel nicht abgleicht, schreibgeschützte Befehle und Umleitungen.233Bash-Regeln gleichen den gesamten Befehlstext ab, wobei `*` für beliebigen Text steht. [Wildcard-Muster](#wildcard-patterns) zeigt, welche Befehle jede Regelform abgleicht und wo `*` platziert werden sollte. Der Rest dieses Abschnitts behandelt, wie Claude Code zusammengesetzte Befehle und Wrapper abgleicht, was eine Regel nicht abgleicht, nur lesende Befehle und Umleitungen.

234 234 

235<h4 id="compound-commands">235<h4 id="compound-commands">

236 Zusammengesetzte Befehle236 Zusammengesetzte Befehle

237</h4>237</h4>

238 238 

239<Tip>239<Tip>

240 Claude Code ist sich Shell-Operatoren bewusst, daher gibt eine Regel wie `Bash(safe-cmd *)` ihm nicht die Berechtigung, den Befehl `safe-cmd && other-cmd` auszuführen. Die erkannten Befehlstrennzeichen sind `&&`, `||`, `;`, `|`, `|&`, `&` und Zeilenumbrüche. Eine Regel muss jeden Unterbefehl unabhängig abgleichen.240 Claude Code kennt Shell-Operatoren, daher gibt eine Regel wie `Bash(safe-cmd *)` Claude nicht die Berechtigung, den Befehl `safe-cmd && other-cmd` auszuführen. Die erkannten Befehlstrennzeichen sind `&&`, `||`, `;`, `|`, `|&`, `&` und Zeilenumbrüche. Eine Regel muss jeden Unterbefehl unabhängig abgleichen.

241</Tip>241</Tip>

242 242 

243Deny- und Ask-Regeln gelten, wenn ein beliebiger Unterbefehl sie abgleicht, einschließlich eines Befehls, der in einer Subshell verschachtelt ist, einer Befehlsersetzung oder eines Kontrollfluss-Bodys wie einer `for`-Schleife. Eine Ask-Regel wie `Bash(git clean *)` fordert Sie immer noch auf für `cd /tmp && git clean -f` oder `echo "$(git clean -f)"`, auch im [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode).243deny- und ask-Regeln gelten, wenn ein beliebiger Unterbefehl sie abgleicht, einschließlich eines Befehls, der in einer Subshell, einer Befehlsersetzung oder einem Kontrollfluss-Body wie einer `for`-Schleife verschachtelt ist. Eine ask-Regel wie `Bash(git clean *)` fragt bei `cd /tmp && git clean -f` oder `echo "$(git clean -f)"` weiterhin bei Ihnen nach, auch im [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode).

244 244 

245Wenn `&&` oder `||` nichts danach hat, wie in `npm test &&`, behandelt Claude Code den Befehl als nicht analysierbar und teilt ihn nicht in Unterbefehle für Allow-Regel-Abgleich auf, daher genehmigt eine Regel wie `Bash(npm *)` ihn nicht.245Wenn nach `&&` oder `||` nichts folgt, wie in `npm test &&`, behandelt Claude Code den Befehl als nicht analysierbar und teilt ihn für den Abgleich mit allow-Regeln nicht in Unterbefehle auf, daher genehmigt eine Regel wie `Bash(npm *)` ihn nicht.

246 246 

247Wenn Sie einen zusammengesetzten Befehl mit „Ja, nicht mehr fragen" genehmigen, speichert Claude Code eine separate Regel für jeden Unterbefehl, der Genehmigung erfordert, anstelle einer einzelnen Regel für die vollständige zusammengesetzte Zeichenkette. Zum Beispiel speichert das Genehmigen von `git status && npm test` eine Regel für `npm test`, sodass zukünftige `npm test`-Aufrufe erkannt werden, unabhängig davon, was dem `&&` vorausgeht. Unterbefehle wie `cd` in ein Unterverzeichnis generieren ihre eigene Read-Regel für diesen Pfad. Für einen einzelnen zusammengesetzten Befehl können bis zu 5 Regeln gespeichert werden.247Wenn Sie einen zusammengesetzten Befehl mit „Ja, nicht mehr fragen" genehmigen, speichert Claude Code eine separate Regel für jeden Unterbefehl, der eine Genehmigung erfordert, anstelle einer einzelnen Regel für die vollständige zusammengesetzte Zeichenkette. Zum Beispiel speichert das Genehmigen von `git status && npm test` eine Regel für `npm test`, sodass zukünftige `npm test`-Aufrufe erkannt werden, unabhängig davon, was dem `&&` vorausgeht. Unterbefehle wie `cd` in ein Verzeichnis außerhalb Ihrer Arbeitsverzeichnisse erzeugen ihre eigene Read-Regel für diesen Pfad. Für einen einzelnen zusammengesetzten Befehl können bis zu 5 Regeln gespeichert werden.

248 248 

249<h4 id="process-wrappers">249<h4 id="process-wrappers">

250 Wrapper250 Wrapper

251</h4>251</h4>

252 252 

253Vor dem Abgleich von Bash-Regeln entfernt Claude Code einen festen Satz von Wrappern, daher gleicht eine Regel wie `Bash(npm test *)` auch `timeout 30 npm test` ab. Die entfernten Wrapper sind `timeout`, `time`, `nice`, `nohup` und `stdbuf`, plus die Shell-Builtins `command` und `builtin` sowie zsh's `noglob`. Jeder führt sein Argument als den tatsächlichen Befehl aus. Zwei verwandte Formen werden nicht entfernt: die Abfrageform `command -v`, die einen Befehl nachschlägt, anstatt ihn auszuführen, und zsh's `nocorrect`.253Vor dem Abgleich von Bash-Regeln entfernt Claude Code einen festen Satz von Wrappern, daher gleicht eine Regel wie `Bash(npm test *)` auch `timeout 30 npm test` ab. Die entfernten Wrapper sind `timeout`, `time`, `nice`, `nohup` und `stdbuf`, außerdem die Shell-Builtins `command` und `builtin` sowie `noglob` von zsh. Jeder führt sein Argument als den eigentlichen Befehl aus. Zwei verwandte Formen werden nicht entfernt: die Abfrageform `command -v`, die einen Befehl nachschlägt, anstatt ihn auszuführen, und `nocorrect` von zsh.

254 254 

255Claude Code entfernt auch eine führende Zuweisung bestimmter bekannter sicherer Umgebungsvariablen, daher gleicht `Bash(npm test *)` `NODE_ENV=test npm test` ab. Eine Allow-Regel gleicht nicht über eine Zuweisung einer anderen Variablen hinweg ab. Eine Deny- oder Ask-Regel gleicht über jede führende Zuweisung hinweg ab, daher gleicht `Bash(rm *)` in Deny immer noch `FOO=bar rm -rf tmp/` ab.255Claude Code entfernt auch eine führende Zuweisung bestimmter als sicher bekannter Umgebungsvariablen, daher gleicht `Bash(npm test *)` `NODE_ENV=test npm test` ab. Eine allow-Regel gleicht nicht über die Zuweisung einer anderen Variablen hinweg ab. Eine deny- oder ask-Regel gleicht über jede führende Zuweisung hinweg ab, daher gleicht `Bash(rm *)` in deny weiterhin `FOO=bar rm -rf tmp/` ab.

256 256 

257Bloßes `xargs` wird auch entfernt, daher gleicht `Bash(grep *)` `xargs grep pattern` ab. Das Entfernen gilt nur, wenn `xargs` keine Flags hat: Ein Aufruf wie `xargs -n1 grep pattern` wird als `xargs`-Befehl abgeglichen, daher decken Regeln, die für den inneren Befehl geschrieben wurden, ihn nicht ab.257Ein bloßes `xargs` wird ebenfalls entfernt, daher gleicht `Bash(grep *)` `xargs grep pattern` ab. Das Entfernen gilt nur, wenn `xargs` keine Flags hat: Ein Aufruf wie `xargs -n1 grep pattern` wird als `xargs`-Befehl abgeglichen, daher decken Regeln, die für den inneren Befehl geschrieben wurden, ihn nicht ab.

258 258 

259Diese Wrapper-Liste ist integriert und nicht konfigurierbar. Entwicklungsumgebungs-Runner wie `direnv exec`, `devbox run`, `mise exec`, `npx` und `docker exec` sind nicht in der Liste. Da diese Tools ihre Argumente als Befehl ausführen, gleicht eine Regel wie `Bash(devbox run *)` alles ab, was nach `run` kommt, einschließlich `devbox run rm -rf .`. Um Arbeit innerhalb eines Umgebungs-Runners zu genehmigen, schreiben Sie eine spezifische Regel, die sowohl den Runner als auch den inneren Befehl enthält, wie `Bash(devbox run npm test)`. Fügen Sie eine Regel pro innerem Befehl hinzu, den Sie zulassen möchten.259Diese Wrapper-Liste ist integriert und nicht konfigurierbar. Runner für Entwicklungsumgebungen wie `direnv exec`, `devbox run`, `mise exec`, `npx` und `docker exec` sind nicht in der Liste. Da diese Tools ihre Argumente als Befehl ausführen, gleicht eine Regel wie `Bash(devbox run *)` alles ab, was nach `run` kommt, einschließlich `devbox run rm -rf .`. Um Arbeit innerhalb eines Umgebungs-Runners zu genehmigen, schreiben Sie eine spezifische Regel, die sowohl den Runner als auch den inneren Befehl enthält, wie `Bash(devbox run npm test)`. Fügen Sie eine Regel pro innerem Befehl hinzu, den Sie zulassen möchten.

260 260 

261Exec-Wrapper wie `watch`, `setsid`, `ionice` und `flock` können nicht durch eine Präfixregel wie `Bash(watch *)` automatisch genehmigt werden, daher fordern sie im Manual-Modus immer auf. Das gleiche gilt für `find` mit `-exec` oder `-delete`: Eine `Bash(find *)` Regel deckt diese Formen nicht ab. Um einen spezifischen Aufruf zu genehmigen, schreiben Sie eine exakte Übereinstimmungsregel für die vollständige Befehlszeichenkette.261Exec-Wrapper wie `watch`, `setsid`, `ionice` und `flock` können nicht durch eine Präfixregel wie `Bash(watch *)` automatisch genehmigt werden, daher wird im Manual-Modus bei ihnen immer nachgefragt. Dasselbe gilt für `find` mit `-exec` oder `-delete`: Eine `Bash(find *)`-Regel deckt diese Formen nicht ab. Um einen bestimmten Aufruf zu genehmigen, schreiben Sie eine Regel mit exakter Übereinstimmung für die vollständige Befehlszeichenkette.

262 262 

263<h4 id="bash-rule-limits">263<h4 id="bash-rule-limits">

264 Was eine Bash-Regel nicht abgleicht264 Was eine Bash-Regel nicht abgleicht

265</h4>265</h4>

266 266 

267Eine Bash-Regel gleicht den Befehlstext ab, den Claude schreibt, nachdem Claude Code [zusammengesetzte Befehle](#compound-commands) aufgeteilt und [Wrapper](#process-wrappers) entfernt hat. Sie gleicht nicht das gleiche Programm ab, das in einer anderen Form aufgerufen wird, daher deckt eine Deny- oder Ask-Regel den Aufruf ab, den Claude normalerweise erzeugt, und ist keine Sicherheitsgrenze um das Programm. Diese Regeln in `deny` oder `ask` stoppen die erste Form und nicht die anderen:267Eine Bash-Regel gleicht den Befehlstext ab, den Claude schreibt, nachdem Claude Code [zusammengesetzte Befehle](#compound-commands) aufgeteilt und [Wrapper](#process-wrappers) entfernt hat. Sie gleicht nicht dasselbe Programm ab, wenn es in einer anderen Form aufgerufen wird, daher deckt eine deny- oder ask-Regel den Aufruf ab, den Claude normalerweise erzeugt, und ist keine Sicherheitsgrenze um das Programm. Diese Regeln in `deny` oder `ask` stoppen die erste Form und nicht die anderen:

268 268 

269| Regel | Stoppt | Stoppt nicht |269| Regel | Stoppt | Stoppt nicht |

270| :- | :- | :- |270| :- | :- | :- |


274 274 

275Ihre anderen Regeln und der Berechtigungsmodus entscheiden über die Befehle in der letzten Spalte.275Ihre anderen Regeln und der Berechtigungsmodus entscheiden über die Befehle in der letzten Spalte.

276 276 

277Für Dateisystem- und Netzwerkdurchsetzung, die nicht vom Befehlstext abhängt, verwenden Sie [Sandboxing](/docs/de/sandboxing). Um den vollständigen Befehlstext mit Ihrer eigenen Logik vor der Ausführung zu überprüfen, verwenden Sie einen [PreToolUse-Hook](#extend-permissions-with-hooks).277Für eine Durchsetzung auf Dateisystem- und Netzwerkebene, die nicht vom Befehlstext abhängt, verwenden Sie [Sandboxing](/docs/de/sandboxing). Um den vollständigen Befehlstext vor der Ausführung mit Ihrer eigenen Logik zu prüfen, verwenden Sie einen [PreToolUse-Hook](#extend-permissions-with-hooks).

278 278 

279<h4 id="read-only-commands">279<h4 id="read-only-commands">

280 Schreibgeschützte Befehle280 Nur lesende Befehle

281</h4>281</h4>

282 282 

283Claude Code erkennt einen integrierten Satz von Bash-Befehlen als schreibgeschützt und führt sie ohne Berechtigungsaufforderung in jedem Modus aus, außer für einen Pfad, den [`permissions.blockReadsOutsideWorkingDirectories`](/docs/de/settings-reference#permissions-blockreadsoutsideworkingdirectories) einschränkt. Der Satz umfasst `ls`, `cat`, `echo`, `pwd`, `head`, `tail`, `grep`, `find`, `wc`, `which`, `diff`, `stat`, `du`, `cd` und schreibgeschützte Formen von `git`. Der Satz ist nicht konfigurierbar; um eine Aufforderung für einen dieser Befehle zu erfordern, fügen Sie eine `ask`- oder `deny`-Regel dafür hinzu. Im Auto-Modus können diese Befehle auch auf die Überprüfung durch den Klassifizierer warten; siehe [wie der Klassifizierer Aktionen bewertet](/docs/de/permission-modes#how-the-classifier-evaluates-actions).283Claude Code erkennt einen integrierten Satz von Bash-Befehlen als nur lesend und führt sie in jedem Modus ohne Berechtigungsabfrage aus, außer soweit [`permissions.blockReadsOutsideWorkingDirectories`](/docs/de/settings-reference#permissions-blockreadsoutsideworkingdirectories) dies für Pfade außerhalb Ihrer Arbeitsverzeichnisse ändert. Der Satz umfasst `ls`, `cat`, `echo`, `pwd`, `head`, `tail`, `grep`, `find`, `wc`, `which`, `diff`, `stat`, `du`, `cd` und nur lesende Formen von `git`. Der Satz ist nicht konfigurierbar; um für einen dieser Befehle eine Abfrage zu erzwingen, fügen Sie eine `ask`- oder `deny`-Regel dafür hinzu. Im Auto-Modus können diese Befehle auch auf die Überprüfung durch den Klassifikator warten; siehe [wie der Klassifikator Aktionen bewertet](/docs/de/permission-modes#how-the-classifier-evaluates-actions).

284 284 

285Eine Umleitung wie `ls > out.txt` fügt eine Überprüfung des Ziels hinzu. Siehe [Umleitungen](#redirections).285Eine Umleitung wie `ls > out.txt` fügt eine Prüfung des Ziels hinzu. Siehe [Umleitungen](#redirections).

286 286 

287Unquotierte Glob-Muster sind für Befehle zulässig, deren jedes Flag schreibgeschützt ist, daher laufen `ls *.ts` und `wc -l src/*.py` ohne Aufforderung.287Nicht in Anführungszeichen gesetzte Glob-Muster sind für Befehle zulässig, deren Flags alle nur lesend sind, daher laufen `ls *.ts` und `wc -l src/*.py` ohne Abfrage.

288 288 

289Im Manual-Modus fordern Befehle aus diesem Satz immer noch in diesen Fällen auf:289Im Manual-Modus wird bei Befehlen aus diesem Satz in folgenden Fällen dennoch nachgefragt:

290 290 

291* **Unquotierte Globs für Befehle mit schreibfähigen Flags**: Befehle mit schreibfähigen oder ausführungsfähigen Flags, wie `find`, `sort`, `sed` und `git`, fordern auf, wenn ein unquotiertes Glob vorhanden ist, da das Glob zu einem Flag wie `-delete` expandieren könnte.291* **Nicht in Anführungszeichen gesetzte Globs bei Befehlen mit schreibfähigen Flags**: Bei Befehlen mit schreib- oder ausführungsfähigen Flags, wie `find`, `sort`, `sed` und `git`, wird nachgefragt, wenn ein nicht in Anführungszeichen gesetzter Glob vorhanden ist, da der Glob zu einem Flag wie `-delete` expandieren könnte.

292* **`docker` auf einen anderen Daemon ausgerichtet**: Schreibgeschützte Formen von `docker` fordern auf, wenn der Befehl ein Flag trägt, das einen anderen Daemon auswählt, wie `-H`, `--context` oder Podman's `--url` und `--connection`.292* **`docker` mit Verweis auf einen anderen Daemon**: Bei nur lesenden Formen von `docker` wird nachgefragt, wenn der Befehl ein Flag enthält, das einen anderen Daemon auswählt, wie `-H`, `--context` oder die Podman-Flags `--url` und `--connection`.

293* **`file` mit Pfad-öffnenden Flags**: `file` fordert auf, wenn es `-m`/`--magic-file` oder `-f`/`--files-from` übergibt, da diese Flags `file` veranlassen, die in der Flag-Wert benannten Pfade zu öffnen.293* **`file` mit Flags, die Pfade öffnen**: Bei `file` wird nachgefragt, wenn es `-m`/`--magic-file` oder `-f`/`--files-from` übergibt, da diese Flags `file` dazu veranlassen, die im Wert des Flags genannten Pfade zu öffnen.

294* **Netzwerkpfade unter Windows**: Ein Befehl, dessen Argumente einen Netzwerk-(UNC-)Pfad enthalten, wie `\\server\share\file`, fordert auf, da der Zugriff auf einen Netzwerkpfad Ihre Windows-Anmeldedaten an den Host senden kann, den er benennt. Die gleiche Überprüfung gilt für [PowerShell-Werkzeug](/docs/de/tools-reference#powershell-tool)-Befehle.294* **Netzwerkpfade unter Windows**: Bei einem Befehl, dessen Argumente einen Netzwerkpfad (UNC-Pfad) wie `\\server\share\file` enthalten, wird nachgefragt, da der Zugriff auf einen Netzwerkpfad Ihre Windows-Anmeldedaten an den genannten Host senden kann. Dieselbe Prüfung gilt für Befehle des [PowerShell-Tools](/docs/de/tools-reference#powershell-tool).

295* **Befehle, die die Analyse nicht analysieren kann**: Wenn Claude Code einen Befehl nicht vollständig analysieren kann, fordert es zur Genehmigung auf, anstatt den Befehl als schreibgeschützt zu behandeln. Befehle, die länger als 10.000 Zeichen sind, fordern immer auf, da sie das überschreiten, was die Analyse analysiert.295* **Schreibzugriffe auf spezielle Shell-Variablen**: Bei einem Befehl, der bestimmte spezielle Shell-Variablen wie `PATH` oder `IFS` setzt, zurücksetzt oder über sie iteriert, wird nachgefragt, auch wenn der Rest des Befehls nur lesend ist.

296* **Befehle, die die Analyse nicht parsen kann**: Wenn Claude Code einen Befehl nicht vollständig parsen kann, bittet es um Genehmigung, anstatt den Befehl als nur lesend zu behandeln. Bei Befehlen mit mehr als 10.000 Zeichen wird immer nachgefragt, da sie den Umfang überschreiten, den die Analyse parst.

296 297 

297Ein `cd` in einen Pfad innerhalb Ihres Arbeitsverzeichnisses oder eines [zusätzlichen Verzeichnisses](#working-directories) ist auch schreibgeschützt, und ein zusammengesetzter Befehl wie `cd packages/api && ls` läuft ohne Aufforderung, wenn jeder Teil auf eigene Faust qualifiziert. Diese Kombinationen fordern auf, auch wenn jeder Teil schreibgeschützt ist:298Ein `cd` in einen Pfad innerhalb Ihres Arbeitsverzeichnisses oder eines [zusätzlichen Verzeichnisses](#working-directories) ist ebenfalls nur lesend, und ein zusammengesetzter Befehl wie `cd packages/api && ls` läuft ohne Abfrage, wenn jeder Teil für sich die Bedingungen erfüllt. Bei diesen Kombinationen wird nachgefragt, auch wenn jeder Teil nur lesend ist:

298 299 

299* **`cd` mit `git`**: fordert auf, wenn die `cd` in ein anderes Verzeichnis wechselt, da das Ausführen von `git` in einem neuen Verzeichnis die Hooks dieses Verzeichnisses ausführen kann. Ein `cd` dessen Ziel zum aktuellen Arbeitsverzeichnis aufgelöst wird, ist ein No-Op und löst die Aufforderung nicht aus.300* **`cd` mit `git`**: Es wird nachgefragt, wenn das `cd` in ein anderes Verzeichnis wechselt, da das Ausführen von `git` in einem neuen Verzeichnis die Hooks dieses Verzeichnisses ausführen kann. Ein `cd`, dessen Ziel zum aktuellen Arbeitsverzeichnis aufgelöst wird, ist ein No-Op und löst keine Abfrage aus.

300* **`cd` mit einer Umleitung**: fordert auf, wenn Claude Code nicht bestimmen kann, in welches Verzeichnis das Umleitungsziel nach der Ausführung von `cd` aufgelöst wird. Ein Befehl, dessen einziges Umleitungsziel `/dev/null` ist, wie `cd app; grep -r pattern . 2>/dev/null`, fordert nicht auf, da `/dev/null` nicht vom Arbeitsverzeichnis abhängt.301* **`cd` mit einer Umleitung**: Es wird nachgefragt, wenn Claude Code nicht bestimmen kann, relativ zu welchem Verzeichnis das Umleitungsziel nach der Ausführung von `cd` aufgelöst wird. Bei einem Befehl, dessen einziges Umleitungsziel `/dev/null` ist, wie `cd app; grep -r pattern . 2>/dev/null`, wird nicht nachgefragt, da `/dev/null` nicht vom Arbeitsverzeichnis abhängt.

301 302 

302<Warning>303<Warning>

303 Bash-Berechtigungsmuster, die versuchen, Befehlsargumente einzuschränken, sind fragil. Zum Beispiel beabsichtigt `Bash(curl http://github.com/ *)`, curl auf GitHub-URLs zu beschränken, wird aber Variationen nicht abgleichen wie:304 Bash-Berechtigungsmuster, die versuchen, Befehlsargumente einzuschränken, sind fragil. Zum Beispiel soll `Bash(curl http://github.com/ *)` curl auf GitHub-URLs beschränken, gleicht aber Varianten wie diese nicht ab:

304 305 

305 * Optionen vor URL: `curl -X GET http://github.com/...`306 * Optionen vor der URL: `curl -X GET http://github.com/...`

306 * Anderes Protokoll: `curl https://github.com/...`307 * Anderes Protokoll: `curl https://github.com/...`

307 * Umleitungen: `curl -L http://short.example.com/xyz`, die zu GitHub umleitet308 * Weiterleitungen: `curl -L http://short.example.com/xyz`, das zu GitHub weiterleitet

308 * Variablen: `URL=http://github.com && curl $URL`309 * Variablen: `URL=http://github.com && curl $URL`

309 310 

310 Für zuverlässigere URL-Filterung sollten Sie erwägen:311 Für eine zuverlässigere URL-Filterung sollten Sie Folgendes erwägen:

311 312 

312 * **Bash-Netzwerkwerkzeuge einschränken**: Verwenden Sie Deny-Regeln, um `curl`, `wget` und ähnliche Befehle zu blockieren, verwenden Sie dann das WebFetch-Werkzeug mit `WebFetch(domain:github.com)`-Berechtigung für zulässige Domänen. Eine Deny-Regel gleicht nicht das gleiche Programm nach Pfad oder innerhalb von `sh -c` ab, daher kombinieren Sie es mit der [Sandbox-Netzwerk-Allowlist](/docs/de/sandboxing#network-isolation), wenn die Einschränkung gelten muss; siehe [was eine Bash-Regel nicht abgleicht](#bash-rule-limits)313 * **Bash-Netzwerktools einschränken**: Verwenden Sie deny-Regeln, um `curl`, `wget` und ähnliche Befehle zu stoppen, und verwenden Sie dann das WebFetch-Tool mit der Berechtigung `WebFetch(domain:github.com)` für zulässige Domains. Eine deny-Regel gleicht dasselbe Programm nicht ab, wenn es über einen Pfad oder innerhalb von `sh -c` aufgerufen wird, daher kombinieren Sie sie mit der [Netzwerk-Allowlist der Sandbox](/docs/de/sandboxing#network-isolation), wenn die Einschränkung sicher greifen muss; siehe [was eine Bash-Regel nicht abgleicht](#bash-rule-limits)

313 * **PreToolUse-Hooks verwenden**: Implementieren Sie einen Hook, der URLs in Bash-Befehlen validiert und nicht zulässige Domänen blockiert314 * **PreToolUse-Hooks verwenden**: Implementieren Sie einen Hook, der URLs in Bash-Befehlen validiert und nicht zulässige Domains blockiert

314 * **CLAUDE.md-Anleitung hinzufügen**: Beschreiben Sie Ihre zulässigen curl-Muster in `CLAUDE.md`. Dies beeinflusst, was Claude versucht, erzwingt aber keine Grenze, daher kombinieren Sie es mit einer der obigen Optionen315 * **Hinweise in CLAUDE.md hinzufügen**: Beschreiben Sie Ihre zulässigen curl-Muster in `CLAUDE.md`. Dies beeinflusst, was Claude versucht, erzwingt aber keine Grenze, daher kombinieren Sie es mit einer der obigen Optionen

315 316 

316 Beachten Sie, dass die alleinige Verwendung von WebFetch keinen Netzwerkzugriff verhindert. Wenn Bash zulässig ist, kann Claude immer noch `curl`, `wget` oder andere Werkzeuge verwenden, um auf jede URL zuzugreifen.317 Beachten Sie, dass die alleinige Verwendung von WebFetch keinen Netzwerkzugriff verhindert. Wenn Bash zulässig ist, kann Claude weiterhin `curl`, `wget` oder andere Tools verwenden, um jede URL zu erreichen.

317</Warning>318</Warning>

318 319 

319<h4 id="redirections">320<h4 id="redirections">

320 Umleitungen321 Umleitungen

321</h4>322</h4>

322 323 

323Wenn ein Befehl Ausgabe oder Eingabe umleitet, überprüft Claude Code das Umleitungsziel gegen Ihre Dateiregelns, als hätte Claude diese Datei direkt geschrieben oder gelesen:324Wenn ein Befehl Ausgabe oder Eingabe umleitet, prüft Claude Code das Umleitungsziel anhand Ihrer Dateiregeln, als hätte Claude diese Datei direkt geschrieben oder gelesen:

324 325 

325* **Ausgabeumleitungen**: für `> file`, `>> file` oder `2> file` deckt die Überprüfung Ihre `Edit` Allow- und Deny-Regeln, [geschützte Pfade](/docs/de/permission-modes#protected-paths) und die [Arbeitsverzeichnisse](#working-directories) ab. Eine Regel wie `Bash(git commit *)` genehmigt den Befehl, nicht das Ziel. Ein Ziel, das mit `~` beginnt oder ein Glob-Zeichen enthält, benötigt Ihre Genehmigung.326* **Ausgabeumleitungen**: Bei `> file`, `>> file` oder `2> file` umfasst die Prüfung Ihre `Edit`-allow- und -deny-Regeln, [geschützte Pfade](/docs/de/permission-modes#protected-paths) und die [Arbeitsverzeichnisse](#working-directories). Eine Regel wie `Bash(git commit *)` erlaubt den Befehl, nicht das Ziel. Ein Ziel, das mit `~` beginnt oder ein Glob-Zeichen enthält, erfordert Ihre Genehmigung.

326* **Eingabeumleitungen**: für `< file` deckt die Überprüfung Ihre `Read` Allow- und Deny-Regeln und die Arbeitsverzeichnisse ab. Ein Ziel außerhalb der Arbeitsverzeichnisse benötigt Ihre Genehmigung, es sei denn, eine Allow-Regel deckt es ab. Ein Ziel, das ein Glob-Muster enthält, oder einen relativen Pfad, der einer `cd` im gleichen Befehl folgt, benötigt Ihre Genehmigung, auch wenn eine Allow-Regel es deckt. Claude Code überprüft Eingabeziele in v2.1.257 und später.327* **Eingabeumleitungen**: Bei `< file` umfasst die Prüfung Ihre `Read`-allow- und -deny-Regeln und die Arbeitsverzeichnisse. Ein Ziel außerhalb der Arbeitsverzeichnisse erfordert Ihre Genehmigung, sofern keine allow-Regel es abdeckt. Ein Ziel, das ein Glob-Muster enthält, oder ein relativer Pfad, der auf ein `cd` im selben Befehl folgt, erfordert Ihre Genehmigung, auch wenn eine allow-Regel es abdeckt. Claude Code prüft Eingabeziele ab v2.1.257.

327 328 

328Ziele ohne Datei dahinter werden nicht überprüft: `/dev/null`, Dateideskriptor-Formen wie `2>&1` und `<&3`, und Here-Docs und Here-Strings.329Ziele ohne zugrunde liegende Datei werden nicht geprüft: `/dev/null`, Dateideskriptor-Formen wie `2>&1` und `<&3` sowie Here-Docs und Here-Strings.

329 330 

330Claude Code überprüft auch die Dateien, die ein `tee`-Befehl schreibt, einschließlich in einer Pipeline wie `make | tee build.log`. Die Überprüfung deckt Ihre `Edit` Allow- und Deny-Regeln, [geschützte Pfade](/docs/de/permission-modes#protected-paths) und die [Arbeitsverzeichnisse](#working-directories) ab. Eine Allow-Regel wie `Bash(tee *)` deckt ein Ziel außerhalb der Arbeitsverzeichnisse nicht ab. Claude Code überprüft `tee`-Ziele in v2.1.269 und später.331Claude Code prüft auch die Dateien, die ein `tee`-Befehl schreibt, auch in einer Pipeline wie `make | tee build.log`. Die Prüfung umfasst Ihre `Edit`-allow- und -deny-Regeln, [geschützte Pfade](/docs/de/permission-modes#protected-paths) und die [Arbeitsverzeichnisse](#working-directories). Eine allow-Regel wie `Bash(tee *)` deckt kein Ziel außerhalb der Arbeitsverzeichnisse ab. Claude Code prüft `tee`-Ziele ab v2.1.269.

331 332 

332<h3 id="powershell">333<h3 id="powershell">

333 PowerShell334 PowerShell

334</h3>335</h3>

335 336 

336PowerShell-Berechtigungsregeln verwenden die gleiche Form wie Bash-Regeln. Platzhalter mit `*` gleichen an jeder Position ab, das Suffix `:*` ist gleichwertig mit einem nachgestellten ` *`, und ein bloßes `PowerShell` oder `PowerShell(*)` gleicht jeden Befehl ab. Diese Konfiguration ermöglicht `Get-ChildItem`- und `git commit`-Befehle, blockiert aber `Remove-Item`:337PowerShell-Berechtigungsregeln haben dieselbe Form wie Bash-Regeln. Wildcards mit `*` gleichen an jeder Position ab, das Suffix `:*` ist gleichwertig mit einem nachgestellten ` *`, und ein bloßes `PowerShell` oder `PowerShell(*)` gleicht jeden Befehl ab. Diese Konfiguration erlaubt `Get-ChildItem`- und `git commit`-Befehle und blockiert `Remove-Item`:

337 338 

338```json theme={null}339```json theme={null}

339{340{


349}350}

350```351```

351 352 

352Häufige Aliase werden vor dem Abgleich kanonisiert. Eine Regel, die für den Cmdlet-Namen geschrieben wurde, gleicht auch seine Aliase ab, daher gleicht `PowerShell(Get-ChildItem *)` auch `gci`, `ls` und `dir` ab. Der Abgleich ist nicht case-sensitiv.353Gängige Aliase werden vor dem Abgleich kanonisiert. Eine Regel, die für den Cmdlet-Namen geschrieben wurde, gleicht auch dessen Aliase ab, daher gleicht `PowerShell(Get-ChildItem *)` auch `gci`, `ls` und `dir` ab. Beim Abgleich wird die Groß-/Kleinschreibung nicht beachtet.

353 354 

354Claude Code analysiert die PowerShell-AST und überprüft jeden Befehl in einem zusammengesetzten Befehl unabhängig. Pipeline-Operatoren `|`, Anweisungstrennzeichen `;` und auf PowerShell 7+ die Kettenoperatoren `&&` und `||` teilen einen zusammengesetzten Befehl in Unterbefehle auf. Eine Regel muss jeden Unterbefehl abgleichen, damit der zusammengesetzte Befehl zulässig ist.355Claude Code parst den PowerShell-AST und prüft jeden Befehl in einem zusammengesetzten Befehl unabhängig. Pipeline-Operatoren `|`, Anweisungstrennzeichen `;` und unter PowerShell 7+ die Verkettungsoperatoren `&&` und `||` teilen einen zusammengesetzten Befehl in Unterbefehle auf. Eine Regel muss jeden Unterbefehl abgleichen, damit der zusammengesetzte Befehl zulässig ist.

355 356 

356<h3 id="read-and-edit">357<h3 id="read-and-edit">

357 Read und Edit358 Read und Edit

358</h3>359</h3>

359 360 

360Um Claude's Dateiwerkzeuge daran zu hindern, eine Datei oder ein Verzeichnis zu lesen, fügen Sie eine `Read` Deny-Regel für seinen Pfad hinzu, wie `Read(./.env)` oder `Read(./secrets/**)`; [Sensible Dateien ausschließen](/docs/de/settings-reference#exclude-sensitive-files) hat ein einfügendes Beispiel.361Um zu verhindern, dass die Datei-Tools von Claude eine Datei oder ein Verzeichnis lesen, fügen Sie eine `Read`-deny-Regel für den Pfad hinzu, wie `Read(./.env)` oder `Read(./secrets/**)`; [Sensible Dateien ausschließen](/docs/de/settings-reference#exclude-sensitive-files) enthält ein Beispiel zum Einfügen. Falls Ihr Projekt eine `.claudeignore`-Datei hat, bleibt diese wirkungslos; übertragen Sie ihre Einträge daher in `Read`-deny-Regeln.

361 362 

362`Edit`-Regeln gelten für alle integrierten Werkzeuge, die Dateien bearbeiten. Claude versucht nach besten Kräften, `Read`-Regeln auf alle integrierten Werkzeuge anzuwenden, die Dateien lesen, wie Grep und Glob, auf `@file`-Erwähnungen in Ihren Eingabeaufforderungen und auf die Auswahl und offene Datei-Kontexte, die ein verbundener [IDE](/docs/de/vs-code#the-built-in-ide-mcp-server) mit Claude teilt.363`Edit`-Regeln gelten für alle integrierten Tools, die Dateien bearbeiten. Claude versucht nach bestem Bemühen, `Read`-Regeln auf alle integrierten Tools anzuwenden, die Dateien lesen, wie Grep und Glob, auf `@file`-Erwähnungen in Ihren Prompts sowie auf den Auswahl- und Kontext geöffneter Dateien, den eine verbundene [IDE](/docs/de/vs-code#the-built-in-ide-mcp-server) mit Claude teilt.

363 364 

364Eine `Read` Deny-Regel blockiert auch das [Edit- und Write-Werkzeug](/docs/de/errors#file-is-covered-by-a-read-deny-rule) auf demselben Pfad, einschließlich der Erstellung einer neuen Datei dort. NotebookEdit ist nicht abgedeckt, daher fügen Sie eine `Edit` Deny-Regel für Pfade hinzu, die kein Werkzeug ändern darf. Die Überprüfung erfordert Claude Code v2.1.208 oder später bei Bearbeitungen, und v2.1.228 oder später bei Schreibvorgängen.365Eine `Read`-deny-Regel blockiert auch die [Edit- und Write-Tools](/docs/de/errors#file-is-covered-by-a-read-deny-rule) für denselben Pfad, einschließlich des Erstellens einer neuen Datei dort. NotebookEdit ist nicht abgedeckt, daher fügen Sie eine `Edit`-deny-Regel für Pfade hinzu, die kein Tool ändern darf. Die Prüfung erfordert Claude Code v2.1.208 oder höher für Bearbeitungen und v2.1.228 oder höher für Schreibvorgänge.

365 366 

366Claude Code überprüft Dateiberechtigungen nur gegen `Edit(path)` und `Read(path)` Regeln. Wenn Sie eine Pfadregel für `Write`, `NotebookEdit`, `Glob` oder das veraltete `MultiEdit`-Werkzeug schreiben, akzeptiert Claude Code die Regel, konsultiert sie aber nie, und [warnt beim Start](/docs/de/errors#is-not-matched-by-file-permission-checks), außer für eine `Glob`-Regel, die in `--allowedTools` übergeben wird. Verwenden Sie `Edit(docs/**)` anstelle von `Write(docs/**)`, `NotebookEdit(docs/**)` oder `MultiEdit(docs/**)`, und `Read(docs/**)` anstelle von `Glob(docs/**)`. Claude Code warnt nicht vor einer Werkzeugnamen-Regel ohne Pfad, wie einer Deny-Regel für `Write`; sie passt diese Regel überall auf Werkzeugebene an. Erfordert Claude Code v2.1.210 oder später.367Claude Code prüft Dateiberechtigungen nur anhand von `Edit(path)`- und `Read(path)`-Regeln. Wenn Sie stattdessen eine Pfadregel für `Write`, `NotebookEdit`, `Glob` oder das veraltete `MultiEdit`-Tool schreiben, akzeptiert Claude Code die Regel, berücksichtigt sie aber nie und [warnt beim Start](/docs/de/errors#is-not-matched-by-file-permission-checks), außer bei einer `Glob`-Regel, die in `--allowedTools` übergeben wird. Verwenden Sie `Edit(docs/**)` anstelle von `Write(docs/**)`, `NotebookEdit(docs/**)` oder `MultiEdit(docs/**)` und `Read(docs/**)` anstelle von `Glob(docs/**)`. Claude Code warnt nicht vor einer Regel mit Tool-Namen ohne Pfad, wie einer deny-Regel für `Write`; es gleicht diese Regel überall auf Tool-Ebene ab. Erfordert Claude Code v2.1.210 oder höher.

367 368 

368<Warning>369<Warning>

369 Read- und Edit-Deny-Regeln gelten für Claude's integrierte Dateiwerkzeuge, für Dateibefehle, die Claude Code in Bash erkennt, wie `cat`, `head`, `tail`, `sed` und `tee`, und für die Ziele von Bash [Umleitungen](#redirections) wie `> file` und `< file`. Sie gelten nicht für Befehle, die Dateien ohne Benennung lesen, wie `grep -r pattern .` von dem Verzeichnis aus ausgeführt, das die Datei enthält, oder für beliebige Unterprozesse, die Dateien indirekt lesen oder schreiben, wie ein Python- oder Node-Skript, das Dateien selbst öffnet. Für OS-Ebenen-Durchsetzung, die alle Prozesse daran hindert, auf einen Pfad zuzugreifen, [aktivieren Sie die Sandbox](/docs/de/sandboxing).370 Read- und Edit-deny-Regeln gelten für die integrierten Datei-Tools von Claude, für Dateibefehle, die Claude Code in Bash erkennt, wie `cat`, `head`, `tail`, `sed` und `tee`, sowie für die Ziele von Bash-[Umleitungen](#redirections) wie `> file` und `< file`. Sie gelten nicht für einen Befehl, der Dateien liest, ohne sie zu benennen, wie `grep -r pattern .`, ausgeführt aus dem Verzeichnis, das die Datei enthält, oder für beliebige Unterprozesse, die Dateien indirekt lesen oder schreiben, wie ein Python- oder Node-Skript, das Dateien selbst öffnet. Für eine Durchsetzung auf Betriebssystemebene, die allen Prozessen den Zugriff auf einen Pfad verwehrt, [aktivieren Sie die Sandbox](/docs/de/sandboxing).

370</Warning>371</Warning>

371 372 

372Read- und Edit-Regeln folgen beide der [gitignore](https://git-scm.com/docs/gitignore)-Spezifikation mit vier unterschiedlichen Mustertypen; für Muster mit einzelnem Verzeichnissegment hängt die Abgleichtiefe auch vom Regeltyp ab, der später in diesem Abschnitt beschrieben wird:373Read- und Edit-Regeln verwenden beide die Mustersyntax von [gitignore](https://git-scm.com/docs/gitignore) mit vier unterschiedlichen Mustertypen; bei Verzeichnismustern mit einem einzelnen Segment hängt die Abgleichtiefe zusätzlich vom Regeltyp ab, wie später in diesem Abschnitt beschrieben:

373 374 

374| Muster | Bedeutung | Beispiel | Gleicht ab |375| Muster | Bedeutung | Beispiel | Gleicht ab |

375| - | - | - | - |376| - | - | - | - |

376| `//path` | Absoluter Pfad vom Dateisystem-Root | `Read(//Users/alice/secrets/**)` | `/Users/alice/secrets/**` |377| `//path` | Absoluter Pfad ab dem Dateisystem-Root | `Read(//Users/alice/secrets/**)` | `/Users/alice/secrets/**` |

377| `~/path` | Pfad vom Home-Verzeichnis | `Read(~/Documents/*.pdf)` | `/Users/alice/Documents/*.pdf` |378| `~/path` | Pfad ab dem Home-Verzeichnis | `Read(~/Documents/*.pdf)` | `/Users/alice/Documents/*.pdf` |

378| `/path` | Pfad relativ zur Einstellungsquelle | `Edit(/src/**/*.ts)` | `<primary working directory>/src/**/*.ts` in Projekteinstellungen |379| `/path` | Pfad relativ zur Einstellungsquelle | `Edit(/src/**/*.ts)` | `<primary working directory>/src/**/*.ts` in Projekteinstellungen |

379| `path` oder `./path` | Pfad relativ zum aktuellen Verzeichnis | `Read(*.env)` | `<cwd>/*.env` |380| `path` oder `./path` | Pfad relativ zum aktuellen Verzeichnis | `Read(*.env)` | `<cwd>/*.env` |

380 381 

381<Warning>382<Warning>

382 Ein Muster wie `/Users/alice/file` ist kein absoluter Pfad. Der einzelne führende Schrägstrich verankert sich an der Einstellungsquelle, nicht am Dateisystem-Root. Verwenden Sie `//Users/alice/file` für absolute Pfade.383 Ein Muster wie `/Users/alice/file` ist kein absoluter Pfad. Der einzelne führende Schrägstrich verankert an der Einstellungsquelle, nicht am Dateisystem-Root. Verwenden Sie `//Users/alice/file` für absolute Pfade.

383</Warning>384</Warning>

384 385 

385Ein `/path`-Muster verankert sich an einem Verzeichnis, das der Einstellungsquelle zugeordnet ist, die es definiert, daher gleicht die gleiche Regel verschiedene Orte ab, je nachdem, wo Sie sie platzieren:386Ein `/path`-Muster verankert an einem Verzeichnis, das der Einstellungsquelle zugeordnet ist, die es definiert, daher gleicht dieselbe Regel je nachdem, wo Sie sie platzieren, unterschiedliche Orte ab:

386 387 

387| Regel definiert in | `/path` wird aufgelöst zu |388| Regel definiert in | `/path` wird aufgelöst zu |

388| :- | :- |389| :- | :- |

389| Projekteinstellungen unter `.claude/settings.json` | `<primary working directory>/path` |390| Projekteinstellungen unter `.claude/settings.json` | `<primary working directory>/path` |

390| Lokale Einstellungen unter `.claude/settings.local.json` | `<primary working directory>/path` |391| Lokale Einstellungen unter `.claude/settings.local.json` | `<primary working directory>/path` |

391| Benutzereinstellungen unter `~/.claude/settings.json` | `~/.claude/path` |392| Benutzereinstellungen unter `~/.claude/settings.json` | `~/.claude/path` |

392| Eine Datei, die mit `--settings <file>` übergeben wird | `<directory of file>/path` |393| Eine mit `--settings <file>` übergebene Datei | `<directory of file>/path` |

393| CLI-Flags oder Sitzungsregeln | `<primary working directory>/path` |394| CLI-Flags oder Sitzungsregeln | `<primary working directory>/path` |

394 395 

395Eine Regel, die Sie über `/permissions` hinzufügen, folgt der Zeile für die Einstellungsdatei, in der Sie sie speichern.396Eine Regel, die Sie über `/permissions` hinzufügen, folgt der Zeile für die Einstellungsdatei, in der Sie sie speichern.

396 397 

397Lokale Einstellungsregeln verankern sich am [primären Arbeitsverzeichnis](#working-directories) der Sitzung, nicht am Repository-Root, wo Claude Code [die Datei speichert](#permission-system) in v2.1.211 und später. In einer Sitzung, die am Repository-Root gestartet wird, sind die beiden Verzeichnisse gleich; in einer [Worktree](/docs/de/worktrees)-Sitzung gleicht eine gemeinsame Regel wie `Edit(/src/**)` das eigene `src/`-Verzeichnis dieser Worktree.398Regeln in lokalen Einstellungen verankern ab v2.1.211 am [primären Arbeitsverzeichnis](#working-directories) der Sitzung, nicht am Repository-Root, wo Claude Code [die Datei speichert](#permission-system). In einer Sitzung, die im Repository-Root gestartet wurde, sind beide Verzeichnisse identisch; in einer [Worktree](/docs/de/worktrees)-Sitzung gleicht eine gemeinsam genutzte Regel wie `Edit(/src/**)` das eigene `src/`-Verzeichnis dieses Worktrees ab.

398 399 

399Eine Deny-Regel wie `Read(/secrets/**)` in Benutzereinstellungen blockiert `~/.claude/secrets/**`, nicht ein `secrets`-Verzeichnis in Ihrem Projekt. Um eine Regel in Benutzereinstellungen zu schreiben, die sich in jedem Projekt anwendet, verwenden Sie stattdessen einen `//` absoluten Pfad oder einen `~/` Home-relativen Pfad.400Eine deny-Regel wie `Read(/secrets/**)` in Benutzereinstellungen blockiert `~/.claude/secrets/**`, nicht ein `secrets`-Verzeichnis in Ihrem Projekt. Um in Benutzereinstellungen eine Regel zu schreiben, die in jedem Projekt gilt, verwenden Sie stattdessen einen absoluten `//`-Pfad oder einen `~/`-Pfad relativ zum Home-Verzeichnis.

400 401 

401Unter Windows werden Pfade vor dem Abgleich in POSIX-Form normalisiert. `C:\Users\alice` wird zu `/c/Users/alice`, verwenden Sie also `//c/**/.env`, um `.env`-Dateien überall auf diesem Laufwerk abzugleichen. Um über alle Laufwerke hinweg abzugleichen, verwenden Sie `//**/.env`.402Unter Windows werden Pfade vor dem Abgleich in POSIX-Form normalisiert. `C:\Users\alice` wird zu `/c/Users/alice`, verwenden Sie also `//c/**/.env`, um `.env`-Dateien überall auf diesem Laufwerk abzugleichen. Um über alle Laufwerke hinweg abzugleichen, verwenden Sie `//**/.env`.

402 403 

403Beispiele:404Beispiele:

404 405 

405* `Edit(/docs/**)`: Bearbeitungen in `<primary working directory>/docs/`, nicht `/docs/` oder `<primary working directory>/.claude/docs/`406* `Edit(/docs/**)`: Bearbeitungen in `<primary working directory>/docs/`, nicht in `/docs/` oder `<primary working directory>/.claude/docs/`

406* `Read(~/.zshrc)`: liest die `.zshrc` Ihres Home-Verzeichnisses407* `Read(~/.zshrc)`: liest die `.zshrc` in Ihrem Home-Verzeichnis

407* `Edit(//tmp/scratch.txt)`: bearbeitet den absoluten Pfad `/tmp/scratch.txt`408* `Edit(//tmp/scratch.txt)`: bearbeitet den absoluten Pfad `/tmp/scratch.txt`

408* `Read(src/**)`: als Allow-Regel liest aus `<current-directory>/src/` nur; als Deny- oder Ask-Regel gleicht ein `src`-Verzeichnis in jeder Tiefe unter dem aktuellen Verzeichnis ab409* `Read(src/**)`: als allow-Regel nur Lesezugriffe aus `<current-directory>/src/`; als deny- oder ask-Regel gleicht sie ein `src`-Verzeichnis in beliebiger Tiefe unter dem aktuellen Verzeichnis ab

409 410 

410Eine Regel gleicht nur Dateien unter ihrem Anker ab; innerhalb dieser Grenze hängt die Abgleichtiefe vom Mustermuster und, für Muster mit einzelnem Verzeichnissegment, vom Regeltyp ab, der unten beschrieben wird. Bare Dateinamen folgen gitignore-Semantik und gleichen in jeder Tiefe ab, daher sind `Read(.env)` und `Read(**/.env)` gleichwertig:411Eine Regel gleicht nur Dateien unterhalb ihres Ankers ab; innerhalb dieser Grenze hängt die Abgleichtiefe von der Musterform und bei Verzeichnismustern mit einem einzelnen Segment vom Regeltyp ab, wie unten beschrieben. Bloße Dateinamen folgen der gitignore-Semantik und gleichen in beliebiger Tiefe ab, daher sind `Read(.env)` und `Read(**/.env)` gleichwertig:

411 412 

412| Deny-Regel | Blockiert | Blockiert nicht |413| deny-Regel | Blockiert | Blockiert nicht |

413| - | - | - |414| - | - | - |

414| `Read(.env)` oder `Read(**/.env)` | jede `.env` im oder unter dem aktuellen Verzeichnis | `.env` in einem übergeordneten Verzeichnis oder einem anderen Projekt |415| `Read(.env)` oder `Read(**/.env)` | jede `.env` im oder unterhalb des aktuellen Verzeichnisses | `.env` in einem übergeordneten Verzeichnis oder einem anderen Projekt |

415| `Read(//**/.env)` | jede `.env` überall im Dateisystem | nichts; die Regel ist am Dateisystem-Root verankert |416| `Read(//**/.env)` | jede `.env` an beliebiger Stelle im Dateisystem | nichts; die Regel ist am Dateisystem-Root verankert |

416 417 

417Ein relatives Muster mit einem einzelnen Verzeichnissegment, wie `src/**`, gleicht in verschiedenen Tiefen ab, je nach Regeltyp:418Ein relatives Muster mit einem einzelnen Verzeichnissegment, wie `src/**`, gleicht je nach Regeltyp in unterschiedlichen Tiefen ab:

418 419 

419* **Allow-Regeln**: `Edit(src/**)` gleicht nur `<cwd>/src` und die Dateien darunter ab. Um einen Verzeichnisnamen in jeder Tiefe zuzulassen, schreiben Sie `Edit(**/src/**)`.420* **allow-Regeln**: `Edit(src/**)` gleicht nur `<cwd>/src` und die Dateien darunter ab. Um einen Verzeichnisnamen in beliebiger Tiefe zuzulassen, schreiben Sie `Edit(**/src/**)`.

420* **Deny- und Ask-Regeln**: `Read(secrets/**)` gleicht ein Verzeichnis namens `secrets` in jeder Tiefe unter dem aktuellen Verzeichnis ab, daher gilt die Regel auch für verschachtelte Kopien.421* **deny- und ask-Regeln**: `Read(secrets/**)` gleicht ein Verzeichnis namens `secrets` in beliebiger Tiefe unter dem aktuellen Verzeichnis ab, daher gilt die Regel auch für verschachtelte Kopien.

421 422 

422Jede andere Mustermuster gleicht in jeder Regeltyp in der gleichen Tiefe ab: `Edit(/src/**)` und `Edit(src/components/**)` gleichen nur an ihrer verankerten Position ab, während `Edit(**/src/**)` in jeder Tiefe gleicht.423Jede andere Musterform gleicht in jedem Regeltyp in derselben Tiefe ab: `Edit(/src/**)` und `Edit(src/components/**)` gleichen nur an ihrer verankerten Position ab, während `Edit(**/src/**)` in beliebiger Tiefe abgleicht.

423 424 

424Das folgende Beispiel zeigt jede Mustermuster gegen ein Projekt mit einem Top-Level-`src/`-Verzeichnis und einer verschachtelte Kopie unter `vendor/`:425Das folgende Beispiel zeigt jede Musterform anhand eines Projekts mit einem `src/`-Verzeichnis auf oberster Ebene und einer verschachtelten Kopie unter `vendor/`:

425 426 

426```text theme={null}427```text theme={null}

427<current-directory>/428<current-directory>/


435 436 

436| Regel | Gleicht `src/app.ts` ab | Gleicht `vendor/pkg/src/lib.js` ab |437| Regel | Gleicht `src/app.ts` ab | Gleicht `vendor/pkg/src/lib.js` ab |

437| :- | :- | :- |438| :- | :- | :- |

438| `Edit(src/**)` als Allow-Regel | Ja | Nein |439| `Edit(src/**)` als allow-Regel | Ja | Nein |

439| `Edit(src/**)` als Deny- oder Ask-Regel | Ja | Ja |440| `Edit(src/**)` als deny- oder ask-Regel | Ja | Ja |

440| `Edit(/src/**)` in jedem Regeltyp | Ja | Nein |441| `Edit(/src/**)` in jedem Regeltyp | Ja | Nein |

441| `Edit(**/src/**)` in jedem Regeltyp | Ja | Ja |442| `Edit(**/src/**)` in jedem Regeltyp | Ja | Ja |

442 443 

443<Note>444<Note>

444 In gitignore-Mustern gleicht `*` innerhalb eines einzelnen Pfadsegments und kann an jeder Position im Muster erscheinen, während `**` über Verzeichnisse hinweg gleicht.445 In gitignore-Mustern gleicht `*` innerhalb eines einzelnen Pfadsegments ab und kann an jeder Position im Muster stehen, während `**` über Verzeichnisse hinweg abgleicht.

445</Note>446</Note>

446 447 

447Wenn Sie einen Dateipfad mit „Ja, nicht mehr fragen" genehmigen, entweicht Claude Code gitignore-Mustzeichen in diesem Pfad, wie `[`, `]` und `*`, daher gleicht die generierte Regel nur den wörtlichen Pfad, den Sie genehmigt haben. Regeln, die Sie selbst schreiben, werden nicht entweicht. Vor v2.1.202 speicherte Claude Code den Pfad unentweicht, daher konnte eine generierte Regel für ein Verzeichnis namens `[2024-06] Reports` seinen eigenen Pfad nicht abgleichen oder unbeabsichtigte Geschwisterverzeichnisse abgleichen.448Wenn Sie einen Dateipfad mit „Ja, nicht mehr fragen" genehmigen, maskiert Claude Code gitignore-Musterzeichen in diesem Pfad, wie `[`, `]` und `*`, sodass die erzeugte Regel nur den wörtlichen Pfad abgleicht, den Sie genehmigt haben. Regeln, die Sie selbst schreiben, werden nicht maskiert. Vor v2.1.202 speicherte Claude Code den Pfad unmaskiert, sodass eine erzeugte Regel für ein Verzeichnis namens `[2024-06] Reports` ihren eigenen Pfad möglicherweise nicht abglich oder unbeabsichtigt benachbarte Verzeichnisse abglich.

448 449 

449Sie müssen Klammern in einem Pfad nicht entweichen, daher gleicht `Edit(./Finance (2024)/**)` den `Finance (2024)`-Ordner wie geschrieben ab.450Klammern in einem Pfad müssen Sie nicht maskieren, daher gleicht `Edit(./Finance (2024)/**)` den Ordner `Finance (2024)` so ab, wie er geschrieben ist.

450 451 

451Eine Deny- oder Ask-Regel, deren Pfad nicht als gitignore-Muster verwendbar ist, schützt immer noch diesen genauen Pfad. Eine Allow-Regel mit einem nicht verwendbaren Muster genehmigt nichts.452Eine deny- oder ask-Regel, deren Pfad nicht als gitignore-Muster verwendbar ist, schützt dennoch genau diesen Pfad. Eine allow-Regel mit einem nicht verwendbaren Muster genehmigt nichts.

452 453 

453Eine Deny- oder Ask-Regel, die ein Negationsmuster mit `!` beginnt, ist eine gitignore-Negation. Sie schneidet die Pfade, die sie abgleicht, aus den `path` oder `./path` Regeln aus, die davor aufgelistet sind. In einer Einstellungsdatei's `deny`-Liste blockiert `Read(*.env)` gefolgt von `Read(!sample.env)` jede Datei, deren Name mit `.env` endet, in jeder Tiefe, außer Dateien namens `sample.env`. Eine `!`-Regel, die zuerst aufgelistet ist, schneidet nichts aus.454Ein deny- oder ask-Muster, das mit `!` beginnt, ist eine gitignore-Negation. Es nimmt die Pfade, die es abgleicht, aus den davor aufgeführten `path`- oder `./path`-Regeln aus. In der `deny`-Liste einer Einstellungsdatei blockiert `Read(*.env)` gefolgt von `Read(!sample.env)` jede Datei in beliebiger Tiefe, deren Name auf `.env` endet, außer Dateien namens `sample.env`. Eine `!`-Regel, die zuerst aufgeführt ist, nimmt nichts aus.

454 455 

455Die Ausschneidung erreicht nur Regeln aus der gleichen Quelle. Ein `Read(!.env)` in Projekteinstellungen oder in `--disallowedTools` hebt ein `Read(./.env)` Deny aus verwalteten Einstellungen oder einer anderen Einstellungsdatei nicht auf.456Die Ausnahme wirkt nur auf Regeln aus derselben Quelle. Ein `Read(!.env)` in Projekteinstellungen oder in `--disallowedTools` hebt eine `Read(./.env)`-deny-Regel aus verwalteten Einstellungen oder einer anderen Einstellungsdatei nicht auf.

456 457 

457Zwei Grenzen verengen, was ein `!`-Muster ausschneiden kann:458Zwei Einschränkungen begrenzen, was ein `!`-Muster ausnehmen kann:

458 459 

459* Claude Code liest ein `!`-Muster relativ zum aktuellen Verzeichnis, auch wenn `/`, `~/` oder `//` dem `!` folgt, daher kann das Muster eine Regel, die mit einem dieser Präfixe verankert ist, nicht erreichen. `Read(!~/notes/public/**)` schneidet nichts aus `Read(~/notes/**)` aus.460* Claude Code liest ein `!`-Muster relativ zum aktuellen Verzeichnis, auch wenn `/`, `~/` oder `//` auf das `!` folgt, daher kann das Muster keine Regel erreichen, die mit einem dieser Präfixe verankert ist. `Read(!~/notes/public/**)` nimmt nichts aus `Read(~/notes/**)` aus.

460* Ein Ausschnitt kann eine Datei innerhalb eines Verzeichnisses, das eine Regel als Ganzes blockiert, nicht wieder öffnen. Mit `Read(secrets/**)` und `Read(!secrets/public/**)` blockiert Claude Code immer noch `secrets/public` zusammen mit dem Rest von `secrets`.461* Eine Ausnahme kann keine Datei innerhalb eines Verzeichnisses wieder freigeben, das eine Regel als Ganzes blockiert. Mit `Read(secrets/**)` und `Read(!secrets/public/**)` blockiert Claude Code `secrets/public` weiterhin zusammen mit dem Rest von `secrets`.

461 462 

462<h4 id="symlinks">463<h4 id="symlinks">

463 Symlinks464 Symlinks

464</h4>465</h4>

465 466 

466Wenn ein Dateipfad, den Claude anfordert, durch einen Symlink führt, deckt die Berechtigungsprüfung zwei Pfade ab: den, den Claude anforderte, und die Datei, auf die er verweist. Dies gilt für symbolische Links auf macOS, Linux und Windows sowie für Verzeichnis-Junctions auf Windows.467Wenn ein Dateipfad, den Claude anfordert, über einen Symlink führt, umfasst die Berechtigungsprüfung zwei Pfade: den von Claude angeforderten und die Datei, zu der er aufgelöst wird. Dies gilt für symbolische Links unter macOS, Linux und Windows sowie für Verzeichnis-Junctions unter Windows.

467 468 

468<h5 id="how-rules-match-a-symlinked-path">469<h5 id="how-rules-match-a-symlinked-path">

469 Wie Regeln einen symverlinkten Pfad abgleichen470 Wie Regeln einen Pfad mit Symlink abgleichen

470</h5>471</h5>

471 472 

472Allow- und Deny-Regeln behandeln den angeforderten Pfad und die Datei, auf die er verweist, unterschiedlich:473allow- und deny-Regeln behandeln den angeforderten Pfad und die Datei, zu der er aufgelöst wird, unterschiedlich:

473 474 

474* **Allow-Regeln**: gelten nur, wenn sowohl der angeforderte Pfad als auch die Datei, auf die er verweist, übereinstimmen. Ein Lesevorgang durch einen Symlink innerhalb eines zulässigen Verzeichnisses, der außerhalb davon verweist, gleicht die Regel nicht ab.475* **allow-Regeln**: gelten nur, wenn sowohl der angeforderte Pfad als auch die Datei, zu der er aufgelöst wird, übereinstimmen. Ein Lesezugriff über einen Symlink innerhalb eines zulässigen Verzeichnisses, der nach außerhalb davon zeigt, gleicht die Regel nicht ab.

475* **Deny-Regeln**: gelten, wenn entweder der angeforderte Pfad oder die Datei, auf die er verweist, übereinstimmt. Ein Symlink, der auf eine verweigerte Datei verweist, ist selbst verweigert. Zum Beispiel mit `Read(./project/**)` zulässig und `Read(~/.ssh/**)` verweigert, wird ein Symlink bei `./project/key`, der auf `~/.ssh/id_rsa` verweist, blockiert: Das Ziel schlägt die Allow-Regel fehl und passt zur Deny-Regel.476* **deny-Regeln**: gelten, wenn entweder der angeforderte Pfad oder die Datei, zu der er aufgelöst wird, übereinstimmt. Ein Symlink, der auf eine verweigerte Datei zeigt, ist selbst verweigert. Wenn beispielsweise `Read(./project/**)` erlaubt und `Read(~/.ssh/**)` verweigert ist, wird ein Symlink unter `./project/key`, der auf `~/.ssh/id_rsa` zeigt, blockiert: Das Ziel erfüllt die allow-Regel nicht und gleicht die deny-Regel ab.

476 477 

477Auf macOS und Linux gilt eine Deny- oder Ask-Regel, die durch ein symverlinktes Verzeichnis mit einem `//`, `~/` oder `/` Muster geschrieben wurde, auch am echten Ort des Verzeichnisses. Zum Beispiel auf macOS, wo `/etc` zu `/private/etc` aufgelöst wird, blockiert `Read(//etc/**)` auch `/private/etc/hosts`. Vor v2.1.268 galt eine Deny- oder Ask-Regel, die durch ein symverlinktes Verzeichnis geschrieben wurde, nicht für einen Pfad, der durch seinen echten Ort gegeben wurde.478Unter macOS und Linux gilt eine deny- oder ask-Regel, die über ein per Symlink verknüpftes Verzeichnis mit einem `//`-, `~/`- oder `/`-Muster geschrieben wurde, auch am tatsächlichen Ort des Verzeichnisses. Unter macOS beispielsweise, wo `/etc` zu `/private/etc` aufgelöst wird, blockiert `Read(//etc/**)` auch `/private/etc/hosts`. Vor v2.1.268 galt eine deny- oder ask-Regel, die über ein per Symlink verknüpftes Verzeichnis geschrieben wurde, nicht für einen Pfad, der über dessen tatsächlichen Ort angegeben wurde.

478 479 

479Grep und Glob suchen das Verzeichnis, auf das das `path`-Argument aufgelöst wird. Claude Code wendet `Read` Deny-Regeln auf dieses Verzeichnis an.480Grep und Glob durchsuchen das Verzeichnis, zu dem das `path`-Argument aufgelöst wird. Claude Code wendet `Read`-deny-Regeln auf dieses Verzeichnis an.

480 481 

481<h5 id="writes-through-a-symlink">482<h5 id="writes-through-a-symlink">

482 Schreibvorgänge durch einen Symlink483 Schreibvorgänge über einen Symlink

483</h5>484</h5>

484 485 

485Wenn der Pfad, den Claude zum Bearbeiten oder Schreiben anfordert, selbst ein Symlink ist, [weigern sich die Edit- und Write-Werkzeuge, den Schreibvorgang durchzuführen, und leiten Claude zum Link-Ziel](/docs/de/errors#refusing-after-a-symlink-changed).486Wenn der Pfad, den Claude bearbeiten oder schreiben möchte, selbst ein Symlink ist, [verweigern die Edit- und Write-Tools den Schreibvorgang und verweisen Claude auf das Ziel des Links](/docs/de/errors#refusing-after-a-symlink-changed).

486 487 

487Ein Schreibvorgang kann immer noch durch einen Symlink führen, wenn ein Verzeichnis auf dem Weg zur Datei ein Symlink ist, oder wenn ein Bash- oder PowerShell-Befehl den Schreibvorgang durchführt. Für diese Schreibvorgänge hängt das Ergebnis davon ab, wo die Datei, auf die der Schreibvorgang verweist, relativ zu Ihren [Arbeitsverzeichnissen](#working-directories) und den [geschützten Pfaden](/docs/de/permission-modes#protected-paths) sitzt:488Ein Schreibvorgang kann dennoch über einen Symlink erfolgen, wenn ein Verzeichnis auf dem Weg zur Datei ein Symlink ist oder wenn ein Bash- oder PowerShell-Befehl das Schreiben übernimmt. Bei diesen Schreibvorgängen hängt das Ergebnis davon ab, wo die Datei, zu der der Schreibvorgang aufgelöst wird, relativ zu Ihren [Arbeitsverzeichnissen](#working-directories) und den [geschützten Pfaden](/docs/de/permission-modes#protected-paths) liegt:

488 489 

489* **Verweist außerhalb der Arbeitsverzeichnisse**: Wenn der angeforderte Pfad innerhalb Ihrer Arbeitsverzeichnisse liegt und die Datei, auf die er verweist, nicht, wird der Schreibvorgang nicht automatisch genehmigt im [`acceptEdits`-Modus](/docs/de/permission-modes#auto-approve-file-edits-with-acceptedits-mode). Im [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) werden Sie aufgefordert, es sei denn, eine Allow-Regel genehmigt den Schreibvorgang, anstatt dass der Klassifizierer entscheidet. Die Aufforderung benennt den Pfad, auf den der Schreibvorgang verweist.490* **Auflösung außerhalb der Arbeitsverzeichnisse**: Wenn der angeforderte Pfad innerhalb Ihrer Arbeitsverzeichnisse liegt und die Datei, zu der er aufgelöst wird, nicht, wird der Schreibvorgang im [`acceptEdits`-Modus](/docs/de/permission-modes#auto-approve-file-edits-with-acceptedits-mode) nicht automatisch genehmigt. Im [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) werden Sie, sofern keine allow-Regel den Schreibvorgang genehmigt, um Bestätigung gebeten, anstatt dass der Klassifikator entscheidet. Die Abfrage nennt den Pfad, zu dem der Schreibvorgang aufgelöst wird.

490* **Verweist auf einen geschützten Pfad, den der angeforderte Pfad nicht benennt**: Die [Tabelle geschützter Pfade](/docs/de/permission-modes#protected-paths) gibt das Ergebnis für jeden Berechtigungsmodus an, außer dass, wo die Tabelle den Schreibvorgang zum Klassifizierer leitet, dieser Schreibvorgang Sie stattdessen auffordert.491* **Auflösung zu einem geschützten Pfad, den der angeforderte Pfad nicht nennt**: Die [Tabelle der geschützten Pfade](/docs/de/permission-modes#protected-paths) gibt das Ergebnis für jeden Berechtigungsmodus an, mit der Ausnahme, dass dort, wo die Tabelle den Schreibvorgang an den Klassifikator weiterleitet, stattdessen bei Ihnen nachgefragt wird.

491 492 

492<h5 id="paths-that-can’t-be-resolved-or-that-change">493<h5 id="paths-that-can’t-be-resolved-or-that-change">

493 Pfade, die nicht aufgelöst werden können oder die sich ändern494 Pfade, die nicht aufgelöst werden können oder die sich ändern

494</h5>495</h5>

495 496 

496Wenn Claude Code nicht bestimmen kann, wohin ein Pfad auf der Festplatte führt, zum Beispiel weil Symlinks darauf eine Schleife bilden, [weigern sich die Read-, Edit- und Write-Werkzeuge, den Vorgang durchzuführen](/docs/de/errors#refusing-after-a-symlink-changed).497Wenn Claude Code nicht bestimmen kann, wohin ein Pfad auf dem Datenträger führt, zum Beispiel weil Symlinks darin eine Schleife bilden, [verweigern die Read-, Edit- und Write-Tools den Vorgang](/docs/de/errors#refusing-after-a-symlink-changed).

497 498 

498Wenn ein Werkzeug dann die genehmigte Datei öffnet, [bestätigt Claude Code, dass der Pfad immer noch zum Ort aufgelöst wird, den die Berechtigungsprüfung genehmigt hat](/docs/de/errors#refusing-after-a-symlink-changed).499Wenn ein Tool anschließend die genehmigte Datei öffnet, [bestätigt es, dass der Pfad weiterhin zu dem Ort aufgelöst wird, den die Berechtigungsprüfung genehmigt hat](/docs/de/errors#refusing-after-a-symlink-changed).

499 500 

500<h3 id="webfetch">501<h3 id="webfetch">

501 WebFetch502 WebFetch

502</h3>503</h3>

503 504 

504WebFetch-Regeln verwenden ein `domain:`-Präfix und gleichen gegen den Hostnamen der angeforderten URL ab. Der Abgleich ist case-insensitiv, unterstützt `*`-Platzhalter und entfernt einen nachgestellten `.` sowohl aus der Regel als auch aus dem Hostnamen, daher werden `example.com.` und `example.com` gleich behandelt.505WebFetch-Regeln verwenden ein `domain:`-Präfix und gleichen den Hostnamen der angeforderten URL ab. Beim Abgleich wird die Groß-/Kleinschreibung nicht beachtet, `*`-Wildcards werden unterstützt, und ein nachgestellter `.` wird sowohl aus der Regel als auch aus dem Hostnamen entfernt, sodass `example.com.` und `example.com` gleich behandelt werden.

505 506 

506* `WebFetch(domain:example.com)` gleicht Anfragen an `example.com` ab507* `WebFetch(domain:example.com)` gleicht Anfragen an `example.com` ab

507* `WebFetch(domain:*.example.com)` gleicht jede Subdomain in jeder Tiefe ab, wie `api.example.com` oder `a.b.example.com`, aber nicht `example.com` selbst508* `WebFetch(domain:*.example.com)` gleicht jede Subdomain in beliebiger Tiefe ab, wie `api.example.com` oder `a.b.example.com`, aber nicht `example.com` selbst

508* `WebFetch(domain:*)` gleicht jede Domain ab. Es ist nicht das gleiche wie eine bare `WebFetch`-Regel; siehe [Jeden Abruf zulassen oder verweigern](#allow-or-deny-every-fetch)509* `WebFetch(domain:*)` gleicht jede Domain ab. Es ist nicht dasselbe wie eine bloße `WebFetch`-Regel; siehe [Jeden Abruf zulassen oder verweigern](#allow-or-deny-every-fetch)

509 510 

510An jeder Position außer einem führenden `*.` oder einem bloßen `*` gleicht der Platzhalter nur den Text zwischen zwei Punkten. `WebFetch(domain:example.*)` gleicht `example.org` ab, wobei `*` zu `org` wird, aber nicht `example.evil.com`, wobei `*` zu `evil.com` werden müsste und einen Punkt überschreiten würde. Dies verhindert, dass ein nachgestellter Platzhalter Domänen abgleicht, die ein Angreifer registrieren könnte.511An jeder Position außer einem führenden `*.` oder einem bloßen `*` gleicht die Wildcard nur den Text zwischen zwei Punkten ab. `WebFetch(domain:example.*)` gleicht `example.org` ab, wobei `*` zu `org` wird, aber nicht `example.evil.com`, wobei `*` zu `evil.com` werden und einen Punkt überschreiten müsste. So wird verhindert, dass eine nachgestellte Wildcard Domains abgleicht, die ein Angreifer registrieren könnte.

511 512 

512Platzhalter in `WebFetch`-Regeln erfordern Claude Code v2.1.172 oder später, um Abrufe abzugleichen.513Wildcards in `WebFetch`-Regeln erfordern Claude Code v2.1.172 oder höher, um Abrufe abzugleichen.

513 514 

514<h4 id="allow-or-deny-every-fetch">515<h4 id="allow-or-deny-every-fetch">

515 Jeden Abruf zulassen oder verweigern516 Jeden Abruf zulassen oder verweigern

516</h4>517</h4>

517 518 

518Eine bare `WebFetch`-Regel ist der Werkzeugname ohne `domain:`-Teil, wie `"deny": ["WebFetch"]`. Sowohl sie als auch `WebFetch(domain:*)` decken jede URL ab, aber Claude Code wendet sie unterschiedlich an, und nur die `domain:`-Form fügt ihre Domain auch zur [zulässigen oder verweigerten Domain-Liste](/docs/de/sandboxing#network-isolation) der Sandbox hinzu. Dieser Abschnitt listet die Wildcard-Formen auf, die die Sandbox ehrt, und die Version, die bare `*` hinzugefügt hat.519Eine bloße `WebFetch`-Regel ist der Tool-Name ohne `domain:`-Teil, wie `"deny": ["WebFetch"]`. Sowohl sie als auch `WebFetch(domain:*)` decken jede URL ab, aber Claude Code wendet sie unterschiedlich an, und nur die `domain:`-Form fügt ihre Domain zusätzlich zur [Liste erlaubter oder verweigerter Domains](/docs/de/sandboxing#network-isolation) der Sandbox hinzu. Dieser Abschnitt listet die Wildcard-Formen auf, die die Sandbox berücksichtigt, sowie die Version, mit der das bloße `*` hinzukam.

519 520 

520Jede Zeile zeigt, was eine Regel in der `allow`-Liste und in der `deny`-Liste tut:521Jede Zeile zeigt, was eine Regel in der `allow`-Liste und in der `deny`-Liste bewirkt:

521 522 

522| Regel | In `allow` | In `deny` |523| Regel | In `allow` | In `deny` |

523| :- | :- | :- |524| :- | :- | :- |

524| `WebFetch` | Claude ruft ab, ohne Sie aufzufordern. Ändert nicht, welche Hosts sandboxed-Befehle erreichen können. | Claude Code entfernt das `WebFetch`-Werkzeug, daher kann Claude überhaupt nicht abrufen. Ändert nicht, welche Hosts sandboxed-Befehle erreichen können. |525| `WebFetch` | Claude ruft ohne Nachfrage ab. Ändert nicht, welche Hosts in der Sandbox ausgeführte Befehle erreichen können. | Claude Code entfernt das `WebFetch`-Tool, sodass Claude überhaupt nicht abrufen kann. Ändert nicht, welche Hosts in der Sandbox ausgeführte Befehle erreichen können. |

525| `WebFetch(domain:*)` | Claude ruft ab, ohne Sie aufzufordern, und sandboxed-Befehle können jeden Host erreichen. | Claude Code behält das Werkzeug und weigert jeden Abruf, und sandboxed-Befehle können keinen Host erreichen. |526| `WebFetch(domain:*)` | Claude ruft ohne Nachfrage ab, und in der Sandbox ausgeführte Befehle können jeden Host erreichen. | Claude Code behält das Tool bei und verweigert jeden Abruf, und in der Sandbox ausgeführte Befehle können keinen Host erreichen. |

526 527 

527Die beiden Formen unterscheiden sich auch bei Lesevorgängen von [Artefakten](/docs/de/artifacts), den Seiten, die das Artifact-Werkzeug auf claude.ai veröffentlicht. Eine bare `WebFetch` Deny- oder Ask-Regel gilt nicht für diese Lesevorgänge. Eine `domain:`-Regel, die `claude.ai` oder den `*.claudeusercontent.com` Content-Host abdeckt, wie `WebFetch(domain:claude.ai)` oder `WebFetch(domain:*)`, verweigert jeden Lesevorgang oder fordert davor auf. Eine [`Artifact`-Regel](/docs/de/artifacts#disable-artifacts) tut das gleiche.528Die beiden Formen unterscheiden sich auch beim Lesen von [Artefakten](/docs/de/artifacts), den Seiten, die das Artifact-Tool auf claude.ai veröffentlicht. Eine bloße `WebFetch`-deny- oder -ask-Regel gilt nicht für diese Lesevorgänge. Eine `domain:`-Regel, die `claude.ai` oder den Content-Host `*.claudeusercontent.com` abdeckt, wie `WebFetch(domain:claude.ai)` oder `WebFetch(domain:*)`, verweigert jeden Lesevorgang oder fragt vorher nach. Eine [`Artifact`-Regel](/docs/de/artifacts#disable-artifacts) bewirkt dasselbe.

528 529 

529Wenn eine Regel einen Lesevorgang blockiert, benennt die Ablehnung die Regel. Vor v2.1.268 blockierte eine bare `WebFetch` Deny-Regel jeden Artefakt-Lesevorgang, und eine bare Ask-Regel forderte vor jedem auf.530Wenn eine Regel einen Lesevorgang blockiert, nennt die Ablehnung die Regel. Vor v2.1.268 blockierte eine bloße `WebFetch`-deny-Regel jeden Artefakt-Lesevorgang, und eine bloße ask-Regel fragte vor jedem nach.

530 531 

531Um Claude frei abrufen zu lassen, während die Sandbox-Allowlist wie sie ist bleibt, verwenden Sie die bare Form. Diese `settings.json` tut das:532Um Claude frei abrufen zu lassen und die Allowlist der Sandbox unverändert zu lassen, verwenden Sie die bloße Form. Diese `settings.json` bewirkt das:

532 533 

533```json theme={null}534```json theme={null}

534{535{


538}539}

539```540```

540 541 

541Wenn Sie Claude bitten, eine Seite abzurufen, ruft es ab, ohne Sie aufzufordern. Wenn Sie es bitten, einen [sandboxed](/docs/de/sandboxing) `curl` gegen einen Host außerhalb der Sandbox-Allowlist auszuführen, fordert Claude Code Sie immer noch für diesen Host auf, da die bare Regel den Host nicht zur Allowlist hinzugefügt hat.542Wenn Sie Claude bitten, eine Seite abzurufen, ruft es sie ohne Nachfrage ab. Wenn Sie es bitten, ein [in der Sandbox ausgeführtes](/docs/de/sandboxing) `curl` gegen einen Host außerhalb der Allowlist der Sandbox auszuführen, fragt Claude Code für diesen Host weiterhin bei Ihnen nach, da die bloße Regel den Host nicht zur Allowlist hinzugefügt hat.

542 543 

543Im [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) benennt Claude stattdessen den Host in den [pro-Befehl zulässigen Domänen](/docs/de/sandboxing#per-command-allowed-domains-in-auto-mode) des Befehls für den Klassifizierer zur Überprüfung.544Im [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) nennt Claude den Host stattdessen in den [pro Befehl zulässigen Domains](/docs/de/sandboxing#per-command-allowed-domains-in-auto-mode) des Befehls, damit der Klassifikator ihn prüft.

544 545 

545<h3 id="mcp">546<h3 id="mcp">

546 MCP547 MCP

547</h3>548</h3>

548 549 

549MCP-Regeln verwenden den Servernamen wie in Claude Code konfiguriert, optional gefolgt vom Namen eines Werkzeugs von diesem Server.550MCP-Regeln verwenden den Servernamen, wie er in Claude Code konfiguriert ist, optional gefolgt vom Namen eines Tools dieses Servers.

550 551 

551* `mcp__puppeteer` gleicht jedes Werkzeug ab, das vom `puppeteer`-Server bereitgestellt wird552* `mcp__puppeteer` gleicht jedes Tool ab, das der `puppeteer`-Server bereitstellt

552* `mcp__puppeteer__*` verwendet Wildcard-Syntax und gleicht auch alle Werkzeuge vom `puppeteer`-Server ab553* `mcp__puppeteer__*` verwendet Wildcard-Syntax und gleicht ebenfalls alle Tools des `puppeteer`-Servers ab

553* `mcp__puppeteer__puppeteer_navigate` gleicht das `puppeteer_navigate`-Werkzeug ab, das vom `puppeteer`-Server bereitgestellt wird554* `mcp__puppeteer__puppeteer_navigate` gleicht das Tool `puppeteer_navigate` ab, das der `puppeteer`-Server bereitstellt

554 555 

555Wenn Ihre Organisation ein [claude.ai-Connector](/docs/de/mcp#organization-controls-on-connector-tools)-Werkzeug auf `ask` gesetzt hat und diese Einstellung Claude Code in Ihrer Sitzung erreicht, nehmen Allow-Regeln für dieses Werkzeug keine Wirkung: Claude Code fordert bei jedem Aufruf auf, auch in `auto`- und `bypassPermissions`-Modi. Im `dontAsk`-Modus, der niemals auffordert, verweigert Claude Code den Aufruf stattdessen. Werkzeuge von Connectoren, die Claude Code selbst abruft, erscheinen als `mcp__claude_ai_<server>__<tool>`.556Wenn Ihre Organisation ein Tool eines [claude.ai-Konnektors](/docs/de/mcp#organization-controls-on-connector-tools) auf `ask` gesetzt hat und diese Einstellung in Ihrer Sitzung bei Claude Code ankommt, werden allow-Regeln für dieses Tool nicht wirksam: Claude Code fragt bei jedem Aufruf nach, auch in den Modi `auto` und `bypassPermissions`. Im `dontAsk`-Modus, der nie nachfragt, verweigert Claude Code den Aufruf stattdessen. Tools von Konnektoren, die Claude Code selbst abruft, erscheinen als `mcp__claude_ai_<server>__<tool>`.

556 557 

557In einer [Cowork](https://claude.com/docs/cowork/overview)-Sitzung in der Claude Desktop-App führt Claude Shell-Befehle über Cowork's `mcp__workspace__bash`-Werkzeug anstelle des integrierten `Bash`-Werkzeugs aus, und Cowork stellt ebenso `mcp__workspace__web_fetch` für Web-Abrufe bereit. Claude Code wendet auch Deny-Regeln an, die das ganze `Bash`- oder `WebFetch`-Werkzeug benennen, auf diese Cowork-Werkzeuge an, daher stoppt eine verwaltete `Bash`-Deny-Regel Claude daran, Shell-Befehle in Cowork auszuführen. Wenn Claude Code einen solchen Aufruf blockiert, benennt die Nachricht das Cowork-Werkzeug: `Permission to use mcp__workspace__bash has been denied.` Allow-Regeln tragen nicht über: Claude Code wendet nie eine `Bash`-Allow-Regel auf `mcp__workspace__bash` an.558In einer [Cowork](https://claude.com/docs/cowork/overview)-Sitzung in der Claude Desktop-App führt Claude Shell-Befehle über das Cowork-Tool `mcp__workspace__bash` statt über das integrierte `Bash`-Tool aus, und Cowork stellt ebenso `mcp__workspace__web_fetch` für Webabrufe bereit. Claude Code wendet deny-Regeln, die das gesamte `Bash`- oder `WebFetch`-Tool benennen, auch auf diese Cowork-Tools an, sodass eine verwaltete `Bash`-deny-Regel Claude daran hindert, in Cowork Shell-Befehle auszuführen. Wenn Claude Code einen solchen Aufruf blockiert, nennt die Meldung das Cowork-Tool: `Permission to use mcp__workspace__bash has been denied.` allow-Regeln werden nicht übertragen: Claude Code wendet eine `Bash`-allow-Regel nie auf `mcp__workspace__bash` an.

558 559 

559<h3 id="agent-subagents">560<h3 id="agent-subagents">

560 Agent (Subagents)561 Agent (Subagenten)

561</h3>562</h3>

562 563 

563Verwenden Sie `Agent(AgentName)`-Regeln, um zu steuern, welche [Subagents](/docs/de/sub-agents) Claude verwenden kann:564Verwenden Sie `Agent(AgentName)`-Regeln, um zu steuern, welche [Subagenten](/docs/de/sub-agents) Claude verwenden kann:

564 565 

565* `Agent(Explore)` gleicht den Explore-Subagent ab566* `Agent(Explore)` gleicht den Explore-Subagenten ab

566* `Agent(Plan)` gleicht den Plan-Subagent ab567* `Agent(Plan)` gleicht den Plan-Subagenten ab

567* `Agent(my-custom-agent)` gleicht einen benutzerdefinierten Subagent namens `my-custom-agent` ab568* `Agent(my-custom-agent)` gleicht einen benutzerdefinierten Subagenten namens `my-custom-agent` ab

568 569 

569Fügen Sie diese Regeln zum `deny`-Array in Ihren Einstellungen hinzu oder verwenden Sie das `--disallowedTools`-CLI-Flag, um bestimmte Agenten zu deaktivieren. Um den Explore-Agenten zu deaktivieren:570Fügen Sie diese Regeln dem `deny`-Array in Ihren Einstellungen hinzu oder verwenden Sie das CLI-Flag `--disallowedTools`, um bestimmte Agenten zu deaktivieren. So deaktivieren Sie den Explore-Agenten:

570 571 

571```json theme={null}572```json theme={null}

572{573{


580 Cd581 Cd

581</h3>582</h3>

582 583 

583`Cd`-Regeln steuern, in welche Verzeichnisse der [`/cd`-Befehl](/docs/de/commands) die Sitzung verschieben kann. `Cd` ist kein vom Modell aufzurufendes Werkzeug: Claude kann es nicht aufrufen, und die Regeln gelten nur, wenn Sie `/cd` selbst ausführen.584`Cd`-Regeln steuern, in welche Verzeichnisse der [`/cd`-Befehl](/docs/de/commands) die Sitzung wechseln kann. `Cd` ist kein vom Modell aufrufbares Tool: Claude kann es nicht aufrufen, und die Regeln gelten nur, wenn Sie `/cd` selbst ausführen.

584 585 

585Eine bare `Cd`-Deny-Regel deaktiviert `/cd` vollständig. Eine `Cd(<path-pattern>)`-Deny-Regel blockiert übereinstimmende Ziele. Deny-Regeln überprüfen jede Schreibweise des Ziels, einschließlich jedes Symlink-Hops, durch den es sich auflöst, daher blockiert eine Regel, die für einen Pfad geschrieben wurde, auch Ziele, die sich darin auflösen.586Eine bloße `Cd`-deny-Regel deaktiviert `/cd` vollständig. Eine `Cd(<path-pattern>)`-deny-Regel blockiert übereinstimmende Ziele. deny-Regeln prüfen jede Schreibweise des Ziels, einschließlich jedes Symlink-Schritts, über den es aufgelöst wird, sodass eine für einen Pfad geschriebene Regel auch Ziele blockiert, die zu diesem Pfad aufgelöst werden.

586 587 

587Das Hinzufügen einer `Cd`-Allow-Regel schaltet `/cd` in den Allowlist-Modus: Das aufgelöste Zielverzeichnis muss einer Ihrer Allow-Regeln entsprechen, oder `/cd` weigert sich. Ohne konfigurierte `Cd`-Regeln behält `/cd` sein Standardverhalten bei und fordert Sie auf, einem unbekannten Verzeichnis zu vertrauen.588Das Hinzufügen einer beliebigen `Cd`-allow-Regel schaltet `/cd` in den Allowlist-Modus: Das aufgelöste Zielverzeichnis muss einer Ihrer allow-Regeln entsprechen, sonst verweigert `/cd` den Wechsel. Ohne konfigurierte `Cd`-Regeln behält `/cd` sein Standardverhalten bei und fragt Sie, ob Sie einem unbekannten Verzeichnis vertrauen.

588 589 

589Pfadmuster teilen die `//`, `~/` und `/` Anker von [Read- und Edit-Regeln](#read-and-edit), aber der Abgleich ist am gesamten Verzeichnispfad verankert, nicht im gitignore-Stil. `*` gleicht genau ein Pfadsegment ab und `**` gleicht über Segmente hinweg ab. Ein nachgestelltes `/**` gleicht auch seinen benannten Root ab.590Pfadmuster verwenden dieselben Anker `//`, `~/` und `/` wie [Read- und Edit-Regeln](#read-and-edit), aber der Abgleich ist am gesamten Verzeichnispfad verankert und nicht im gitignore-Stil. `*` gleicht genau ein Pfadsegment ab, und `**` gleicht über Segmente hinweg ab. Ein nachgestelltes `/**` gleicht auch das benannte Stammverzeichnis selbst ab.

590 591 

591| Regel | Gleicht ab | Gleicht nicht ab |592| Regel | Gleicht ab | Gleicht nicht ab |

592| - | - | - |593| - | - | - |

593| `Cd(~/code/*)` | `~/code/app` | `~/code/app/src`, `~/code` |594| `Cd(~/code/*)` | `~/code/app` | `~/code/app/src`, `~/code` |

594| `Cd(~/code/**)` | `~/code` und jedes Verzeichnis darunter | Verzeichnisse außerhalb von `~/code` |595| `Cd(~/code/**)` | `~/code` und jedes Verzeichnis darunter | Verzeichnisse außerhalb von `~/code` |

595| `Cd(**/node_modules)` | jedes `node_modules`-Verzeichnis in jeder Tiefe unter dem aktuellen Verzeichnis | `node_modules/pkg` |596| `Cd(**/node_modules)` | jedes `node_modules`-Verzeichnis in beliebiger Tiefe unter dem aktuellen Verzeichnis | `node_modules/pkg` |

596 597 

597<h2 id="extend-permissions-with-hooks">598<h2 id="extend-permissions-with-hooks">

598 Berechtigungen mit Hooks erweitern599 Berechtigungen mit Hooks erweitern

Details

571* Das Tag existiert bereits571* Das Tag existiert bereits

572* Der Arbeitsbaum ist schmutzig572* Der Arbeitsbaum ist schmutzig

573 573 

574<h3 id="plugin-test">

575 plugin test

576</h3>

577 

578Führen Sie die Tests für einen [Mod](/docs/de/plugins/mods/overview) aus, ein Plugin, dessen Code Event-Handler registriert. Der Befehl benötigt keine Sitzung, keine Anmeldung und kein Netzwerk. Wie Sie einen Test schreiben, erfahren Sie unter [Einen Mod testen](/docs/de/plugins/mods/test).

579 

580```bash theme={null}

581claude plugin test [directory]

582```

583 

584Das `[directory]` ist das Verzeichnis des Mods, standardmäßig das aktuelle Verzeichnis. Der Befehl führt jede Datei darunter aus, deren Name auf `.test.ts` oder `.test.tsx` endet, und beendet sich mit Status 1, wenn ein Test fehlschlägt.

585 

586Führen Sie die Tests für einen Mod in `./first-mod` aus:

587 

588```bash theme={null}

589claude plugin test ./first-mod

590```

591 

574<h3 id="plugin-validate">592<h3 id="plugin-validate">

575 plugin validate593 plugin validate

576</h3>594</h3>


804 822 

805Ein `<plugin>` ist ein Plugin-`name` oder `name@marketplace`.823Ein `<plugin>` ist ein Plugin-`name` oder `name@marketplace`.

806 824 

807Die Tabelle unten listet jede Sitzungsform auf. Die Shell-Unterbefehle `init`, `update`, `details`, `prune`, `eval` und `eval init` haben keine Sitzungsform.825Die Tabelle unten listet jede Sitzungsform auf. Die Shell-Unterbefehle `init`, `update`, `details`, `prune`, `eval`, `eval init` und `test` haben keine Sitzungsform.

808 826 

809| Befehl | Aliase | Was er tut |827| Befehl | Aliase | Was er tut |

810| :- | :- | :- |828| :- | :- | :- |

Details

435 435 

436<PluginExplorer>436<PluginExplorer>

437 <Piece id="manifest">437 <Piece id="manifest">

438 Das [Manifest](/docs/de/plugins/manifest-reference) ist die `plugin.json`-Datei im `.claude-plugin/`-Verzeichnis eines Plugins. Sie enthält die Metadaten des Plugins und die `userConfig`-Werte, die Claude Code den Benutzer fragt. Claude Code lädt ein Plugin ohne eines, aber [Anthropics Verzeichnis](/docs/de/plugins/publish#submit-to-anthropics-directory) erfordert es. In der Datei ist nur `name` erforderlich. In diesem Fall ist `description` der Text, den Benutzer für das Plugin in `/plugin` sehen, und `version` hält Benutzer auf dieser Version, bis Sie sie ändern:438 Das [Manifest](/docs/de/plugins/manifest-reference) ist die `plugin.json`-Datei im `.claude-plugin/`-Verzeichnis eines Plugins. Sie enthält die Metadaten des Plugins und die `userConfig`-Werte, die Claude Code den Benutzer fragt. Claude Code lädt ein Plugin auch ohne eines. In der Datei ist nur `name` erforderlich. In diesem Fall ist `description` der Text, den Benutzer für das Plugin in `/plugin` sehen, und `version` hält Benutzer auf dieser Version, bis Sie sie ändern:

439 439 

440 ```json theme={null}440 ```json theme={null}

441 {441 {

Details

130* `source`: wo Claude Code das Plugin abruft. Schreiben Sie einen relativen Pfad-String für ein Plugin im Marketplace-Verzeichnis, wie in [der Anleitung](#create-a-marketplace), oder ein Quellobjekt für ein Plugin außerhalb davon. Siehe [Wählen Sie eine Plugin-Quelle](#choose-a-plugin-source).130* `source`: wo Claude Code das Plugin abruft. Schreiben Sie einen relativen Pfad-String für ein Plugin im Marketplace-Verzeichnis, wie in [der Anleitung](#create-a-marketplace), oder ein Quellobjekt für ein Plugin außerhalb davon. Siehe [Wählen Sie eine Plugin-Quelle](#choose-a-plugin-source).

131* `description`: die Zeile, die Personen neben dem Plugin sehen, wenn sie Ihren Marketplace in `/plugin` durchsuchen.131* `description`: die Zeile, die Personen neben dem Plugin sehen, wenn sie Ihren Marketplace in `/plugin` durchsuchen.

132 132 

133Für die vollständige Feldliste siehe [Plugin-Einträge](/docs/de/plugins/marketplace-reference#plugin-entries).133Für die vollständige Feldliste siehe [Plugin-Einträge](/docs/de/plugins/marketplace-reference#plugin-entries). Dort werden auch die [`plugin.json`](/docs/de/plugins/manifest-reference)-Felder behandelt, die ein Eintrag setzen kann, und wann sie gelten.

134 

135Ein Eintrag kann auch jedes [`plugin.json`](/docs/de/plugins/manifest-reference)-Feld setzen. Für den Fall, dass die `plugin.json`-Felder eines Eintrags für ein Plugin gelten, das sein eigenes `plugin.json` hat, siehe [Eintrag und plugin.json](/docs/de/plugins/marketplace-reference#entry-and-plugin-json).

136 134 

137<h2 id="rules-for-plugin-entries">135<h2 id="rules-for-plugin-entries">

138 Regeln für Plugin-Einträge136 Regeln für Plugin-Einträge

plugins/loading.md +20 −14

Details

244 Wenn die Abhängigkeitsinstallation läuft244 Wenn die Abhängigkeitsinstallation läuft

245</h4>245</h4>

246 246 

247Claude Code führt die Installation im kopierten Versionsverzeichnis jedes Mal aus, wenn es eines erstellt:247Claude Code installiert die Abhängigkeiten jedes Mal in das kopierte Versionsverzeichnis, wenn es eines erstellt:

248 248 

249* Wenn Sie ein Plugin installieren249* Wenn Sie ein Plugin installieren

250* Wenn Claude Code ein Plugin auf eine neue Version aktualisiert250* Wenn Claude Code ein Plugin auf eine neue Version aktualisiert


252 252 

253Für ein Relative-Pfad-Plugin, das [an Ort und Stelle geladen wird](#in-place-and-copied-plugins) von einem lokalen Verzeichnis-Marktplatz, installiert Claude Code die Abhängigkeiten nicht in das Quellverzeichnis. Installieren Sie sie dort selbst, oder von einem Hook in [`${CLAUDE_PLUGIN_DATA}`](/docs/de/plugins/components#path-variables-and-persistent-data).253Für ein Relative-Pfad-Plugin, das [an Ort und Stelle geladen wird](#in-place-and-copied-plugins) von einem lokalen Verzeichnis-Marktplatz, installiert Claude Code die Abhängigkeiten nicht in das Quellverzeichnis. Installieren Sie sie dort selbst, oder von einem Hook in [`${CLAUDE_PLUGIN_DATA}`](/docs/de/plugins/components#path-variables-and-persistent-data).

254 254 

255Die Installation läuft nur, wenn das Plugin-Root-Verzeichnis sowohl eine `package.json` als auch eine unterstützte Lockdatei enthält. Die Lockdatei entscheidet, welchen Befehl Claude Code ausführt:255Die Installation läuft nur, wenn das Plugin-Root-Verzeichnis sowohl eine `package.json` als auch eine unterstützte Lockdatei enthält.

256 256 

257| Lockdatei | Befehl |257Die Lockdatei entscheidet, welchen Paketmanager Claude Code ausführt:

258 

259| Lockdatei | Paketmanager |

258| :- | :- |260| :- | :- |

259| `bun.lock` oder `bun.lockb` | `bun install --frozen-lockfile --ignore-scripts` |261| `bun.lock` | Bun |

260| `npm-shrinkwrap.json` oder `package-lock.json` | `npm ci --ignore-scripts` |262| `npm-shrinkwrap.json` oder `package-lock.json` | npm |

261 263 

262Wenn ein Plugin mehr als eine dieser Lockdateien enthält, verwendet Claude Code die erste Übereinstimmung, Überprüfung in Reihenfolge: `bun.lock`, `bun.lockb`, `npm-shrinkwrap.json`, `package-lock.json`.264Wenn ein Plugin mehr als eine dieser Lockdateien enthält, verwendet Claude Code die erste Übereinstimmung, Überprüfung in Reihenfolge: `bun.lock`, `npm-shrinkwrap.json`, `package-lock.json`.

263 265 

264Claude Code überspringt die Installation für Yarn- und pnpm-Lockdateien und für eine `bunfig.toml` neben der Bun-Lockdatei:266Claude Code überspringt die Installation in diesen Lockdatei-Fällen:

265 267 

266* Wenn Ihr Plugin nur eine `yarn.lock` oder `pnpm-lock.yaml` hat, ersetzen Sie sie durch eine npm-Lockdatei268* **`bun.lockb`**: Die binäre Lockdatei von Bun kann nicht überprüft werden. Liefern Sie stattdessen eine Text-`bun.lock` oder eine npm-Lockdatei mit

267* Wenn eine `bunfig.toml` im gleichen Verzeichnis wie die Bun-Lockdatei ist, entfernen Sie die `bunfig.toml`, oder ersetzen Sie die Bun-Lockdatei durch eine npm-Lockdatei269* **`yarn.lock` oder `pnpm-lock.yaml`**: Ersetzen Sie sie durch eine npm-Lockdatei

270* **Eine Lockdatei in einem Format, das Claude Code nicht liest**: Eine npm-Lockdatei benötigt eine `lockfileVersion` von `2` oder `3`, die npm 7 oder höher schreibt, und eine `bun.lock` benötigt eine `lockfileVersion` von höchstens `2`

268 271 

269Fügen Sie eine npm-Lockdatei ein, um die meisten Benutzer zu erreichen. Claude Code führt den Paketmanager der übereinstimmenden Lockdatei aus dem PATH des Benutzers aus und versucht nicht den anderen Lockdatei-Paketmanager, wenn dieser fehlt.272Fügen Sie eine npm-Lockdatei ein, um die meisten Benutzer zu erreichen. Claude Code führt den Paketmanager der übereinstimmenden Lockdatei aus dem PATH des Benutzers aus und versucht nicht den anderen Lockdatei-Paketmanager, wenn dieser fehlt.

270 273 


276 279 

277Claude Code beschränkt diese Abhängigkeitsinstallation so, dass kein Code aus dem Plugin oder seinen Paketen während der Installation ausgeführt wird, und begrenzt, wie lange sie laufen kann:280Claude Code beschränkt diese Abhängigkeitsinstallation so, dass kein Code aus dem Plugin oder seinen Paketen während der Installation ausgeführt wird, und begrenzt, wie lange sie laufen kann:

278 281 

279* **Gefrorene Auflösung**: Bun und npm installieren genau das, was die Lockdatei anheftet, und schlagen fehl, anstatt Versionen erneut aufzulösen, wenn `package.json` und die Lockdatei nicht übereinstimmen282* **Nur Registry-Pakete**: Jede Abhängigkeit muss ein Registry-Paket sein, das in der Lockdatei auf eine exakte Version festgelegt ist. Ein Plugin mit einer Git-, GitHub-, Ordner-, Workspace- oder verlinkten Abhängigkeit erhält keine Installation.

283* **`https`-Downloads**: Ein Download-Link in der Lockdatei muss `https` verwenden, es sei denn, er zeigt auf die eigene Standard-npm-Registry des installierenden Benutzers.

284* **Ein separater Installationsordner**: Der Paketmanager läuft in einem eigenen Ordner, der nur eine Kopie der überprüften Abhängigkeitsliste enthält, sodass npm und Bun die `.npmrc`, `.env` oder `bunfig.toml` des Plugins nicht lesen. Wenn die Installation erfolgreich ist, verschiebt Claude Code das resultierende `node_modules` in das Plugin.

285* **Gefrorene Auflösung**: Die Installation verwendet genau die Versionen, die die Lockdatei festlegt, und Claude Code überspringt sie, wenn `package.json` und die Lockdatei nicht dieselben Abhängigkeiten auflisten

280* **Keine Lifecycle-Skripte**: `--ignore-scripts` hält `preinstall`-, `install`- und `postinstall`-Skripte davon ab, zu laufen, daher laden Abhängigkeiten, die native Module in diesen Skripten erstellen, herunter, werden aber während dieser Installation nicht kompiliert286* **Keine Lifecycle-Skripte**: `--ignore-scripts` hält `preinstall`-, `install`- und `postinstall`-Skripte davon ab, zu laufen, daher laden Abhängigkeiten, die native Module in diesen Skripten erstellen, herunter, werden aber während dieser Installation nicht kompiliert

287* **Keine Überschreibungen oder Patches**: Ein Plugin, dessen `package.json` npm-`overrides` setzt, erhält keine Installation aus einer npm-Lockdatei, und ein Plugin, das Bun-`patchedDependencies` setzt, erhält keine Installation aus `bun.lock`

281* **60-Sekunden-Timeout**: Claude Code stoppt eine Installation, die länger läuft, und behandelt sie als fehlgeschlagen288* **60-Sekunden-Timeout**: Claude Code stoppt eine Installation, die länger läuft, und behandelt sie als fehlgeschlagen

282 289 

283Claude Code ruft ein npm-Quellen-Plugin vor dieser Abhängigkeitsinstallation ab, und keines der Installationsskripte des Pakets selbst läuft während des Abrufs. Siehe [npm-Plugin-Quelle](/docs/de/plugins/marketplace-reference#npm-plugin-source).290Claude Code ruft ein npm-Quellen-Plugin vor dieser Abhängigkeitsinstallation ab, und keines der Installationsskripte des Pakets selbst läuft während des Abrufs. Siehe [npm-Plugin-Quelle](/docs/de/plugins/marketplace-reference#npm-plugin-source).


290 Wenn die Abhängigkeitsinstallation fehlschlägt oder übersprungen wird297 Wenn die Abhängigkeitsinstallation fehlschlägt oder übersprungen wird

291</h4>298</h4>

292 299 

293Eine fehlgeschlagene oder übersprungene Installation blockiert das Plugin nie, und jeder Fall hinterlässt ein anderes Zeichen:300Eine fehlgeschlagene oder übersprungene Installation blockiert das Plugin nie, das dann ohne die Abhängigkeiten geladen wird. Jeder Fall hinterlässt ein anderes Zeichen:

294 301 

295* Eine fehlgeschlagene Installation oder eine, die übersprungen wird, weil eine Yarn- oder pnpm-Lockdatei oder eine `bunfig.toml` vorhanden ist, erscheint als Warnung in der `claude --debug`-Ausgabe302* Eine fehlgeschlagene Installation oder eine, die wegen ihrer Lockdatei oder einer der [Grenzen der Installation](#limits-on-the-dependency-install) übersprungen wird, erscheint in der `claude --debug`-Ausgabe als Zeile `Plugin dependency install warning`, die den Grund angibt

296* Ein Plugin mit einer `package.json` und keiner Lockdatei wird ohne Logeintrag übersprungen303* Ein Plugin mit einer `package.json` und keiner Lockdatei wird ohne Logeintrag übersprungen

297* Eine Timeout-Installation kann einen teilweisen `node_modules`-Baum in der zwischengespeicherten Kopie hinterlassen

298 304 

299Wenn die automatische Installation eine Abhängigkeit nicht bereitstellen kann, installieren Sie sie von einem Hook in das [persistente Datenverzeichnis](/docs/de/plugins/components#path-variables-and-persistent-data). Dies umfasst Pakete, die ihre Lifecycle-Skripte zum Erstellen benötigen, Python-Abhängigkeiten und Plugins, die mit Yarn oder pnpm gesperrt sind.305Wenn die automatische Installation eine Abhängigkeit nicht bereitstellen kann, installieren Sie sie von einem Hook in das [persistente Datenverzeichnis](/docs/de/plugins/components#path-variables-and-persistent-data). Dies umfasst Pakete, die ihre Lifecycle-Skripte zum Bauen benötigen, Python-Abhängigkeiten, Plugins, die mit Yarn oder pnpm gesperrt sind, und Abhängigkeiten, die keine Registry-Pakete sind, wie Git-Abhängigkeiten.

300 306 

301<h2 id="versions-and-updates">307<h2 id="versions-and-updates">

302 Versionen und Updates308 Versionen und Updates

Details

142| `license` | String | SPDX-Identifier wie `MIT` oder `Apache-2.0` |142| `license` | String | SPDX-Identifier wie `MIT` oder `Apache-2.0` |

143| `keywords` | Array von Strings | Discovery-Tags |143| `keywords` | Array von Strings | Discovery-Tags |

144| [`metadata`](#metadata) | Object | Freiformobjekt für Ihre eigenen Daten. Claude Code liest es nicht |144| [`metadata`](#metadata) | Object | Freiformobjekt für Ihre eigenen Daten. Claude Code liest es nicht |

145| [`icon`](#directory-listing-fields) | String | Symbol für den Eintrag des Plugins in Anthropics Verzeichnis. Claude Code liest es nicht |

146| [`documentationUrl`](#directory-listing-fields) | String | Dokumentationslink für den Eintrag des Plugins in Anthropics Verzeichnis. Claude Code liest es nicht |

147| [`supportUrl`](#directory-listing-fields) | String | Support-Link für den Eintrag des Plugins in Anthropics Verzeichnis. Claude Code liest es nicht |

148| [`privacyPolicyUrl`](#directory-listing-fields) | String | Link zur Datenschutzrichtlinie für den Eintrag des Plugins in Anthropics Verzeichnis. Claude Code liest es nicht |

149| [`termsOfServiceUrl`](#directory-listing-fields) | String | Link zu den Nutzungsbedingungen für den Eintrag des Plugins in Anthropics Verzeichnis. Claude Code liest es nicht |

145| [`defaultEnabled`](#defaultenabled) | Boolean | Ob das Plugin aktiviert startet, wenn der Benutzer es nicht gesetzt hat. Standard ist `true` |150| [`defaultEnabled`](#defaultenabled) | Boolean | Ob das Plugin aktiviert startet, wenn der Benutzer es nicht gesetzt hat. Standard ist `true` |

146| [`dependencies`](#dependencies) | Array von Strings oder Objekten | Plugins, die aktiviert sein müssen, damit dieses funktioniert |151| [`dependencies`](#dependencies) | Array von Strings oder Objekten | Plugins, die aktiviert sein müssen, damit dieses funktioniert |

147| [`settings`](#settings) | Object | Einstellungen, die Claude Code anwendet, während das Plugin aktiviert ist. Nur `agent` und `subagentStatusLine` wirken sich aus |152| [`settings`](#settings) | Object | Einstellungen, die Claude Code anwendet, während das Plugin aktiviert ist. Nur `agent` und `subagentStatusLine` wirken sich aus |


202 207 

203Ein Freiformobjekt für Ihre eigenen Daten, z. B. Katalog- oder Berechtigungsfelder. Claude Code liest es nicht. Erfordert Claude Code v2.1.222 oder später.208Ein Freiformobjekt für Ihre eigenen Daten, z. B. Katalog- oder Berechtigungsfelder. Claude Code liest es nicht. Erfordert Claude Code v2.1.222 oder später.

204 209 

210<h3 id="directory-listing-fields">

211 Felder für den Verzeichniseintrag

212</h3>

213 

214Anthropics Verzeichnis liest die Felder `icon`, `documentationUrl`, `supportUrl`, `privacyPolicyUrl` und `termsOfServiceUrl` aus `plugin.json` für den Eintrag Ihres Plugins, wenn Sie [das Plugin einreichen](/docs/de/plugins/publish#submit-to-anthropics-directory). Claude Code ignoriert sie beim Laden. Setzen Sie sie nur in `plugin.json`. In einem [Marketplace-Eintrag](#marketplace-entries-and-the-manifest) meldet `claude plugin validate` jedes davon als unbekanntes Feld.

215 

216Setzen Sie `icon` auf den Pfad einer Bilddatei innerhalb des Plugins, z. B. `./logo.png`, und jedes der vier URL-Felder auf eine `https://`-URL.

217 

218`claude plugin validate` akzeptiert diese Felder ab Claude Code v2.1.281 ohne Warnung. Frühere Versionen geben für jedes davon eine `Unknown field`-Warnung aus, sodass ein Lauf mit `--strict` auf diesen Versionen fehlschlägt.

219 

205<h3 id="defaultenabled">220<h3 id="defaultenabled">

206 `defaultEnabled`221 `defaultEnabled`

207</h3>222</h3>


693 Marketplace-Einträge und das Manifest708 Marketplace-Einträge und das Manifest

694</h2>709</h2>

695 710 

696Ein [Marketplace-Eintrag](/docs/de/plugins/marketplace-reference) akzeptiert jedes Feld auf dieser Seite neben [seinen eigenen Feldern](/docs/de/plugins/marketplace-reference#plugin-entries), einschließlich `strict`.711Ein [Marketplace-Eintrag](/docs/de/plugins/marketplace-reference) akzeptiert [seine eigenen Felder](/docs/de/plugins/marketplace-reference#plugin-entries), einschließlich `strict`, sowie jedes Feld auf dieser Seite mit Ausnahme der [Felder für die Verzeichnisauflistung](#directory-listing-fields).

697 712 

698Das `strict`-Feld entscheidet, ob der Eintrag Komponenten zu einem Plugin hinzufügen darf, das sein eigenes `plugin.json` hat. Es ist standardmäßig `true`.713Das `strict`-Feld entscheidet, ob der Eintrag Komponenten zu einem Plugin hinzufügen darf, das sein eigenes `plugin.json` hat. Es ist standardmäßig `true`.

699 714 

Details

81 81 

82Jedes Objekt im Top-Level-Array `plugins` von `marketplace.json` benennt ein Plugin und gibt an, woher es abgerufen werden soll. `name` und `source` sind erforderlich.82Jedes Objekt im Top-Level-Array `plugins` von `marketplace.json` benennt ein Plugin und gibt an, woher es abgerufen werden soll. `name` und `source` sind erforderlich.

83 83 

84Ein Eintrag akzeptiert auch jedes [`plugin.json`-Feld](/docs/de/plugins/manifest-reference), wie `description`, `version`, `author`, `commands` und `hooks`. Für den Fall, dass diese Felder gelten, siehe [Wie ein Eintrag mit plugin.json kombiniert wird](#entry-and-plugin-json).84Neben den [Feldern für Verzeichniseinträge](/docs/de/plugins/manifest-reference#directory-listing-fields) akzeptiert ein Eintrag auch jedes [`plugin.json`-Feld](/docs/de/plugins/manifest-reference), wie `description`, `version`, `author`, `commands` und `hooks`. Für den Fall, dass diese Felder gelten, siehe [Wie ein Eintrag mit plugin.json kombiniert wird](#entry-and-plugin-json).

85 85 

86Die Tabelle listet die eigenen Felder des Eintrags und die Manifest-Felder auf, deren Bedeutung sich in einem Eintrag ändert.86Die Tabelle listet die eigenen Felder des Eintrags und die Manifest-Felder auf, deren Bedeutung sich in einem Eintrag ändert.

87 87 


100| `displayName` | string | Benutzerfreundlicher Name, der in der Benutzeroberfläche angezeigt wird. Wenn weder der Eintrag noch die `plugin.json` des Plugins einen setzt, sehen Benutzer den `name` des Plugins |100| `displayName` | string | Benutzerfreundlicher Name, der in der Benutzeroberfläche angezeigt wird. Wenn weder der Eintrag noch die `plugin.json` des Plugins einen setzt, sehen Benutzer den `name` des Plugins |

101| `metadata` | object | Freies Objekt für Ihre eigenen Felder. Claude Code liest es nicht. Erfordert Claude Code v2.1.222 oder später |101| `metadata` | object | Freies Objekt für Ihre eigenen Felder. Claude Code liest es nicht. Erfordert Claude Code v2.1.222 oder später |

102| `headers` | object | HTTP-Header, die Claude Code sendet, wenn es diesen Eintrag [Archiv](#archive-plugin-source) herunterlädt. Ein hier gesetzter Header ersetzt einen Header mit demselben Namen aus der [`headers`](#fields-by-type) der Marketplace-Quelle. Erfordert Claude Code v2.1.238 oder später |102| `headers` | object | HTTP-Header, die Claude Code sendet, wenn es diesen Eintrag [Archiv](#archive-plugin-source) herunterlädt. Ein hier gesetzter Header ersetzt einen Header mit demselben Namen aus der [`headers`](#fields-by-type) der Marketplace-Quelle. Erfordert Claude Code v2.1.238 oder später |

103| `headersHelper` | string | Befehl, der die Archive-Download-Header dieses Eintrags als ein JSON-Objekt ausgibt, für eine Anmeldedaten, die abläuft. Der Eintrag muss auch [`"strict": false`](#strict-mode) setzen. Erfordert Claude Code v2.1.238 oder später. Siehe [Authentifizieren Sie Archive-Downloads](/docs/de/plugins/host-marketplace#authenticate-archive-downloads) |103| `headersHelper` | string | Befehl, der die Archive-Download-Header dieses Eintrags als ein JSON-Objekt ausgibt, für Anmeldedaten, die ablaufen. Der Eintrag muss auch [`"strict": false`](#strict-mode) setzen. Erfordert Claude Code v2.1.238 oder später. Siehe [Authentifizieren Sie Archive-Downloads](/docs/de/plugins/host-marketplace#authenticate-archive-downloads) |

104 104 

105<h3 id="entry-and-plugin-json">105<h3 id="entry-and-plugin-json">

106 Wie ein Eintrag mit plugin.json kombiniert wird106 Wie ein Eintrag mit plugin.json kombiniert wird


108 108 

109Die Felder des Eintrags gelten unterschiedlich für ein abgerufenes Plugin, das seine eigene `.claude-plugin/plugin.json` hat, und für eines, das nicht:109Die Felder des Eintrags gelten unterschiedlich für ein abgerufenes Plugin, das seine eigene `.claude-plugin/plugin.json` hat, und für eines, das nicht:

110 110 

111* **Keine `plugin.json`**: Der Eintrag ist das Manifest unabhängig von `strict`. Jedes Manifest-Feld im Eintrag gilt, einschließlich [`mcpServers`, `lspServers`, `userConfig` und `channels`](/docs/de/plugins/manifest-reference).111* **Keine `plugin.json`**: Der Eintrag ist das Manifest unabhängig von `strict`. Jedes Manifest-Feld, das der Eintrag akzeptiert, gilt, einschließlich [`mcpServers`, `lspServers`, `userConfig` und `channels`](/docs/de/plugins/manifest-reference).

112* **`plugin.json` vorhanden**: `plugin.json` ist das Manifest. Der [Strict-Modus](#strict-mode) entscheidet, ob die sechs Komponentenfelder des Eintrags, `commands`, `agents`, `skills`, `hooks`, `outputStyles` und `themes`, damit kombiniert oder als Konflikt abgelehnt werden. Eintrag `mcpServers`, `lspServers`, `userConfig` und `channels` gelten nicht. Deklarieren Sie sie in `plugin.json`.112* **`plugin.json` vorhanden**: `plugin.json` ist das Manifest. Der [Strict-Modus](#strict-mode) entscheidet, ob die sechs Komponentenfelder des Eintrags, `commands`, `agents`, `skills`, `hooks`, `outputStyles` und `themes`, damit kombiniert oder als Konflikt abgelehnt werden. Eintrag `mcpServers`, `lspServers`, `userConfig` und `channels` gelten nicht. Deklarieren Sie sie in `plugin.json`.

113 113 

114<h4 id="hooks-in-an-entry">114<h4 id="hooks-in-an-entry">


155| `github` | `repo`, `ref`, `sha` | GitHub-Repository in `owner/repo`-Form |155| `github` | `repo`, `ref`, `sha` | GitHub-Repository in `owner/repo`-Form |

156| `url` | `url`, `ref`, `sha` | Jedes Git-Repository nach URL |156| `url` | `url`, `ref`, `sha` | Jedes Git-Repository nach URL |

157| `git-subdir` | `url`, `path`, `ref`, `sha` | Ein Unterverzeichnis eines Git-Repository, abgerufen mit einem spärlichen partiellen Klon |157| `git-subdir` | `url`, `path`, `ref`, `sha` | Ein Unterverzeichnis eines Git-Repository, abgerufen mit einem spärlichen partiellen Klon |

158| `npm` | `package`, `version`, `registry` | npm-Paket, abgerufen mit Ihrem npm-Client und entpackt ohne Ausführung von Installationsskripten |158| `npm` | `package`, `version`, `registry` | npm-Registry-Paket oder Tarball-Link, abgerufen mit Ihrem npm-Client und entpackt ohne Ausführung von Installationsskripten |

159| `archive` | `url`, `sha256` | Zip-Archiv über HTTPS. Erfordert Claude Code v2.1.224 oder später |159| `archive` | `url`, `sha256` | Zip-Archiv über HTTPS. Erfordert Claude Code v2.1.224 oder später |

160| `command` | `command`, `timeout`, `mode` | Verzeichnis, das von einem Befehl gedruckt wird, den Claude Code auf der Maschine des Benutzers ausführt. Erfordert Claude Code v2.1.229 oder später |160| `command` | `command`, `timeout`, `mode` | Verzeichnis, das von einem Befehl gedruckt wird, den Claude Code auf der Maschine des Benutzers ausführt. Erfordert Claude Code v2.1.229 oder später |

161 161 


258 258 

259Eine `npm`-Quelle nimmt diese Felder:259Eine `npm`-Quelle nimmt diese Felder:

260 260 

261* `package`: ein Paketname oder ein scoped Name wie `@your-org/formatter`261* `package`: ein Registry-Paketname wie `@your-org/formatter`, ein Name mit angehängter Version wie `@your-org/formatter@2.0.0` oder ein `https`-Link zur Tarball-Datei des Pakets

262* `version`: eine Version oder ein Bereich262* `version`: eine Version, ein Semver-Bereich oder ein Dist-Tag, verwendet, wenn `package` ein Paketname ohne angehängte Version ist. Lassen Sie es weg, um `latest` abzurufen

263* `registry`: eine Registry-URL für ein Paket, das nicht in der Standard-Registry ist263* `registry`: eine Registry-URL für ein Paket, das nicht in der Standard-Registry ist

264 264 

265Claude Code ruft das Paket mit Ihrem npm-Client ab. Die Installationsskripte des Pakets, wie `preinstall` oder `postinstall`, werden nie ausgeführt, und seine Abhängigkeiten werden während des Abrufs nicht installiert. Wenn das Paket eine unterstützte Lockdatei neben seiner `package.json` hat, installiert Claude Code diese [Node.js-Paketabhängigkeiten](/docs/de/plugins/loading#node-js-package-dependencies) in einem separaten Schritt, auch mit deaktivierten Skripten.265Claude Code ruft das Paket mit Ihrem npm-Client ab. Die Installationsskripte des Pakets, wie `preinstall` oder `postinstall`, werden nie ausgeführt, und seine Abhängigkeiten werden während des Abrufs nicht installiert. Wenn das Paket eine unterstützte Lockdatei neben seiner `package.json` hat, installiert Claude Code diese [Node.js-Paketabhängigkeiten](/docs/de/plugins/loading#node-js-package-dependencies) in einem separaten Schritt, auch mit deaktivierten Skripten.

266 266 

267Claude Code prüft den `package`-Wert, bevor etwas abgerufen wird. Ein abgelehnter Wert lässt die Installation mit einer Meldung fehlschlagen, die den Wert und den Grund nennt. Zu den abgelehnten Werten gehören:

268 

269* **Eine Git-Adresse, ein Ordner- oder `file:`-Pfad oder ein `npm:`-Alias**: Verwenden Sie eine [`github`-, `url`- oder `git-subdir`-Quelle](#plugin-sources) für ein Git-Repository, einen relativen Pfad für einen Ordner im Marketplace und den eigenen Namen des Pakets für einen Alias

270* **Ein Tarball-Link auf github.com, gist.github.com, gitlab.com, bitbucket.org oder git.sr.ht**: wird auch dann abgelehnt, wenn der Link ein GitHub-Release-Download ist, es sei denn, es handelt sich um einen GitLab-npm-Registry-Link unter `gitlab.com/api/v4/`

271* **Ein Tarball-Link über `http`**: wird abgelehnt, es sei denn, er verweist auf die eigene Standard-npm-Registry des installierenden Benutzers

272 

273Die `registry`-URL muss `https` verwenden, es sei denn, es handelt sich um die eigene Standard-npm-Registry des installierenden Benutzers. Bei jeder anderen `http`-Registry schlägt die Installation fehl, bevor npm sie kontaktiert.

274 

267```json theme={null}275```json theme={null}

268{276{

269 "name": "formatter",277 "name": "formatter",

Details

167 167 

168Ein Benutzer, dessen Mod nicht geladen wurde, findet den Grund in seinem Debug-Protokoll. [Verweigerungsmeldungen](/docs/de/plugins/mods/troubleshoot#refusal-messages) listet die Zeilen für `allowManagedHooksOnly` und `disableAllHooks` auf, und [Meldungen vom integrierten Guard](/docs/de/plugins/mods/troubleshoot#messages-from-the-built-in-guard) hat die Zeile für `allowManagedModsOnly`.168Ein Benutzer, dessen Mod nicht geladen wurde, findet den Grund in seinem Debug-Protokoll. [Verweigerungsmeldungen](/docs/de/plugins/mods/troubleshoot#refusal-messages) listet die Zeilen für `allowManagedHooksOnly` und `disableAllHooks` auf, und [Meldungen vom integrierten Guard](/docs/de/plugins/mods/troubleshoot#messages-from-the-built-in-guard) hat die Zeile für `allowManagedModsOnly`.

169 169 

170<h3 id="allow-only-your-organization’s-mods">

171 Nur die Mods Ihrer Organisation zulassen

172</h3>

173 

174Um die Mods Ihrer Organisation auszuführen und die Mods zu blockieren, die Benutzer mitbringen, stellen Sie die Einstellungen aus der Zeile **Nur die Mods Ihrer Organisation** der [Richtlinientabelle](#choose-how-much-to-allow) sowie `disableSideloadFlags` bereit. Mit dieser vollständigen `managed-settings.json` lehnt Claude Code die eigenen Mods von Benutzern ab, sodass keiner ihrer Hooks ausgeführt wird, und Ihr Richtlinien-Mod wird vor anderen Mods ausgeführt:

175 

176```json managed-settings.json theme={null}

177{

178 "extraKnownMarketplaces": {

179 "acme-tools": {

180 "source": { "source": "directory", "path": "/opt/acme/claude-plugins" }

181 }

182 },

183 "enabledPlugins": { "acme-guard@acme-tools": true },

184 "prependPlugins": ["acme-guard@acme-tools", "sec-default@builtin"],

185 "pluginConfigs": {

186 "cc-plugin-sec-default@builtin": {

187 "options": { "allowManagedModsOnly": true }

188 }

189 },

190 "disableSideloadFlags": true

191}

192```

193 

194Jede Gruppe von Schlüsseln erfüllt eine Aufgabe:

195 

196* **`extraKnownMarketplaces`, `enabledPlugins` und `prependPlugins`**: installieren Ihren Mod so, dass er als Ihrer zählt, und führen ihn zuerst aus, mit dem Guard danach. [Installieren Sie die Mods Ihrer Organisation und legen Sie die Reihenfolge fest](#install-your-organizations-mods) behandelt das Verzeichnis, auf das diese Schlüssel verweisen.

197* **`pluginConfigs`**: setzt die Option `allowManagedModsOnly` des Guards, sodass Claude Code die eigenen Mods von Benutzern ablehnt. Ihre Einstellungs-Hooks, Statuszeilen und `/goal` funktionieren weiterhin.

198* **`disableSideloadFlags`**: siehe [`disableSideloadFlags`](/docs/de/settings-reference#disablesideloadflags) für die Flags, die es beim Start ablehnt

199 

200Um die Richtlinie auf einem Testrechner zu bestätigen, starten Sie in Ihrer Shell eine Sitzung mit `claude --debug` und lesen Sie das Debug-Log:

201 

202* **Ihr Mod**: Seine Zeile `hooks module` enthält `tier prepend`

203* **Ein Mod, den der Benutzer installiert hat**: Eine Zeile lautet `refused by cc-plugin-sec-default: mods are limited to your organization's by policy (allowManagedModsOnly)`. Eine frühere Zeile besagt, dass das Hooks-Modul dieses Mods `loaded` ist, suchen Sie also nach der Ablehnung.

204* **Ein Plugin-Verzeichnis**: `claude --plugin-dir ./any-mod` wird mit einer Meldung beendet, die mit `--plugin-dir is disabled by your organization's managed settings (disableSideloadFlags)` beginnt

205 

206Um außerdem einzuschränken, welche Marketplaces Benutzer hinzufügen können, kombinieren Sie diese Datei mit Ihren [Marketplace-Einschränkungen](/docs/de/plugins/org#restrict-what-users-can-install).

207 

208<h3 id="apply-your-plugin-controls-to-mods">

209 Wenden Sie Ihre Plugin-Steuerungen auf Mods an

210</h3>

211 

212Ein Mod ist ein Plugin, daher gelten die Möglichkeiten, mit denen Sie [Plugins für Ihre Organisation verwalten](/docs/de/plugins/org), auch für ein Plugin, das einen Mod enthält:

213 

214* **Sehen, welche Plugins in Ihrer gesamten Flotte geladen werden**: [Prüfen und überprüfen](/docs/de/plugins/org#audit-and-review)

215* **Entscheiden, wann ein von Ihnen überprüftes Plugin aktualisiert werden kann**: [Update-Richtlinie festlegen](/docs/de/plugins/org#set-update-policy)

216* **Einer Gruppe eine andere Richtlinie geben, z. B. für ein Pilotprojekt**: [Planen Sie für das, was verwaltete Einstellungen nicht durchsetzen können](/docs/de/plugins/org#plan-for-what-managed-settings-can’t-enforce)

217* **Prüfen, welche Apps und Sitzungsarten die Plugin-Schlüssel anwenden**: [Wann jede Oberfläche die Plugin-Schlüssel anwendet](/docs/de/plugins/org#when-each-surface-applies-the-plugin-keys)

218* **CI und Container einrichten**: [Container und CI vorbefüllen](/docs/de/plugins/org#seed-containers-and-ci)

219* **Mods anbieten, die Ihre Benutzer installieren dürfen**: [Einen Marketplace hosten](/docs/de/plugins/host-marketplace). Ein Mod, den Claude Code aus einer GitHub-, git-, URL- oder npm-Quelle kopiert, zählt als Mod eines Benutzers, nicht als [Mod Ihrer Organisation](#install-your-organizations-mods).

220 

170<h3 id="set-options-on-the-built-in-guard">221<h3 id="set-options-on-the-built-in-guard">

171 Setzen Sie Optionen auf dem integrierten Guard222 Setzen Sie Optionen auf dem integrierten Guard

172</h3>223</h3>

Details

190 190 

191Halten Sie das Warten in einem Mods-API-Aufruf wie `$.ui.ask`, da diese Zeit nicht gegen das [10-Sekunden-Zeitlimit](/docs/de/plugins/mods/reference#limits) des Hooks zählt. Zeit, die mit dem Warten auf ein eigenes Promise verbracht wird, zählt. Claude Code überspringt einen Hook, der das Zeitlimit überschreitet, daher würde der gehaltene Befehl ausgeführt.191Halten Sie das Warten in einem Mods-API-Aufruf wie `$.ui.ask`, da diese Zeit nicht gegen das [10-Sekunden-Zeitlimit](/docs/de/plugins/mods/reference#limits) des Hooks zählt. Zeit, die mit dem Warten auf ein eigenes Promise verbracht wird, zählt. Claude Code überspringt einen Hook, der das Zeitlimit überschreitet, daher würde der gehaltene Befehl ausgeführt.

192 192 

193<h4 id="approve-or-refuse-a-tool-call-before-the-user-is-asked">

194 Genehmigen oder lehnen Sie einen Tool-Aufruf ab, bevor der Benutzer gefragt wird

195</h4>

196 

197Um zu entscheiden, ob ein Tool-Aufruf ausgeführt werden darf, behandeln Sie [`tool.check`](/docs/de/plugins/mods/reference#tools), das Ereignis, bei dem Claude Code diese Entscheidung trifft. Es wird ausgelöst, nachdem die Berechtigungsregeln und die Settings-Hooks entschieden haben, und `next(e)` wird zu ihrer Entscheidung aufgelöst: `allow`, `ask` oder `deny`. Ihr Hook gibt diese Entscheidung oder eine andere zurück. `e.input` enthält die Argumente des Tools, z. B. `command` für Bash.

198 

199Für einen festen Befehl oder Pfad verwenden Sie eine [Berechtigungsregel](/docs/de/permissions#permission-rule-syntax) wie `Bash(npm test)`, die keinen Code erfordert. Behandeln Sie `tool.check`, wenn die Entscheidung davon abhängt, was in diesem Moment zutrifft, z. B. vom aktuellen Git-Branch oder von einem Wert, den ein anderer Hook aufgezeichnet hat.

200 

201Dieser Hook lehnt `git push` ab, solange der aktuelle Branch `main` ist:

202 

203```javascript theme={null}

204on('tool.check', { tool: 'Bash' }, async ($, e, next) => {

205 // Was die Berechtigungsregeln und Settings-Hooks entschieden haben: 'allow', 'ask' oder 'deny'

206 const decided = await next(e)

207 if (!e.input.command.includes('git push')) return decided

208 const branch = await $.process.run(['git', 'branch', '--show-current'])

209 if (branch.stdout.trim() !== 'main') return decided

210 return { decision: 'deny', reason: 'Push from a branch other than main' }

211})

212```

213 

214Auf `main` gibt der Hook `deny` zurück, selbst wenn eine Regel `git push` erlaubt. Auf einem anderen Branch und für andere Befehle erhält der Aufruf die Entscheidung, die er ohne den Mod erhalten würde.

215 

216Der Hook gleicht den Text des Befehls ab, betrachten Sie ihn daher als Erinnerung für Claude. Um Pushes auf `main` für alle zu blockieren, schützen Sie den Branch auf Ihrem Git-Host.

217 

218Ein Hook kann jede der drei Entscheidungen zurückgeben, daher kann er auch einen Aufruf genehmigen, den ein `PreToolUse`-Hook außerhalb der verwalteten Einstellungen blockiert hat. [Berechtigungen mit Hooks erweitern](/docs/de/permissions#extend-permissions-with-hooks) listet auf, welche Entscheidungen gegenüber einem Mod Bestand haben.

219 

193<h3 id="rewrite-or-add-to-a-prompt">220<h3 id="rewrite-or-add-to-a-prompt">

194 Schreiben Sie eine Eingabeaufforderung um oder fügen Sie sie hinzu221 Schreiben Sie eine Eingabeaufforderung um oder fügen Sie sie hinzu

195</h3>222</h3>


301* **`PreToolUse`-Hooks aus verwalteten Einstellungen**: werden vor dem Hook `tool.call` des ersten Mods ausgeführt, und ein Block von einem von ihnen ist endgültig, daher sieht kein Mod den Aufruf.328* **`PreToolUse`-Hooks aus verwalteten Einstellungen**: werden vor dem Hook `tool.call` des ersten Mods ausgeführt, und ein Block von einem von ihnen ist endgültig, daher sieht kein Mod den Aufruf.

302* **`PreToolUse`-Hooks aus jeder anderen Einstellungsdatei und aus `hooks/hooks.json` von Plugins**: werden nach dem letzten Aufruf von `next` eines Mods ausgeführt, als Teil von Claude Codes eigenem Verhalten. Ein Mod, der `tool.call` beantwortet, ohne `next` aufzurufen, hindert sie daran, ausgeführt zu werden, und ein Mod, der `next` aufruft, sieht ihre Entscheidung im Ergebnis, das er zurückgibt.329* **`PreToolUse`-Hooks aus jeder anderen Einstellungsdatei und aus `hooks/hooks.json` von Plugins**: werden nach dem letzten Aufruf von `next` eines Mods ausgeführt, als Teil von Claude Codes eigenem Verhalten. Ein Mod, der `tool.call` beantwortet, ohne `next` aufzurufen, hindert sie daran, ausgeführt zu werden, und ein Mod, der `next` aufruft, sieht ihre Entscheidung im Ergebnis, das er zurückgibt.

303 330 

304[`tool.check`](/docs/de/plugins/mods/reference#tools) ist das Ereignis, bei dem Claude Code entscheidet, ob ein Tool-Aufruf ausgeführt werden darf. Es wird nach diesen Hooks und den Berechtigungsregeln ausgelöst, und `next(e)` wird zu ihrer Entscheidung aufgelöst. Ein Hook auf `tool.check` kann eine andere Entscheidung zurückgeben, z. B. `{ decision: 'allow' }`, daher kann er einen Aufruf genehmigen, den ein Hook in der zweiten Gruppe blockiert hat. [Erweitern Sie Berechtigungen mit Hooks](/docs/de/permissions#extend-permissions-with-hooks) listet auf, welche Entscheidungen einen Mod überlagern.331[`tool.check`](#approve-or-refuse-a-tool-call-before-the-user-is-asked) wird ausgelöst, nachdem diese Hooks und die Berechtigungsregeln entschieden haben, daher kann ein Hook darauf einen Aufruf genehmigen, den ein Hook in der zweiten Gruppe blockiert hat.

305 332 

306<h3 id="handle-a-hook-that-fails">333<h3 id="handle-a-hook-that-fails">

307 Behandeln Sie einen Hook, der fehlschlägt334 Behandeln Sie einen Hook, der fehlschlägt

Details

407 ```407 ```

408 408 

409 ```text theme={null}409 ```text theme={null}

410 Note: Type a note and press Enter ⏎ add410 Note: Type a note and press Enter

411 ```411 ```

412 </Tab>412 </Tab>

413</Tabs>413</Tabs>

414 414 

415Diese Tabelle listet jedes Element auf:415Die [Oberflächengalerie](/docs/de/plugins/mods/gallery) enthält Beispiele und Screenshots der meisten Elemente. Diese Tabelle listet jedes Element auf:

416 416 

417| Element | Was es zeichnet | Wo |417| Element | Was es zeichnet | Wo |

418| :- | :- | :- |418| :- | :- | :- |

Details

72* **Ohne Sie zu fragen handeln**: Genehmigen Sie einen Tool-Call, bevor Sie gefragt werden72* **Ohne Sie zu fragen handeln**: Genehmigen Sie einen Tool-Call, bevor Sie gefragt werden

73* **Ihre Nutzung ausgeben**: Rufen Sie ein Modell in Ihrem Plan oder API-Schlüssel auf73* **Ihre Nutzung ausgeben**: Rufen Sie ein Modell in Ihrem Plan oder API-Schlüssel auf

74 74 

75Mods werden nicht in einer Sandbox ausgeführt. Wenn Sie [Sandboxing](/docs/de/sandboxing) aktivieren, isoliert die Sandbox die Bash-Befehle, die Claude ausführt, und ein Prozess, den ein Mod startet, läuft außerhalb davon.

76 

75Ein Mod, der Tool-Calls genehmigt, kann einen genehmigen, für den eine `ask`-Regel Sie auffordert, oder den einer Ihrer eigenen `PreToolUse`-Hooks blockiert hat. [Berechtigungen mit Hooks erweitern](/docs/de/permissions#extend-permissions-with-hooks) listet auf, was ein solcher Mod genehmigen kann, einschließlich wann er einen Anruf genehmigen kann, den eine `deny`-Regel ablehnt.77Ein Mod, der Tool-Calls genehmigt, kann einen genehmigen, für den eine `ask`-Regel Sie auffordert, oder den einer Ihrer eigenen `PreToolUse`-Hooks blockiert hat. [Berechtigungen mit Hooks erweitern](/docs/de/permissions#extend-permissions-with-hooks) listet auf, was ein solcher Mod genehmigen kann, einschließlich wann er einen Anruf genehmigen kann, den eine `deny`-Regel ablehnt.

76 78 

77Ein Mod kann einen Großteil der Claude Code-Benutzeroberfläche umgestalten, aber nicht die Berechtigungsaufforderung. Es kann nicht ändern, was eine Eingabeaufforderung Ihnen zeigt.79Ein Mod kann einen Großteil der Claude Code-Benutzeroberfläche umgestalten, aber nicht die Berechtigungsaufforderung. Es kann nicht ändern, was eine Eingabeaufforderung Ihnen zeigt.


102 104 

103Wenn Sie Claude Code über eine Organisation nutzen, kann ein Administrator auch einschränken, welche Mods geladen werden. Administratoren beginnen bei [Stop user-installed mods from loading](/docs/de/plugins/mods/admin#stop-user-installed-mods-from-loading).105Wenn Sie Claude Code über eine Organisation nutzen, kann ein Administrator auch einschränken, welche Mods geladen werden. Administratoren beginnen bei [Stop user-installed mods from loading](/docs/de/plugins/mods/admin#stop-user-installed-mods-from-loading).

104 106 

107`disableAllHooks` und das `allowManagedModsOnly` Ihrer Organisation stoppen einen Mod und lassen den Rest seines Plugins bestehen: Das Plugin bleibt installiert, und seine Skills, Befehle, Agenten und MCP-Server werden geladen. Andere Einstellungen und Flags reichen weiter. [`disableAllHooks`](/docs/de/settings-reference#disableallhooks) und [What runs under `allowManagedHooksOnly`](/docs/de/settings-reference#what-runs-under-allowmanagedhooksonly) listen auf, was jede davon mit einem Plugin und seinen Einstellungs-Hooks macht.

108 

105Um herauszufinden, ob Mods für Sie geladen werden können, siehe [Check whether mods can load](/docs/de/plugins/mods/troubleshoot#check-whether-mods-can-load).109Um herauszufinden, ob Mods für Sie geladen werden können, siehe [Check whether mods can load](/docs/de/plugins/mods/troubleshoot#check-whether-mods-can-load).

106 110 

107<Note>111<Note>

Details

56 56 

57Lesen Sie den Grund nach dem Doppelpunkt. Der Abschnitt [Ablehnungsmeldungen](#refusal-messages) listet jeden auf. Wenn das Protokoll keine solche Zeile hat, arbeiten Sie die anderen Einträge in dieser Gruppe durch.57Lesen Sie den Grund nach dem Doppelpunkt. Der Abschnitt [Ablehnungsmeldungen](#refusal-messages) listet jeden auf. Wenn das Protokoll keine solche Zeile hat, arbeiten Sie die anderen Einträge in dieser Gruppe durch.

58 58 

59Einige Einstellungen stoppen einen Mod und lassen den Rest seines Plugins weiter funktionieren. [Mods ein- oder ausschalten](/docs/de/plugins/mods/overview#turn-mods-on-or-off) nennt sie.

60 

59<h3 id="a-claude-p-run-prints-hooks-module-not-loaded">61<h3 id="a-claude-p-run-prints-hooks-module-not-loaded">

60 Ein `claude -p` Lauf gibt `hooks module not loaded` aus62 Ein `claude -p` Lauf gibt `hooks module not loaded` aus

61</h3>63</h3>

Details

37 37 

38Claude Codes [Berechtigungsregeln](/docs/de/permissions) und [Sandbox](/docs/de/sandboxing) decken die Tool-Aufrufe ab, die Claude macht, nicht den Code, den ein Plugin selbst ausführt:38Claude Codes [Berechtigungsregeln](/docs/de/permissions) und [Sandbox](/docs/de/sandboxing) decken die Tool-Aufrufe ab, die Claude macht, nicht den Code, den ein Plugin selbst ausführt:

39 39 

40* **Hooks und Server-Prozesse**: Befehls-Hooks führen Shell-Befehle mit Ihren vollständigen Benutzerberechtigungen aus. Claude Code führt Hooks und MCP-Server außerhalb der Sandbox aus.40* **Hooks und Server-Prozesse**: Befehls-Hooks führen Shell-Befehle mit Ihren vollständigen Benutzerberechtigungen aus. Claude Code führt Hooks, MCP-Server und die Prozesse, die ein [Mod](/docs/de/plugins/mods/overview#what-a-mod-can-reach) startet, außerhalb der Sandbox aus.

41* **Claudes Tool-Aufrufe**: ein Aufruf eines der MCP-Tools des Plugins und ein Bash-Befehl, der eine ausführbare Datei aus dem `bin/`-Verzeichnis des Plugins ausführt, sind Tool-Aufrufe, daher gelten Ihre Berechtigungsregeln für sie. Für das, was ein Mod mit einem Tool-Aufruf tun kann, siehe [Entscheiden Sie, ob Sie einem Mod vertrauen](/docs/de/plugins/mods/overview#decide-whether-to-trust-a-mod).41* **Claudes Tool-Aufrufe**: ein Aufruf eines der MCP-Tools des Plugins und ein Bash-Befehl, der eine ausführbare Datei aus dem `bin/`-Verzeichnis des Plugins ausführt, sind Tool-Aufrufe, daher gelten Ihre Berechtigungsregeln für sie. Für das, was ein Mod mit einem Tool-Aufruf tun kann, siehe [Entscheiden Sie, ob Sie einem Mod vertrauen](/docs/de/plugins/mods/overview#decide-whether-to-trust-a-mod).

42 42 

43Die Installation eines Plugins aktiviert es auch, es sei denn, sein Manifest oder der Marketplace-Eintrag setzt [`defaultEnabled: false`](/docs/de/plugins/install#choose-an-install-scope) und Sie haben es nicht selbst aktiviert.43Die Installation eines Plugins aktiviert es auch, es sei denn, sein Manifest oder der Marketplace-Eintrag setzt [`defaultEnabled: false`](/docs/de/plugins/install#choose-an-install-scope) und Sie haben es nicht selbst aktiviert.

Details

460* **Sie veröffentlichen das Plugin**: berechnen Sie den Digest der genauen Datei, die die URL bereitstellt, neu und aktualisieren Sie den `sha256` im Marktplatz-Eintrag. Verwenden Sie `shasum -a 256 my-plugin.zip` oder `Get-FileHash -Algorithm SHA256 my-plugin.zip` in PowerShell460* **Sie veröffentlichen das Plugin**: berechnen Sie den Digest der genauen Datei, die die URL bereitstellt, neu und aktualisieren Sie den `sha256` im Marktplatz-Eintrag. Verwenden Sie `shasum -a 256 my-plugin.zip` oder `Get-FileHash -Algorithm SHA256 my-plugin.zip` in PowerShell

461* **Sie installieren das Plugin**: führen Sie `/plugin marketplace update <name>` in einer Sitzung aus, um den Katalog zu aktualisieren, falls der Eintrag korrigiert wurde, und versuchen Sie dann die Installation erneut. Wenn die Digests nach der Aktualisierung immer noch nicht übereinstimmen, fragen Sie den Marktplatz-Besitzer, welche Datei er vor der Installation gepinnt hat461* **Sie installieren das Plugin**: führen Sie `/plugin marketplace update <name>` in einer Sitzung aus, um den Katalog zu aktualisieren, falls der Eintrag korrigiert wurde, und versuchen Sie dann die Installation erneut. Wenn die Digests nach der Aktualisierung immer noch nicht übereinstimmen, fragen Sie den Marktplatz-Besitzer, welche Datei er vor der Installation gepinnt hat

462 462 

463<h3 id="an-npm-plugin-source-must-name-a-registry-package">

464 `An npm plugin source must name a registry package`

465</h3>

466 

467Ein Plugin, dessen Marktplatz-Eintrag eine [`npm`-Quelle](/docs/de/plugins/marketplace-reference#npm-plugin-source) verwendet, konnte nicht installiert, aktualisiert oder geladen werden, und die Meldung enthält diesen Satz. Claude Code hat den `package`-Wert des Eintrags geprüft, bevor etwas abgerufen wurde, und ihn abgelehnt. Die Meldung nennt den Wert und den Grund:

468 

469```text theme={null}

470"github:acme/formatter" was not installed: it is not an http or https link. An npm plugin source must name a registry package (name or name@version) or link to a tarball file. For a plugin in a git repository, use a "github", "url" or "git-subdir" source.

471```

472 

473Der Besitzer des Marktplatzes muss den Eintrag ändern:

474 

475* **Wenn das Sie sind**: ändern Sie `package` in einen Wert, den die [Referenz zur npm-Plugin-Quelle](/docs/de/plugins/marketplace-reference#npm-plugin-source) akzeptiert, oder stellen Sie den Eintrag auf eine `github`-, `url`- oder `git-subdir`-Quelle um

476* **Wenn das nicht Sie sind**: melden Sie die Meldung dem Marktplatz-Besitzer

477 

463<h3 id="marketplace-is-registered-from-an-untrusted-source">478<h3 id="marketplace-is-registered-from-an-untrusted-source">

464 `Marketplace "<name>" is registered from an untrusted source`479 `Marketplace "<name>" is registered from an untrusted source`

465</h3>480</h3>


481 496 

482Vor v2.1.205 überprüfte Claude Code den Namen nur, wenn Sie den Marktplatz hinzufügten, daher behielt ein Eintrag, der vor seiner Reservierung registriert wurde, das Laden bei.497Vor v2.1.205 überprüfte Claude Code den Namen nur, wenn Sie den Marktplatz hinzufügten, daher behielt ein Eintrag, der vor seiner Reservierung registriert wurde, das Laden bei.

483 498 

499<h3 id="marketplace-is-added-but-ignored">

500 `Marketplace "<name>" is added but ignored`

501</h3>

502 

503Der Marketplace hat einen Eintrag in `~/.claude/plugins/known_marketplaces.json`, aber der Eintrag hat eine Prüfung nicht bestanden, die Claude Code bei jedem Lesen dieser Datei ausführt, sodass der Marketplace und die daraus installierten Plugins nicht mehr geladen werden. In Ihrer Shell meldet `claude plugin list` jedes betroffene Plugin mit einer Zeile, die den Grund und die Lösung nennt:

504 

505```text theme={null}

506Marketplace team-tools is added but ignored. Its location is on a network drive, has "." or ".." in its path, or couldn't be checked. Re-add the marketplace (one added from a folder or file must be re-added from a copy on this computer), or, to trust a folder on a network drive, declare it under extraKnownMarketplaces in user or managed settings.

507```

508 

509In einer Sitzung setzt die Registerkarte `/plugin` **Errors** den Marketplace-Namen in Anführungszeichen, beendet die Zeile nach dem Grund und zeigt die Lösung in der Zeile darunter.

510 

511Der Satz nach `is added but ignored` nennt die Prüfung, die der Eintrag nicht bestanden hat:

512 

513* `Its location is on a network drive, has "." or ".." in its path, or couldn't be checked` oder derselbe Satz über `The folder or file it was added from`: Das Verzeichnis des Marketplace oder der lokale Pfad, von dem er hinzugefügt wurde, befindet sich an einem Netzwerkspeicherort, enthält ein `.`- oder `..`-Segment im Pfad oder konnte nicht geprüft werden

514* `Its git URL can't be used: <reason>` oder `Its URL can't be read as an https:// or http:// address`: Die gespeicherte Quell-URL des Eintrags ist eine, von der Claude Code das Klonen oder Abrufen verweigert

515* `Its source doesn't match its extraKnownMarketplaces entry in user or managed settings`: Der Eintrag stimmt nicht mit der gleichnamigen [`extraKnownMarketplaces`](/docs/de/settings-reference#extraknownmarketplaces)-Deklaration überein

516 

517Wenn `(see the debug log)` anstelle eines Grundes auf `is added but ignored` folgt, lehnt Claude Code den Namen des Marketplace ab, etwa bei [einer anderen Schreibweise eines reservierten Namens](/docs/de/errors#marketplace-name-is-another-spelling-of-a-reserved-name). Das [Debug-Log](/docs/de/debug-your-config) nennt den Eintrag.

518 

519**Vorgehensweise:**

520 

521* Folgen Sie der Lösung in der Meldung. Führen Sie in Ihrer Shell `claude plugin marketplace remove <name>` aus, fügen Sie den Marketplace dann erneut aus einer unterstützten Quelle oder einem lokalen Pfad hinzu und installieren Sie seine Plugins neu, die der Befehl zum Entfernen deinstalliert. Der Befehl zum Entfernen funktioniert auch bei einem ignorierten Eintrag

522* Um einen Marketplace an einem Netzwerkspeicherort beizubehalten, deklarieren Sie ihn unter [`extraKnownMarketplaces`](/docs/de/settings-reference#extraknownmarketplaces) in Ihren Benutzereinstellungen oder verwalteten Einstellungen; eine Deklaration in der `.claude/settings.json` oder `.claude/settings.local.json` eines Repositorys zählt nicht

523* Bei einer Quelle, die von ihrer Deklaration in den Einstellungen abweicht, fügen Sie den Marketplace aus der deklarierten Quelle erneut hinzu oder ändern Sie die Deklaration. `claude plugin marketplace add` lehnt dieselbe Abweichung ab; siehe [den entsprechenden `Cannot add marketplace`-Eintrag](#cannot-add-marketplace-its-network-source-differs)

524* Bei einem abgelehnten Namen entfernen Sie den Marketplace, und zwar mit dem Befehl nach `Remove it:`, sofern die Zeile einen angibt; ein erneutes Hinzufügen unter demselben Namen wird wieder abgelehnt

525 

526Vor v2.1.286 meldete `claude plugin list` einen solchen Marketplace unabhängig vom Grund als `Marketplace <name> not found`, und die Registerkarte `/plugin` **Errors** meldete ihn als `Marketplace "<name>" is registered but was refused (see the debug log)`. Der Grund erschien nur im Debug-Log. In v2.1.286 verwendeten die Sätze zu Grund und Lösung eine andere Formulierung, etwa `Its recorded location is network-shaped or unclassifiable (never probed)`.

527 

484<h3 id="plugin-has-a-corrupt-manifest-file-or-has-an-invalid-manifest-file">528<h3 id="plugin-has-a-corrupt-manifest-file-or-has-an-invalid-manifest-file">

485 `Plugin <name> has a corrupt manifest file` oder `has an invalid manifest file`529 `Plugin <name> has a corrupt manifest file` oder `has an invalid manifest file`

486</h3>530</h3>


898 `--plugin-dir` in einem Marktplatz-Root lädt die Plugins unter `plugins/` nicht942 `--plugin-dir` in einem Marktplatz-Root lädt die Plugins unter `plugins/` nicht

899</h3>943</h3>

900 944 

901Sie haben `claude --plugin-dir <path>` gestartet und sehen keinen Fehler, aber die Skills, Agents und Hooks des Plugins sind nicht da.945Sie haben `claude --plugin-dir <path>` gestartet und sehen keinen Fehler, aber die Skills, Agenten und Hooks des Plugins sind nicht da.

902 946 

903`--plugin-dir` nimmt das Plugin-Root-Verzeichnis, das, das `.claude-plugin/plugin.json` und die Komponentenverzeichnisse wie `skills/` enthält. Wenn Sie es stattdessen auf einen Marktplatz-Root zeigen, liest Claude Code nicht `marketplace.json`, daher lädt ein Plugin unter `plugins/` nicht, und Sie sehen keinen Fehler. Vor v2.1.281 lud Claude Code einen Marktplatz-Root als ein leeres Plugin, das nach diesem Verzeichnis benannt ist. Zeigen Sie das Flag auf das Plugin-Verzeichnis selbst:947`--plugin-dir` nimmt das Plugin-Root-Verzeichnis, das, das `.claude-plugin/plugin.json` und die Komponentenverzeichnisse wie `skills/` enthält. Wenn Sie es stattdessen auf einen Marktplatz-Root zeigen, liest Claude Code nicht `marketplace.json`, daher lädt ein Plugin unter `plugins/` nicht, und Sie sehen keinen Fehler. Vor v2.1.281 lud Claude Code einen Marktplatz-Root als ein leeres Plugin, das nach diesem Verzeichnis benannt ist. Zeigen Sie das Flag auf das Plugin-Verzeichnis selbst:

904 948 


951* **Die Beschreibung passt nicht, wie Menschen fragen**: arbeiten Sie die Überprüfungen in [Skill wird nicht ausgelöst](/docs/de/skills#skill-not-triggering) durch995* **Die Beschreibung passt nicht, wie Menschen fragen**: arbeiten Sie die Überprüfungen in [Skill wird nicht ausgelöst](/docs/de/skills#skill-not-triggering) durch

952* **Die Beschreibung ist gekürzt**: wenn viele Skills installiert sind, kürzt Claude Code Beschreibungen, um in das Zeichenlimit der Auflistung zu passen, was die Schlüsselwörter entfernen kann, die Claude benötigt, um eine Anfrage zu passen. Siehe [Skill-Beschreibungen werden gekürzt](/docs/de/skills#skill-descriptions-are-cut-short)996* **Die Beschreibung ist gekürzt**: wenn viele Skills installiert sind, kürzt Claude Code Beschreibungen, um in das Zeichenlimit der Auflistung zu passen, was die Schlüsselwörter entfernen kann, die Claude benötigt, um eine Anfrage zu passen. Siehe [Skill-Beschreibungen werden gekürzt](/docs/de/skills#skill-descriptions-are-cut-short)

953 997 

954Um zu messen, wie oft der Skill über realistische Eingabeaufforderungen ausgelöst wird, statt jeden einzeln zu überprüfen, schreiben Sie einen Eval-Fall mit einem [`tool_used: Skill`-Grader](/docs/de/plugin-evals#create-your-first-eval-suite) und führen Sie ihn mit `claude plugin eval` nach jeder Beschreibungsänderung aus.998Um zu messen, wie oft der Skill über realistische Prompts ausgelöst wird, statt jeden einzeln zu überprüfen, schreiben Sie einen Eval-Fall mit einem [`tool_used: Skill`-Grader](/docs/de/plugin-evals#create-your-first-eval-suite) und führen Sie ihn mit `claude plugin eval` nach jeder Beschreibungsänderung aus.

955 999 

956<h3 id="is-not-a-plugin-or-skill-folder">1000<h3 id="is-not-a-plugin-or-skill-folder">

957 `<directory> is not a plugin or skill folder` von `claude plugin eval init`1001 `<directory> is not a plugin or skill folder` von `claude plugin eval init`

958</h3>1002</h3>

959 1003 

960Sie haben `claude plugin eval init` aus einem Verzeichnis ausgeführt, das kein Plugin-Root ist, wie Ihr Home-Verzeichnis oder der Root eines Repositories, das das Plugin in einem Unterverzeichnis hält. `init` schreibt die Suite unter dem Arbeitsverzeichnis, daher stoppt es, statt ein `evals/`-Verzeichnis zu erstellen, das das Plugin nie sehen würde.1004Sie haben `claude plugin eval init` aus einem Verzeichnis ausgeführt, das kein Plugin-Root ist, wie Ihr Home-Verzeichnis oder der Root eines Repositorys, das das Plugin in einem Unterverzeichnis hält. `init` schreibt die Suite unter dem Arbeitsverzeichnis, daher stoppt es, statt ein `evals/`-Verzeichnis zu erstellen, das das Plugin nie sehen würde.

961 1005 

962Wechseln Sie zum Plugin-Root, dem Verzeichnis, das `.claude-plugin/plugin.json` oder die `SKILL.md` des Skills hält, und führen Sie den Befehl erneut aus. Um die Suite absichtlich woanders zu gerüsten, übergeben Sie `--eval-dir`. Siehe [Testen Sie Plugins mit Evals](/docs/de/plugin-evals).1006Wechseln Sie zum Plugin-Root, dem Verzeichnis, das `.claude-plugin/plugin.json` oder die `SKILL.md` des Skills hält, und führen Sie den Befehl erneut aus. Um die Suite absichtlich woanders zu gerüsten, übergeben Sie `--eval-dir`. Siehe [Testen Sie Plugins mit Evals](/docs/de/plugin-evals).

963 1007 


971 1015 

972* **`/plugin install` in einer Sitzung, oder die Registerkarte Discover in `/plugin`**: der Dialog ist Teil dieser interaktiven Installation1016* **`/plugin install` in einer Sitzung, oder die Registerkarte Discover in `/plugin`**: der Dialog ist Teil dieser interaktiven Installation

973* **Der Verwaltungsdialog für Plugins der VS Code-Erweiterung**: fordert nach der Installation ungesetzte Optionen als Formular an. Vor v2.1.285 zeigte die Installation dort kein Optionsformular, daher setzen Sie die Werte aus einer Terminal-Sitzung mit `/plugin configure <plugin>@<marketplace>`1017* **Der Verwaltungsdialog für Plugins der VS Code-Erweiterung**: fordert nach der Installation ungesetzte Optionen als Formular an. Vor v2.1.285 zeigte die Installation dort kein Optionsformular, daher setzen Sie die Werte aus einer Terminal-Sitzung mit `/plugin configure <plugin>@<marketplace>`

974* **`claude plugin install` in Ihrer Shell**: fordert nie `userConfig`-Werte auf. Es speichert alle `--config KEY=VALUE`-Werte, die Sie übergeben, und wenn Optionen ungesetzt bleiben, druckt es `N userConfig options not yet set — run /plugin configure <plugin>@<marketplace> in Claude Code, or pass --config KEY=VALUE.` Wenn eine der ungesetzten Optionen erforderlich ist, folgt `(M required)` auf `not yet set`.1018* **`claude plugin install` in Ihrer Shell**: fragt nie nach `userConfig`-Werten. Es speichert alle `--config KEY=VALUE`-Werte, die Sie übergeben, und wenn Optionen ungesetzt bleiben, druckt es `N userConfig options not yet set — run /plugin configure <plugin>@<marketplace> in Claude Code, or pass --config KEY=VALUE.` Wenn eine der ungesetzten Optionen erforderlich ist, folgt `(M required)` auf `not yet set`.

975 1019 

976Wenn Sie von der Shell aus installiert haben, übergeben Sie die Werte mit `--config`, ein Flag pro Option:1020Wenn Sie von der Shell aus installiert haben, übergeben Sie die Werte mit `--config`, ein Flag pro Option:

977 1021 


993 1037 

994Sie haben `claude plugin validate <path>` ausgeführt, oder `/plugin validate <path>` in einer Sitzung, und es hat `Found N errors` und `Validation failed` gedruckt, dann mit Code 1 beendet.1038Sie haben `claude plugin validate <path>` ausgeführt, oder `/plugin validate <path>` in einer Sitzung, und es hat `Found N errors` und `Validation failed` gedruckt, dann mit Code 1 beendet.

995 1039 

996Der Validator liest das Manifest am Pfad, den Sie ihm geben: `.claude-plugin/plugin.json` für ein Plugin-Verzeichnis, oder `.claude-plugin/marketplace.json` für ein Marktplatz-Verzeichnis. Für einen Marktplatz stellt er Problemen im eigenen Manifest eines Eintrags das Eintragsindex voran, wie `plugins[1] plugin.json → json: ...`.1040Der Validator liest das Manifest am Pfad, den Sie ihm geben: `.claude-plugin/plugin.json` für ein Plugin-Verzeichnis, oder `.claude-plugin/marketplace.json` für ein Marktplatz-Verzeichnis. Für einen Marktplatz stellt er Problemen im eigenen Manifest eines Eintrags den Eintragsindex voran, wie `plugins[1] plugin.json → json: ...`.

997 1041 

998Die Tabelle behandelt die Meldungen, die die Validierung stoppen, und zwei Warnungen, `No frontmatter block found` und `Unknown field '<key>'`, die sie nur stoppen, wenn Sie `--strict` übergeben. Andere Warnungen, wie eine fehlende Beschreibung, sind nicht aufgelistet.1042Die Tabelle behandelt die Meldungen, die die Validierung stoppen, und zwei Warnungen, `No frontmatter block found` und `Unknown field '<key>'`, die sie nur stoppen, wenn Sie `--strict` übergeben. Andere Warnungen, wie eine fehlende Beschreibung, sind nicht aufgelistet.

999 1043 


1005| `Path not found: <path>. The runtime loader will report this as a load failure.` | Ein Komponentenpfad im Manifest existiert nicht. | Beheben Sie den Pfad oder erstellen Sie das Verzeichnis. |1049| `Path not found: <path>. The runtime loader will report this as a load failure.` | Ein Komponentenpfad im Manifest existiert nicht. | Beheben Sie den Pfad oder erstellen Sie das Verzeichnis. |

1006| `Path contains ".." which could be a path traversal attempt: <path>` | Ein Komponentenpfad entweicht dem Plugin-Verzeichnis. | Verwenden Sie Pfade im Plugin-Root. |1050| `Path contains ".." which could be a path traversal attempt: <path>` | Ein Komponentenpfad entweicht dem Plugin-Verzeichnis. | Verwenden Sie Pfade im Plugin-Root. |

1007| `Path is a file; skills entries must be directories containing SKILL.md` | Ein `skills`-Eintrag zeigt auf `SKILL.md` statt auf sein Verzeichnis. | Zeigen Sie auf das übergeordnete Verzeichnis, oder `.` für eine Root-Level-`SKILL.md`. |1051| `Path is a file; skills entries must be directories containing SKILL.md` | Ein `skills`-Eintrag zeigt auf `SKILL.md` statt auf sein Verzeichnis. | Zeigen Sie auf das übergeordnete Verzeichnis, oder `.` für eine Root-Level-`SKILL.md`. |

1008| `No frontmatter block found` oder `YAML frontmatter failed to parse: <error>` | Eine Skill-, Agent- oder Befehlsdatei hat fehlende oder ungültige YAML-Frontmatter. | Fügen Sie oder beheben Sie die Frontmatter zwischen `---`-Trennzeichen. Wird beim Validieren eines Plugin-Verzeichnisses gemeldet. |1052| `No frontmatter block found` oder `YAML frontmatter failed to parse: <error>` | Eine Skill-, Agenten- oder Befehlsdatei hat fehlendes oder ungültiges YAML-Frontmatter. | Fügen Sie das Frontmatter zwischen `---`-Trennzeichen hinzu oder beheben Sie es. Wird beim Validieren eines Plugin-Verzeichnisses gemeldet. |

1009| `Plugin name "<name>" is reserved: it passes as one of Anthropic's own` | Der Name des Plugins ist einer der [reservierten Namen](/docs/de/plugins/manifest-reference#name). | Benennen Sie das Plugin nach dem, was es tut. |1053| `Plugin name "<name>" is reserved: it passes as one of Anthropic's own` | Der `name` des Plugins ist einer der [reservierten Namen](/docs/de/plugins/manifest-reference#name). | Benennen Sie das Plugin nach dem, was es tut. |

1010| `Unknown field '<key>'` | Das Manifest hat ein Feld, das das Schema nicht definiert. | Entfernen Sie es, oder verwenden Sie den Namen, den die Meldung vorschlägt. Claude Code ignoriert unbekannte Felder zur Ladezeit. |1054| `Unknown field '<key>'` | Das Manifest hat ein Feld, das das Schema nicht definiert. | Entfernen Sie es, oder verwenden Sie den Namen, den die Meldung vorschlägt. Claude Code ignoriert unbekannte Felder zur Ladezeit. Für `privacyPolicyUrl` und die anderen Verzeichniseintragsfelder in `plugin.json` siehe [Felder für Verzeichniseinträge](/docs/de/plugins/manifest-reference#directory-listing-fields). |

1011 1055 

1012Führen Sie den Befehl erneut aus, nachdem Sie jeden Fehler behoben haben, bis er keine Fehler druckt.1056Führen Sie den Befehl erneut aus, nachdem Sie jeden Fehler behoben haben, bis er keine Fehler druckt.

1013 1057 


1025 `Warning: No commands found in plugin <name> custom directory`1069 `Warning: No commands found in plugin <name> custom directory`

1026</h3>1070</h3>

1027 1071 

1028Wenn das Plugin geladen wird, zeichnet das `claude --debug`-Protokoll unter `~/.claude/debug/<session-id>.txt` `Warning: No commands found in plugin <name> custom directory: <path>. Expected .md files or SKILL.md in subdirectories.` auf. Nichts erscheint in der Sitzung oder der Registerkarte **Errors**.1072Wenn das Plugin geladen wird, protokolliert das `claude --debug`-Log unter `~/.claude/debug/<session-id>.txt` die Meldung `Warning: No commands found in plugin <name> custom directory: <path>. Expected .md files or SKILL.md in subdirectories.` Nichts erscheint in der Sitzung oder der Registerkarte **Errors**.

1029 1073 

1030Der `commands`-Pfad im Manifest existiert, hält aber keine `.md`-Dateien und keine `SKILL.md` in einem Unterverzeichnis. Fügen Sie die Befehlsdateien hinzu, oder entfernen Sie den Pfad aus dem Manifest.1074Der `commands`-Pfad im Manifest existiert, hält aber keine `.md`-Dateien und keine `SKILL.md` in einem Unterverzeichnis. Fügen Sie die Befehlsdateien hinzu, oder entfernen Sie den Pfad aus dem Manifest.

1031 1075 

remote-control.md +28 −14

Details

220 220 

221Diese Befehle funktionieren etwa vier Stunden, nachdem der Server gestoppt wurde. Danach führen Sie `claude remote-control` aus, um eine neue Sitzung zu starten. Wenn Sie eine Sitzung in der Zwischenzeit archiviert haben, entarchivieren `--continue` und `--session-id` sie auf Claude Code v2.1.228 oder später.221Diese Befehle funktionieren etwa vier Stunden, nachdem der Server gestoppt wurde. Danach führen Sie `claude remote-control` aus, um eine neue Sitzung zu starten. Wenn Sie eine Sitzung in der Zwischenzeit archiviert haben, entarchivieren `--continue` und `--session-id` sie auf Claude Code v2.1.228 oder später.

222 222 

223Um eine Sitzung zurückzubringen, die Sie mit `claude --remote-control` oder `/remote-control` gestartet haben, setzen Sie das Gespräch mit `claude --continue` oder `claude --resume` fort. Wenn Remote Control nicht erneut verbunden wird, siehe [Konnte nicht erneut mit Ihrer Remote Control-Sitzung verbunden werden](#couldnt-reconnect-to-your-remote-control-session).223Um eine Sitzung zurückzubringen, die Sie mit `claude --remote-control` oder `/remote-control` gestartet haben, setzen Sie die Konversation mit `claude --continue` oder `claude --resume` fort. Informationen zum Berechtigungsmodus, in dem die fortgesetzte Konversation startet, finden Sie unter [Berechtigungsmodus beim Fortsetzen](/docs/de/sessions#permission-mode-on-resume). Wenn Remote Control nicht erneut verbunden wird, siehe [Konnte nicht erneut mit Ihrer Remote-Control-Sitzung verbunden werden](#couldnt-reconnect-to-your-remote-control-session).

224 224 

225Wenn Sie das Gespräch in einem zweiten Terminal fortsetzen, während das erste noch Remote Control aktiviert hat, druckt Claude Code eine `Remote Control not started here`-Benachrichtigung im zweiten Terminal und lässt Remote Control dort stattdessen aus, anstatt die Sitzung vom ersten zu nehmen. Führen Sie `/remote-control` im zweiten Terminal aus, um Remote Control dorthin zu verschieben.225Wenn Sie das Gespräch in einem zweiten Terminal fortsetzen, während das erste noch Remote Control aktiviert hat, druckt Claude Code eine `Remote Control not started here`-Benachrichtigung im zweiten Terminal und lässt Remote Control dort stattdessen aus, anstatt die Sitzung vom ersten zu nehmen. Führen Sie `/remote-control` im zweiten Terminal aus, um Remote Control dorthin zu verschieben.

226 226 


367* **Längerer Netzwerkausfall**: Wenn Ihr Computer aktiv ist, aber das Netzwerk nicht erreichen kann, hängt das, was Sie als Nächstes tun, vom Modus ab:367* **Längerer Netzwerkausfall**: Wenn Ihr Computer aktiv ist, aber das Netzwerk nicht erreichen kann, hängt das, was Sie als Nächstes tun, vom Modus ab:

368 * **Server-Modus**: Claude Code gibt nach etwa 10 Minuten auf und der `claude remote-control`-Prozess wird beendet. Führen Sie `claude remote-control` erneut aus, um eine neue Sitzung zu starten.368 * **Server-Modus**: Claude Code gibt nach etwa 10 Minuten auf und der `claude remote-control`-Prozess wird beendet. Führen Sie `claude remote-control` erneut aus, um eine neue Sitzung zu starten.

369 * **Interaktive Sitzung**: Arbeiten Sie lokal weiter. Claude Code versucht es erneut, solange der Ausfall andauert, und stellt die Verbindung automatisch wieder her, wenn das Netzwerk zurückkommt.369 * **Interaktive Sitzung**: Arbeiten Sie lokal weiter. Claude Code versucht es erneut, solange der Ausfall andauert, und stellt die Verbindung automatisch wieder her, wenn das Netzwerk zurückkommt.

370* **Anhänge, die nicht heruntergeladen werden**: Wenn eine Datei, die Sie von Ihrem Telefon oder Browser aus anhängen, nicht auf Ihren Computer heruntergeladen werden kann, erhält Claude dennoch Ihre Nachricht und die heruntergeladenen Dateien. Anstelle der fehlenden Dateien fügt Claude Code der Nachricht einen Hinweis wie `[1 of 3 attachments did not arrive]` hinzu.

370* **Presence-Heartbeats schlagen fehl**: Wenn eine interaktive Sitzung mit `could not reach the Remote Control server for about 30 minutes` getrennt wird, führen Sie `/remote-control` aus, um die Verbindung wiederherzustellen.371* **Presence-Heartbeats schlagen fehl**: Wenn eine interaktive Sitzung mit `could not reach the Remote Control server for about 30 minutes` getrennt wird, führen Sie `/remote-control` aus, um die Verbindung wiederherzustellen.

371* **Weitergeleitete Dialoge verfallen**: Claude Code hält Berechtigungsaufforderungen und `AskUserQuestion`-Fragen offen, bis Sie sie beantworten. Wenn Claude Code einen anderen Dialog an die Remote-Sitzung weiterleitet, z. B. die nach einer Sicherheitsablehnung angezeigte Modellauswahlabfrage, wartet es standardmäßig fünf Minuten, schließt dann den Dialog und fährt mit der Standardeinstellung „Keine Aktion" des Dialogs fort. Legen Sie [`dialogExpiry`](/docs/de/settings-reference#dialogexpiry) fest, um die Frist anzupassen oder zu deaktivieren. Erfordert Claude Code v2.1.224 oder später.372* **Weitergeleitete Dialoge verfallen**: Claude Code hält Berechtigungsabfragen und `AskUserQuestion`-Fragen offen, bis Sie sie beantworten. Wenn Claude Code einen anderen Dialog an die Remote-Sitzung weiterleitet, z. B. die nach einer Sicherheitsablehnung angezeigte Modellauswahlabfrage, wartet es standardmäßig fünf Minuten, schließt dann den Dialog und fährt mit der Standardeinstellung „Keine Aktion" des Dialogs fort. Legen Sie [`dialogExpiry`](/docs/de/settings-reference#dialogexpiry) fest, um die Frist anzupassen oder zu deaktivieren. Erfordert Claude Code v2.1.224 oder später.

372* **Die Fable-Zustimmungsaufforderung für Nutzungsguthaben wird nicht weitergeleitet**: Claude Code zeigt die Mid-Session-[Fable-Zustimmungsaufforderung für Nutzungsguthaben](/docs/de/model-config#fable-and-usage-credits) nur dort an, wo die Sitzung ausgeführt wird, nicht auf Ihrem Gerät. Wenn die Sitzung in einem Terminal ausgeführt wird und niemand dort antwortet, bevor Claude Code die Aufforderung schließt, endet der Zug ohne Senden der Anfrage; siehe [The prompt to confirm went unanswered](/docs/de/errors#the-prompt-to-confirm-went-unanswered).373* **Die Fable-Zustimmungsaufforderung für Nutzungsguthaben wird nicht weitergeleitet**: Claude Code zeigt die Mid-Session-[Fable-Zustimmungsaufforderung für Nutzungsguthaben](/docs/de/model-config#fable-and-usage-credits) nur dort an, wo die Sitzung ausgeführt wird, nicht auf Ihrem Gerät. Wenn die Sitzung in einem Terminal ausgeführt wird und niemand dort antwortet, bevor Claude Code die Aufforderung schließt, endet der Turn ohne Senden der Anfrage; siehe [The prompt to confirm went unanswered](/docs/de/errors#the-prompt-to-confirm-went-unanswered).

373* **Einige Befehle sind nur lokal**: Befehle, die nur in der Terminal-Schnittstelle ausgeführt werden, z. B. `/plugin` oder `/resume`, funktionieren nur über die lokale CLI, unabhängig davon, ob Sie ein Argument übergeben oder nicht. Die folgenden funktionieren von Mobilgeräten und Web:374* **Einige Befehle sind nur lokal**: Befehle, die nur in der Terminal-Schnittstelle ausgeführt werden, z. B. `/plugin` oder `/resume`, funktionieren nur über die lokale CLI, unabhängig davon, ob Sie ein Argument übergeben oder nicht. Die folgenden funktionieren von Mobilgeräten und Web:

374 * Textausgabe-Befehle: `/compact`, `/clear`, `/context`, `/usage`, `/exit`, `/usage-credits`, `/recap` und `/reload-plugins`. `/usage-credits` gibt die Abrechnungs-URL aus, anstatt einen Browser zu öffnen. `/reload-plugins` funktioniert nur, wenn die Sitzung in einem interaktiven Terminal ausgeführt wird; eine Sitzung ohne eines lehnt es ab.375 * Textausgabe-Befehle: `/compact`, `/clear`, `/context`, `/usage`, `/exit`, `/usage-credits`, `/recap` und `/reload-plugins`. `/usage-credits` gibt die Abrechnungs-URL aus, anstatt einen Browser zu öffnen. `/reload-plugins` funktioniert nur, wenn die Sitzung in einem interaktiven Terminal ausgeführt wird; eine Sitzung ohne eines lehnt es ab.

375 * `/model`, `/effort`, `/fast`, `/color` und `/rename`: Übergeben Sie den Wert als Argument, z. B. `/model sonnet` oder `/effort high`. Von Mobilgeräten und Web aus nehmen `/model` und `/effort` das Argument anstelle der Terminal-Auswahl oder des Schiebereglers.376 * `/model`, `/effort`, `/fast`, `/color` und `/rename`: Übergeben Sie den Wert als Argument, z. B. `/model sonnet` oder `/effort high`. Von Mobilgeräten und Web aus nehmen `/model` und `/effort` das Argument anstelle der Terminal-Auswahl oder des Schiebereglers.

376 * `/mcp`: Aus der mobilen App gibt es eine Textzusammenfassung des Serverstatus zurück, anstatt die Auswahl zu öffnen. Im Web öffnet `/mcp` allein ein Verzeichnis von [claude.ai-Konnektoren](/docs/de/mcp#use-mcp-servers-from-claude-ai) anstatt die Zusammenfassung zurückzugeben. Die [Unterbefehle](/docs/de/commands#all-commands) `reconnect`, `enable` und `disable` funktionieren von beiden. Im Gegensatz zur lokalen CLI verbindet `/mcp reconnect` ohne Servernamen jeden Server wieder, der fehlgeschlagen ist oder eine Authentifizierung benötigt.377 * `/mcp`: Aus der mobilen App gibt es eine Textzusammenfassung des Serverstatus zurück, anstatt die Auswahl zu öffnen. Im Web öffnet `/mcp` allein ein Verzeichnis von [claude.ai-Konnektoren](/docs/de/mcp#use-mcp-servers-from-claude-ai) anstatt die Zusammenfassung zurückzugeben. Die [Unterbefehle](/docs/de/commands#all-commands) `reconnect`, `enable` und `disable` funktionieren von beiden. Im Gegensatz zur lokalen CLI verbindet `/mcp reconnect` ohne Servernamen jeden Server wieder, der fehlgeschlagen ist oder eine Authentifizierung benötigt.

377 * `/config`: Aus der mobilen App übergeben Sie `key=value`, um eine Einstellung festzulegen, oder führen Sie sie ohne Argument aus, um die Schlüssel aufzulisten, die Sie festlegen können. Im Web öffnet `/config` stattdessen den Claude Code-Abschnitt Ihrer Einstellungen und ignoriert Text nach dem Befehl.378 * `/config`: Aus der mobilen App übergeben Sie `key=value`, um eine Einstellung festzulegen, oder führen Sie sie ohne Argument aus, um die Schlüssel aufzulisten, die Sie festlegen können. Im Web öffnet `/config` stattdessen den Claude Code-Abschnitt Ihrer Einstellungen und ignoriert Text nach dem Befehl.

378 * Auf Team und Enterprise sendet `/usage-credits` von Mobilgeräten oder Web keine [Anfrage für Nutzungsguthaben an Ihren Administrator](/docs/de/costs#add-usage-credits-to-your-subscription). Das Senden erfordert eine Bestätigung, die nur in der interaktiven CLI angezeigt wird, daher teilt Ihnen der Befehl mit, ihn stattdessen dort auszuführen.379 * Auf Team und Enterprise sendet `/usage-credits` von Mobilgeräten oder Web keine [Anfrage für Nutzungsguthaben an Ihren Admin](/docs/de/costs#add-usage-credits-to-your-subscription). Das Senden erfordert eine Bestätigung, die nur in der interaktiven CLI angezeigt wird, daher teilt Ihnen der Befehl mit, ihn stattdessen dort auszuführen.

379 * `/autocompact`, ab v2.1.221: Übergeben Sie die Fenstergröße als Argument, z. B. `/autocompact 500k`. Ohne Argument gibt es die aktuelle Fenstergröße als Text aus, anstatt den Dialog zu öffnen, den der Befehl in einer Terminal-Sitzung anzeigt.380 * `/autocompact`, ab v2.1.221: Übergeben Sie die Fenstergröße als Argument, z. B. `/autocompact 500k`. Ohne Argument gibt es die aktuelle Fenstergröße als Text aus, anstatt den Dialog zu öffnen, den der Befehl in einer Terminal-Sitzung anzeigt.

380 * `/advisor`, ab v2.1.260: Übergeben Sie das Modell als Argument, z. B. `/advisor opus`, oder übergeben Sie `off`, um den Advisor auszuschalten. Beide Formen gelten nur für die aktuelle Sitzung und lassen Ihren gespeicherten Standard unverändert. Ohne Argument gibt es den aktuellen Advisor als Text aus, anstatt die Auswahl zu öffnen.381 * `/advisor`, ab v2.1.260: Übergeben Sie das Modell als Argument, z. B. `/advisor opus`, oder übergeben Sie `off`, um den Advisor auszuschalten. Beide Formen gelten nur für die aktuelle Sitzung und lassen Ihren gespeicherten Standard unverändert. Ohne Argument gibt es den aktuellen Advisor als Text aus, anstatt die Auswahl zu öffnen.

381 * `/output-style`, ab v2.1.269: Übergeben Sie den Stilnamen als Argument, z. B. `/output-style concise`, oder führen Sie ihn ohne Argument aus, um die Stile aufzulisten. Von Mobilgeräten und Web aus können Sie nur [integrierte Stile](/docs/de/output-styles#built-in-output-styles) auflisten und auswählen. Um einen [benutzerdefinierten Stil](/docs/de/output-styles#create-a-custom-output-style) zu verwenden, wählen Sie ihn in der Sitzung selbst aus.382 * `/output-style`, ab v2.1.269: Übergeben Sie den Stilnamen als Argument, z. B. `/output-style concise`, oder führen Sie ihn ohne Argument aus, um die Stile aufzulisten. Von Mobilgeräten und Web aus können Sie nur [integrierte Stile](/docs/de/output-styles#built-in-output-styles) auflisten und auswählen. Um einen [benutzerdefinierten Stil](/docs/de/output-styles#create-a-custom-output-style) zu verwenden, wählen Sie ihn in der Sitzung selbst aus.


389 „Remote Control erfordert ein claude.ai-Abonnement"390 „Remote Control erfordert ein claude.ai-Abonnement"

390</h3>391</h3>

391 392 

392Sie sind nicht mit einem claude.ai-Konto angemeldet, oder eine andere Anmeldeinformation hat Vorrang vor Ihrer Anmeldung. Die Meldung nimmt eine dieser Formen an:393Sie sind nicht mit einem claude.ai-Konto angemeldet, oder andere Anmeldedaten haben Vorrang vor Ihrer Anmeldung. Die Meldung nimmt eine dieser Formen an:

393 394 

394* Abgemeldet, von `/remote-control` oder `--remote-control`: `Remote Control requires a claude.ai subscription.` oder `/remote-control requires a claude.ai subscription.`395* Abgemeldet, von `/remote-control` oder `--remote-control`: `Remote Control requires a claude.ai subscription.` oder `/remote-control requires a claude.ai subscription.`

395* Abgemeldet, von `claude remote-control`: `You must be logged in to use Remote Control. Remote Control is only available with claude.ai subscriptions.`396* Abgemeldet, von `claude remote-control`: `You must be logged in to use Remote Control. Remote Control is only available with claude.ai subscriptions.`

396* Angemeldet, aber ein API-Schlüssel oder Token wird verwendet: `Remote Control requires claude.ai subscription auth.` gefolgt von der verwendeten Anmeldeinformation, z. B. `ANTHROPIC_API_KEY is set, so this session is using API-key auth`. Eine `apiKeyHelper`-Einstellung und `ANTHROPIC_AUTH_TOKEN` werden auf die gleiche Weise benannt.397* Angemeldet, aber ein API-Schlüssel oder Token wird verwendet: `Remote Control requires claude.ai subscription auth.` gefolgt von den verwendeten Anmeldedaten, z. B. `ANTHROPIC_API_KEY is set, so this session is using API-key auth`. Eine `apiKeyHelper`-Einstellung und `ANTHROPIC_AUTH_TOKEN` werden auf die gleiche Weise benannt.

397 398 

398Führen Sie `claude auth login` aus und wählen Sie die claude.ai-Option. Wenn die Meldung `ANTHROPIC_API_KEY` oder `ANTHROPIC_AUTH_TOKEN` nennt, entfernen Sie diese überall dort, wo sie festgelegt sind: in Ihrer Shell-Umgebung oder im `env`-Block einer [Einstellungsdatei](/docs/de/settings-reference#env). Wenn sie `apiKeyHelper` nennt, entfernen Sie diese Einstellung.399Führen Sie `claude auth login` aus und wählen Sie die claude.ai-Option. Wenn die Meldung `ANTHROPIC_API_KEY` oder `ANTHROPIC_AUTH_TOKEN` nennt, entfernen Sie diese überall dort, wo sie festgelegt sind: in Ihrer Shell-Umgebung oder im `env`-Block einer [Einstellungsdatei](/docs/de/settings-reference#env). Wenn sie `apiKeyHelper` nennt, entfernen Sie diese Einstellung.

399 400 


401 „Remote Control erfordert ein Token mit vollständigem Umfang"402 „Remote Control erfordert ein Token mit vollständigem Umfang"

402</h3>403</h3>

403 404 

404Sie sind mit einem langlebigen Token von `claude setup-token` oder der Umgebungsvariablen `CLAUDE_CODE_OAUTH_TOKEN` authentifiziert. Diese Token können nur Modellanfragen stellen, daher können sie keine Remote-Control-Sitzungen einrichten. Führen Sie `claude auth login` aus, um sich stattdessen mit einem Token mit vollständigem Umfang zu authentifizieren.405Sie sind mit einem langlebigen Token von `claude setup-token` oder der Umgebungsvariablen `CLAUDE_CODE_OAUTH_TOKEN` authentifiziert. Diese Token können nur Modellanfragen stellen, daher können sie keine Remote-Control-Sitzungen einrichten. Führen Sie `claude auth login` aus, um sich stattdessen mit einem Sitzungs-Token mit vollständigem Umfang zu authentifizieren.

405 406 

406<h3 id="unable-to-determine-your-organization-for-remote-control-eligibility">407<h3 id="unable-to-determine-your-organization-for-remote-control-eligibility">

407 „Ihre Organisation für die Remote-Control-Berechtigung konnte nicht bestimmt werden"408 „Ihre Organisation für die Remote-Control-Berechtigung konnte nicht bestimmt werden"


442 443 

443Die Meldung nennt, was die Sitzung von der Anthropic API weg geleitet hat, z. B. `CLAUDE_CODE_USE_BEDROCK` oder eine benutzerdefinierte `ANTHROPIC_BASE_URL`. Wenn Sie eine berechtigte claude.ai-Anmeldung haben, heben Sie die genannte Variable auf, entfernen Sie sie aus dem `env`-Schlüssel in [Einstellungen](/docs/de/settings), wenn Sie sie dort festgelegt haben, und starten Sie die Sitzung neu.444Die Meldung nennt, was die Sitzung von der Anthropic API weg geleitet hat, z. B. `CLAUDE_CODE_USE_BEDROCK` oder eine benutzerdefinierte `ANTHROPIC_BASE_URL`. Wenn Sie eine berechtigte claude.ai-Anmeldung haben, heben Sie die genannte Variable auf, entfernen Sie sie aus dem `env`-Schlüssel in [Einstellungen](/docs/de/settings), wenn Sie sie dort festgelegt haben, und starten Sie die Sitzung neu.

444 445 

445<h3 id="remote-control-is-disabled-by-your-organization’s-policy">446<h3 id="remote-control-is-disabled-by-your-organizations-policy">

446 „Remote Control ist durch die Richtlinie Ihrer Organisation deaktiviert"447 „Remote Control ist durch die Richtlinie Ihrer Organisation deaktiviert"

447</h3>448</h3>

448 449 


450 451 

451* **Der Fehler erwähnt `disableRemoteControl`**: Ihr IT-Administrator hat Remote Control auf diesem Gerät durch [verwaltete Einstellungen](/docs/de/managed-settings) deaktiviert, unabhängig vom organisationsweiten Umschalter und davon, wie Sie angemeldet sind.452* **Der Fehler erwähnt `disableRemoteControl`**: Ihr IT-Administrator hat Remote Control auf diesem Gerät durch [verwaltete Einstellungen](/docs/de/managed-settings) deaktiviert, unabhängig vom organisationsweiten Umschalter und davon, wie Sie angemeldet sind.

452* **Ihr claude.ai-Plan ist Pro oder Max**: Claude Code ist immer noch unter einer Team- oder Enterprise-Organisation von einer früheren Anmeldung angemeldet, daher überprüft es die Remote-Control-Richtlinie dieser Organisation. Führen Sie `/status` aus, um zu sehen, welcher Plan und welche Organisation Ihre Anmeldung verwendet. Führen Sie `claude auth logout` und dann `claude auth login` aus, um sich erneut unter Ihrem aktuellen Plan anzumelden.453* **Ihr claude.ai-Plan ist Pro oder Max**: Claude Code ist immer noch unter einer Team- oder Enterprise-Organisation von einer früheren Anmeldung angemeldet, daher überprüft es die Remote-Control-Richtlinie dieser Organisation. Führen Sie `/status` aus, um zu sehen, welcher Plan und welche Organisation Ihre Anmeldung verwendet. Führen Sie `claude auth logout` und dann `claude auth login` aus, um sich erneut unter Ihrem aktuellen Plan anzumelden.

453* **Die Meldung sagt nicht, dass Sie Ihren Organisationsadministrator kontaktieren sollen**: Ihre Organisation hat eine HIPAA-Konfiguration, die mit Remote Control nicht kompatibel ist, und `/status` listet `HIPAA` in seiner `Compliance`-Zeile auf. In diesem Zustand ist der Remote-Control-Umschalter im Admin-Panel ausgegraut, daher kann ein Eigentümer ihn dort nicht ändern. Kontaktieren Sie den Anthropic-Support, um Optionen zu besprechen. Vor v2.1.267 zeigte dieser Fall stattdessen „Remote Control isn't available for your organization due to its compliance policy".454* **Die Meldung sagt nicht, dass Sie den Admin Ihrer Organisation kontaktieren sollen**: Ihre Organisation hat eine HIPAA-Konfiguration, die mit Remote Control nicht kompatibel ist, und `/status` listet `HIPAA` in seiner `Compliance`-Zeile auf. In diesem Zustand ist der Remote-Control-Umschalter im Admin-Panel ausgegraut, daher kann ein Owner ihn dort nicht ändern. Kontaktieren Sie den Anthropic-Support, um Optionen zu besprechen. Vor v2.1.267 zeigte dieser Fall stattdessen „Remote Control isn't available for your organization due to its compliance policy".

454* **Andernfalls hat ein Eigentümer es für Ihre Organisation nicht aktiviert**: Remote Control ist standardmäßig bei Team- und Enterprise-Plänen deaktiviert. Ein Eigentümer kann es unter [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code) aktivieren, indem er den **Remote Control**-Umschalter einschaltet. Dieser Umschalter ist eine serverseitige Organisationseinstellung.455* **Andernfalls hat ein Owner es für Ihre Organisation nicht aktiviert**: Remote Control ist standardmäßig bei Team- und Enterprise-Plänen deaktiviert. Ein Owner kann es unter [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code) aktivieren, indem er den **Remote Control**-Umschalter einschaltet. Dieser Umschalter ist eine serverseitige Organisationseinstellung.

455 456 

456Vor v2.1.281 erschien diese Meldung auch, wenn Claude Code die Richtlinie Ihrer Organisation auf diesem Computer nicht geladen hatte, z. B. nach dem Starten im Offline-Modus. Spätere Versionen melden diesen Zustand stattdessen als [`Couldn't verify your organization's policy for remote control`](#couldnt-verify-your-organizations-policy-for-remote-control).457Vor v2.1.281 erschien diese Meldung auch, wenn Claude Code die Richtlinie Ihrer Organisation auf diesem Computer nicht geladen hatte, z. B. nach dem Starten im Offline-Modus. Spätere Versionen melden diesen Zustand stattdessen als [`Couldn't verify your organization's policy for remote control`](#couldnt-verify-your-organizations-policy-for-remote-control).

457 458 

459<h3 id="remote-control-was-turned-off-by-your-organizations-policy">

460 „Remote Control wurde durch die Richtlinie Ihrer Organisation ausgeschaltet"

461</h3>

462 

463Die Richtlinie Ihrer Organisation hat Remote Control nicht mehr zugelassen, während eine Sitzung verbunden war, daher hat Claude Code die Verbindung getrennt. Was mit der Sitzung geschieht, hängt davon ab, wie Sie Remote Control gestartet haben:

464 

465* **Mit `/remote-control`, `claude --remote-control` oder [Auto-Verbindung](#enable-remote-control-for-all-sessions)**: Die Sitzung läuft ohne Remote Control weiter, und Claude Code archiviert sie auf claude.ai

466* **Mit `claude remote-control`**: Der Server stoppt und archiviert die Sitzungen, die er bereitgestellt hat, und beendet sich dann

467 

468Sie können eine archivierte Sitzung weiterhin finden, indem Sie [nach archivierten Sitzungen filtern](/docs/de/claude-code-on-the-web#archive-sessions).

469 

470Remote Control verbindet sich nicht von selbst erneut. Um es wieder einzuschalten, nachdem Ihre Organisation es erneut zulässt, führen Sie `/remote-control` in der Sitzung oder `claude remote-control` in Ihrer Shell aus. Beide Befehle schlagen mit [`Remote Control is disabled by your organization's policy`](#remote-control-is-disabled-by-your-organizations-policy) fehl, bis Claude Code auf diesem Computer die geänderte Richtlinie abgerufen hat. Eine geöffnete Sitzung ruft sie etwa einmal pro Stunde ab. Um herauszufinden, was Remote Control blockiert, gleichen Sie den vollständigen Text, den der Befehl ausgibt, mit diesem Eintrag ab.

471 

458<h3 id="couldnt-verify-your-organizations-policy-for-remote-control">472<h3 id="couldnt-verify-your-organizations-policy-for-remote-control">

459 „Die Richtlinie Ihrer Organisation für Remote Control konnte nicht überprüft werden"473 „Die Richtlinie Ihrer Organisation für Remote Control konnte nicht überprüft werden"

460</h3>474</h3>


471Vor v2.1.281 zeigte dieser Zustand stattdessen `Remote Control is disabled by your organization's policy`.485Vor v2.1.281 zeigte dieser Zustand stattdessen `Remote Control is disabled by your organization's policy`.

472 486 

473<h3 id="remote-credentials-fetch-failed">487<h3 id="remote-credentials-fetch-failed">

474 „Abruf von Remote-Anmeldeinformationen fehlgeschlagen"488 „Abruf von Remote-Anmeldedaten fehlgeschlagen"

475</h3>489</h3>

476 490 

477Claude Code konnte keine kurzlebige Anmeldeinformation von der Anthropic API abrufen, um die Verbindung herzustellen. Führen Sie erneut mit `--verbose` aus, um den vollständigen Fehler zu sehen:491Claude Code konnte keine kurzlebigen Anmeldedaten von der Anthropic API abrufen, um die Verbindung herzustellen. Führen Sie erneut mit `--verbose` aus, um den vollständigen Fehler zu sehen:

478 492 

479```bash theme={null}493```bash theme={null}

480claude remote-control --verbose494claude remote-control --verbose


500 514 

501Claude Code konnte die vorherige Remote-Control-Sitzung nicht wiederherstellen und stoppte, anstatt von selbst eine neue zu starten. Sie können diese Meldung sehen, nachdem Sie eine Konversation mit `claude --resume` oder `claude --continue` fortsetzen, oder nachdem Claude Code [sich nach einer Trennung selbst erneut verbindet](/docs/de/errors#remote-control-couldnt-refresh-your-login).515Claude Code konnte die vorherige Remote-Control-Sitzung nicht wiederherstellen und stoppte, anstatt von selbst eine neue zu starten. Sie können diese Meldung sehen, nachdem Sie eine Konversation mit `claude --resume` oder `claude --continue` fortsetzen, oder nachdem Claude Code [sich nach einer Trennung selbst erneut verbindet](/docs/de/errors#remote-control-couldnt-refresh-your-login).

502 516 

503Führen Sie `/remote-control` aus, um eine neue Remote-Control-Sitzung unter der aktuellen Anmeldung zu starten; Ihre lokale Sitzung läuft in der Zwischenzeit ohne Remote Control weiter. Die zugehörige Meldung `Remote Control could not verify the signed-in account — run /remote-control to reconnect` hat die gleiche Lösung. Wenn Sie `/remote-control` nach `Previous session is unavailable` ausführen, ohne Claude Code zuerst neu zu starten, lässt Claude Code die früheren Meldungen der Konversation aus der neuen Sitzung aus.517Führen Sie `/remote-control` aus, um eine neue Remote-Control-Sitzung unter der aktuellen Anmeldung zu starten; Ihre lokale Sitzung läuft in der Zwischenzeit ohne Remote Control weiter. Die zugehörige Meldung `Remote Control could not verify the signed-in account — run /remote-control to reconnect` hat die gleiche Lösung. Wenn Sie `/remote-control` nach `Previous session is unavailable` ausführen, ohne Claude Code zuerst neu zu starten, lässt Claude Code die früheren Nachrichten der Konversation aus der neuen Sitzung aus.

504 518 

505<h3 id="remote-control-got-an-unexpected-server-response">519<h3 id="remote-control-got-an-unexpected-server-response">

506 „Remote Control erhielt eine unerwartete Serverantwort"520 „Remote Control erhielt eine unerwartete Serverantwort"

507</h3>521</h3>

508 522 

509Der Remote-Control-Server akzeptierte eine Anfrage, antwortete aber in einer Form, die diese Version von Claude Code nicht lesen konnte, während die Remote-Sitzung erstellt oder ihre Anmeldeinformationen abgerufen wurden. Das Wiederholen in der gleichen Version schlägt auf die gleiche Weise fehl. Führen Sie `claude update` aus, und führen Sie dann `/remote-control` aus, um erneut zu verbinden.523Der Remote-Control-Server akzeptierte eine Anfrage, antwortete aber in einer Form, die diese Version von Claude Code nicht lesen konnte, während die Remote-Sitzung erstellt oder ihre Anmeldedaten abgerufen wurden. Ein erneuter Versuch mit derselben Version schlägt auf die gleiche Weise fehl. Führen Sie `claude update` aus, und führen Sie dann `/remote-control` aus, um erneut zu verbinden.

510 524 

511<h3 id="your-organization-requires-trusted-devices-for-remote-control-but-this-device-is-not-enrolled">525<h3 id="your-organization-requires-trusted-devices-for-remote-control-but-this-device-is-not-enrolled">

512 „Ihre Organisation erfordert Vertrauenswürdige Geräte für Remote Control, aber dieses Gerät ist nicht registriert"526 „Ihre Organisation erfordert Vertrauenswürdige Geräte für Remote Control, aber dieses Gerät ist nicht registriert"

Details

91 Sandbox Runtime91 Sandbox Runtime

92</h2>92</h2>

93 93 

94Das [`@anthropic-ai/sandbox-runtime`](https://github.com/anthropic-experimental/sandbox-runtime)-Paket umhüllt einen gesamten Prozess mit der gleichen Seatbelt- oder bubblewrap-Isolation, die die integrierte Bash-Sandbox verwendet. Das Ausführen von Claude Code durch die Runtime beschränkt jedes Tool, jeden Hook und jeden MCP-Server in der Sitzung, nicht nur Shell-Befehle. Die Runtime ist eine Beta-Forschungsvorschau, und ihr Konfigurationsformat kann sich ändern, wenn sich das Paket weiterentwickelt.94Das [`@anthropic-ai/sandbox-runtime`](https://github.com/anthropics/sandbox-runtime)-Paket umhüllt einen gesamten Prozess mit der gleichen Seatbelt- oder bubblewrap-Isolation, die die integrierte Bash-Sandbox verwendet. Das Ausführen von Claude Code durch die Runtime beschränkt neben Shell-Befehlen auch die Tools, Hooks und MCP-Server der Sitzung. Die Runtime ist eine Beta-Research-Preview, und ihr Konfigurationsformat kann sich ändern, wenn sich das Paket weiterentwickelt.

95 95 

96Dieser Abschnitt behandelt, was Sie konfigurieren und was die Runtime von selbst erzwingt. Informationen zum Bereitstellen der Runtime in Agent SDK-Anwendungen finden Sie im [Leitfaden zur sicheren Bereitstellung](/docs/de/agent-sdk/secure-deployment#sandbox-runtime).96Dieser Abschnitt behandelt, was Sie konfigurieren und was die Runtime von selbst erzwingt. Informationen zum Bereitstellen der Runtime in Agent SDK-Anwendungen finden Sie im [Leitfaden zur sicheren Bereitstellung](/docs/de/agent-sdk/secure-deployment#sandbox-runtime).

97 97 


101 101 

102Unter Linux und WSL2 basiert die Runtime auf den gleichen `bubblewrap`- und `socat`-Paketen wie die integrierte Sandbox, plus `ripgrep`, das Claude Code bündelt, aber die eigenständige Runtime aus Ihrem PATH auflöst. Installieren Sie `bubblewrap` und `socat` wie in [Einrichtung von Linux und WSL2](/docs/de/sandboxing#set-up-linux-and-wsl2) beschrieben, und `ripgrep` aus dem Paketmanager Ihrer Distribution. Unter macOS benötigen Sie keine zusätzlichen Pakete. Die Runtime verwendet dort die integrierte Seatbelt-Sandbox.102Unter Linux und WSL2 basiert die Runtime auf den gleichen `bubblewrap`- und `socat`-Paketen wie die integrierte Sandbox, plus `ripgrep`, das Claude Code bündelt, aber die eigenständige Runtime aus Ihrem PATH auflöst. Installieren Sie `bubblewrap` und `socat` wie in [Einrichtung von Linux und WSL2](/docs/de/sandboxing#set-up-linux-and-wsl2) beschrieben, und `ripgrep` aus dem Paketmanager Ihrer Distribution. Unter macOS benötigen Sie keine zusätzlichen Pakete. Die Runtime verwendet dort die integrierte Seatbelt-Sandbox.

103 103 

104Standardmäßig verweigert die Runtime den Netzwerkzugriff und beschränkt Schreibvorgänge auf eine kleine Menge integrierter Runtime-Pfade, daher konfigurieren Sie sie vor dem Start von Claude Code durch sie. Legen Sie Ihre Konfiguration in `~/.srt-settings.json` oder in einer Datei ab, die Sie mit `--settings` übergeben. Die Paket-[README](https://github.com/anthropic-experimental/sandbox-runtime) dokumentiert das vollständige Konfigurationsschema.104Standardmäßig verweigert die Runtime den Netzwerkzugriff und beschränkt Schreibvorgänge auf eine kleine Menge integrierter Runtime-Pfade, daher konfigurieren Sie sie vor dem Start von Claude Code durch sie. Legen Sie Ihre Konfiguration in `~/.srt-settings.json` oder in einer Datei ab, die Sie mit `--settings` übergeben. Die Paket-[README](https://github.com/anthropics/sandbox-runtime) dokumentiert das Konfigurationsschema.

105 105 

106Erlauben Sie Schreibzugriff auf mindestens:106Erlauben Sie Schreibzugriff auf mindestens:

107 107 

108* Ihr Projektverzeichnis.108* Ihr Projektverzeichnis.

109* Claude Codes Konfigurationspfade `~/.claude` und `~/.claude.json`.109* Claude Codes Konfigurationspfade `~/.claude` und `~/.claude.json`.

110* `/tmp`, wo Claude Code Runtime-Dateien schreibt.110* Das Verzeichnis, in das Claude Code Runtime-Dateien schreibt. Sofern Sie nicht [`CLAUDE_CODE_TMPDIR`](/docs/de/env-vars) setzen, ist dieses Verzeichnis:

111 * **Linux und WSL2**: `/tmp`

112 * **macOS**: `/private/tmp`. `/tmp` ist ein Symlink auf dieses Verzeichnis, und Seatbelt prüft den aufgelösten Pfad.

111 113 

112Erlauben Sie die Netzwerk-Domains, die Ihre Sitzung benötigt:114Erlauben Sie die Netzwerk-Domains, die Ihre Sitzung benötigt:

113 115 

114* `api.anthropic.com` oder den Endpunkt Ihres konfigurierten Anbieters. Bei einem Drittanbieter-Anbieter behalten Sie auch `api.anthropic.com` bei: Die WebFetch-Domänensicherheitsprüfung ruft sie standardmäßig auf, es sei denn, Sie setzen `skipWebFetchPreflight: true`.116* `api.anthropic.com` oder den Endpunkt Ihres konfigurierten Anbieters. Bei einem Drittanbieter behalten Sie auch `api.anthropic.com` bei: Die WebFetch-Domänensicherheitsprüfung ruft sie standardmäßig auf, es sei denn, Sie setzen `skipWebFetchPreflight: true`.

115* `claude.ai` und `platform.claude.com`, die [OAuth-Anmeldung und Token-Aktualisierung](/docs/de/network-config#network-access-requirements) erfordern. Mit einem API-Schlüssel authentifizierte Läufe können diese beiden weglassen.117* `claude.ai` und `platform.claude.com`, die [OAuth-Anmeldung und Token-Aktualisierung](/docs/de/network-config#network-access-requirements) erfordern. Mit einem API-Schlüssel authentifizierte Läufe können diese beiden weglassen.

116 118 

117Unter Linux und WSL2 wendet die Runtime Schreibzugriffe nur auf Pfade an, die bereits vorhanden sind. Erstellen Sie in einer frischen Umgebung Claude Codes Konfigurationspfade vor dem ersten Start:119Unter Linux und WSL2 wendet die Runtime Schreibzugriffe nur auf Pfade an, die bereits vorhanden sind. Erstellen Sie in einer frischen Umgebung Claude Codes Konfigurationspfade vor dem ersten Start:


132 Was die Runtime von selbst blockiert134 Was die Runtime von selbst blockiert

133</h3>135</h3>

134 136 

135Die Runtime blockiert die höchsten Schreibvorgänge ohne jede Konfiguration von Ihnen:137Die Runtime blockiert die Schreibvorgänge mit dem höchsten Risiko ohne jede Konfiguration von Ihnen:

136 138 

137* `denyWrite` hat Vorrang vor `allowWrite`.139* `denyWrite` hat Vorrang vor `allowWrite`.

138* Im Projektstammverzeichnis verweigert die Runtime `.git/hooks`, verweigert `.git/config`, es sei denn, Sie setzen `filesystem.allowGitConfig: true`, und verweigert `.mcp.json`, `.claude/commands`, `.claude/agents` und Shell-Startdateien.140* Im Projektstammverzeichnis verweigert die Runtime `.git/hooks`, verweigert `.git/config`, es sei denn, Sie setzen `filesystem.allowGitConfig: true`, und verweigert `.mcp.json`, `.claude/commands`, `.claude/agents` und Shell-Startdateien.

139* Unter macOS werden diese Verweigerungen überprüft, wenn ein Schreibvorgang stattfindet, daher decken sie auch verschachtelte Dateien und während der Sitzung erstellte Repositories ab.141* Unter macOS werden diese Verweigerungen überprüft, wenn ein Schreibvorgang stattfindet, daher decken sie auch verschachtelte Dateien und während der Sitzung erstellte Repositorys ab.

140* Unter Linux und WSL2 erstellt die Runtime die Verweigerungsliste einmal beim Start. Sie deckt zuverlässig das Projektstammverzeichnis ab, führt einen Best-Effort-Shallow-Scan für verschachtelte Kopien durch, die zu diesem Zeitpunkt vorhanden sind, und deckt nichts ab, das die Sitzung später erstellt, wie `git init`, `git clone` oder Scaffolding. Der Abschnitt `mandatoryDenySearchDepth` der README beschreibt die genaue Semantik des Scans.142* Unter Linux und WSL2 erstellt die Runtime die Verweigerungsliste einmal beim Start. Sie deckt zuverlässig das Projektstammverzeichnis ab, führt einen Best-Effort-Shallow-Scan für verschachtelte Kopien durch, die zu diesem Zeitpunkt vorhanden sind, und deckt nichts ab, das die Sitzung später erstellt, wie `git init`, `git clone` oder Scaffolding. Der Abschnitt `mandatoryDenySearchDepth` der README beschreibt die genaue Semantik des Scans.

141* Wenn `~/.srt-settings.json` nicht vorhanden ist und Sie `--settings` nicht übergeben, startet die Runtime trotzdem. Sie blockiert den Netzwerkzugriff und beschränkt Schreibvorgänge auf integrierte Runtime-Pfade wie `/tmp/claude`, `~/.npm/_logs` und `~/.claude/debug`. Nehmen Sie einen sauberen Start nicht als Beweis, dass Ihre Einstellungen geladen wurden.143* Wenn `~/.srt-settings.json` nicht vorhanden ist und Sie `--settings` nicht übergeben, startet die Runtime trotzdem. Sie blockiert den Netzwerkzugriff und beschränkt Schreibvorgänge auf integrierte Runtime-Pfade wie `/tmp/claude`, `~/.npm/_logs` und `~/.claude/debug`. Nehmen Sie einen sauberen Start nicht als Beweis, dass Ihre Einstellungen geladen wurden.

142* Wenn die Einstellungsdatei vorhanden ist, aber leer, unlesbar oder ungültig ist, weigert sich die Runtime zu starten, ob es sich um `~/.srt-settings.json` oder eine Datei handelt, die Sie mit `--settings` übergeben. Sie weigert sich auch zu starten, wenn die `--settings`-Datei nicht vorhanden ist.144* Wenn die Einstellungsdatei vorhanden ist, aber leer, unlesbar oder ungültig ist, weigert sich die Runtime zu starten, ob es sich um `~/.srt-settings.json` oder eine Datei handelt, die Sie mit `--settings` übergeben. Sie weigert sich auch zu starten, wenn die `--settings`-Datei nicht vorhanden ist.

143 145 

144Ihre Schreibzugriffe enthalten immer noch andere Pfade, aus denen Claude Code Konfiguration lädt, daher verweigern Sie diese mit `denyWrite`. Eine Sandbox-Sitzung, die diese schreiben kann, kann Hooks, Berechtigungsregeln oder MCP-Server beibehalten, die beim nächsten Start von Claude Code unsandboxed ausgeführt werden.146Ihre Schreibzugriffe enthalten immer noch andere Pfade, aus denen Claude Code Konfiguration lädt, daher verweigern Sie diese mit `denyWrite`. Eine in einer Sandbox ausgeführte Sitzung, die diese schreiben kann, kann Hooks, Berechtigungsregeln oder MCP-Server dauerhaft hinterlegen, die beim nächsten Start von Claude Code außerhalb der Sandbox ausgeführt werden.

145 147 

146<h3 id="after-unattended-runs">148<h3 id="after-unattended-runs">

147 Nach unbeaufsichtigten Läufen149 Nach unbeaufsichtigten Läufen

sandboxing.md +577 −239

Details

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.3> Use this file to discover all available pages before exploring further.

4 4 

5# Konfigurieren Sie das Sandboxed-Bash-Tool5# Das Bash-Tool in der Sandbox konfigurieren

6 6 

7> Erfahren Sie, wie das Sandboxed-Bash-Tool von Claude Code Dateisystem- und Netzwerkisolation für sicherere und autonomere Agent-Ausführung bietet.7> Beschränken Sie mit der integrierten Sandbox, auf welche Dateien und Netzwerk-Hosts die Shell-Befehle von Claude Code zugreifen können. Aktivieren Sie sie, legen Sie die Grenze fest und beheben Sie, was dadurch nicht mehr funktioniert.

8 8 

9Die Bash-Sandbox ermöglicht es Claude, die meisten Shell-Befehle auszuführen, ohne um Genehmigung zu fragen. Anstatt jeden Befehl zu genehmigen, definieren Sie, welche Dateien und Netzwerk-Domains Befehle berühren können, und das Betriebssystem erzwingt diese Grenze für jeden Bash-, PowerShell- oder Monitor-Befehl und seine Kindprozesse.9Die Bash-Sandbox ist eine Grenze, die das Betriebssystem um die Shell-Befehle durchsetzt, die Claude auf Ihrem Rechner ausführt. Sie legen fest, auf welche Dateien und Netzwerkdomänen diese Befehle zugreifen können, und die Beschränkungen gelten für Bash-, PowerShell- und Monitor-Befehle sowie für die Prozesse, die diese starten. Da das Betriebssystem die Beschränkungen während der Ausführung eines Befehls anwendet, kann Claude Code [Befehle in der Sandbox ausführen, ohne Sie zu fragen](#sandbox-modes), ob Sie jeden einzelnen genehmigen.

10 

11Die Sandbox umfasst nur Shell-Befehle. Die Datei-Tools von Claude, MCP-Server und Hooks [laufen außerhalb davon](#what-runs-outside-the-sandbox).

12 

13Die Sandbox läuft unter macOS, Linux und WSL2. Unter nativem Windows führt Claude Code Befehle ohne Sandbox aus. Um die Sandbox auf einem Windows-Rechner zu verwenden, führen Sie Claude Code innerhalb einer WSL2-Distribution aus.

10 14 

11<Note>15<Note>

12 Um andere Isolationsansätze wie Dev-Container, benutzerdefinierte Container und virtuelle Maschinen zu vergleichen, siehe [Sandbox-Umgebungen](/docs/de/sandbox-environments). Um Genehmigungseingaben für Tools außer Bash zu reduzieren, siehe [Genehmigungsmodi](/docs/de/permission-modes).16 Diese Seite behandelt die Sandbox um Shell-Befehle auf Ihrem eigenen Rechner. Andere Seiten behandeln verwandte Fragen:

17 

18 * Wie eine Cloud-Sitzung isoliert wird, erfahren Sie unter [Sicherheit und Isolation](/docs/de/claude-code-on-the-web#security-and-isolation)

19 * Um andere Isolationsansätze wie Dev-Container, benutzerdefinierte Container und virtuelle Maschinen zu vergleichen, siehe [Sandbox-Umgebungen](/docs/de/sandbox-environments)

20 * Um Berechtigungsabfragen für andere Tools als Bash zu reduzieren, siehe [Berechtigungsmodi](/docs/de/permission-modes)

13</Note>21</Note>

14 22 

23<h2 id="what-the-sandbox-restricts">

24 Was die Sandbox einschränkt

25</h2>

26 

27Solange die Sandbox aktiviert ist, starten die Shell-Befehle, die Claude ausführt, innerhalb ihrer Grenzen, ebenso wie die Prozesse, die diese Befehle starten. Die Sandbox ist standardmäßig deaktiviert. Um sie zu aktivieren, führen Sie `/sandbox` in einer Sitzung aus, wie unter [Erste Schritte](#get-started) gezeigt, oder setzen Sie [`sandbox.enabled`](/docs/de/settings-reference#sandbox-enabled) in einer [Einstellungsdatei](/docs/de/settings) wie `~/.claude/settings.json` auf `true`.

28 

29Die Tabelle zeigt, worauf ein in der Sandbox ausgeführter Befehl standardmäßig zugreifen kann, und welche Einstellungen den jeweiligen Standard ändern.

30 

31| Zugriff | Standard | Ändern mit |

32| :- | :- | :- |

33| Schreiben | Das Arbeitsverzeichnis, ein benutzerspezifisches temporäres Verzeichnis und [von Ihnen hinzugefügte Verzeichnisse](/docs/de/permissions#additional-directories-grant-file-access-not-configuration). [Geschützte Pfade](#protected-paths) bleiben für Schreibzugriffe gesperrt | [`filesystem.allowWrite`](/docs/de/settings-reference#sandbox-filesystem-allowwrite), [`filesystem.denyWrite`](/docs/de/settings-reference#sandbox-filesystem-denywrite) |

34| Lesen | Der Großteil des Rechners, einschließlich Dateien mit Anmeldedaten wie `~/.ssh` und `~/.aws/credentials` | [`filesystem.denyRead`](/docs/de/settings-reference#sandbox-filesystem-denyread), [`credentials`](#protect-credentials) |

35| Netzwerk | Keine direkte Verbindung nach außen. Verbindungen laufen über einen Proxy auf Ihrem Rechner, der jeden Host mit Ihren erlaubten Domains abgleicht, die zunächst leer sind. Ihr Berechtigungsmodus entscheidet, [was mit anderen Hosts geschieht](#hosts-outside-your-allowed-domains) | [`network.allowedDomains`](/docs/de/settings-reference#sandbox-network-alloweddomains), [`network.deniedDomains`](/docs/de/settings-reference#sandbox-network-denieddomains) |

36| Umgebungsvariablen | Von Claude Code übernommen, einschließlich aller Secrets in dessen Umgebung | [`credentials`](#protect-credentials), [`CLAUDE_CODE_SUBPROCESS_ENV_SCRUB`](/docs/de/env-vars) |

37 

38Claude Code baut die Sandbox auf dem Open-Source-Paket [`@anthropic-ai/sandbox-runtime`](https://github.com/anthropics/sandbox-runtime) auf.

39 

40<h3 id="what-runs-outside-the-sandbox">

41 Was außerhalb der Sandbox läuft

42</h3>

43 

44Die Sandbox umschließt Shell-Befehle. Diese Tools und Prozesse laufen außerhalb davon:

45 

46* **Integrierte Datei- und Web-Tools**: Tools wie Read, Edit, Write, WebFetch und WebSearch folgen stattdessen [Berechtigungsregeln](/docs/de/permissions). Ein `denyRead`-Eintrag hält das Read-Tool nicht auf, und `allowedDomains` schränkt WebFetch nicht ein

47* **Andere Prozesse, die Claude Code startet**: Befehls-[Hooks](/docs/de/hooks), lokale [MCP-Server](/docs/de/mcp), [Plugin-Monitore](/docs/de/plugins/components#monitors), [LSP-Server](/docs/de/tools-reference#lsp-tool-behavior) und Hilfsbefehle wie Ihr [Statuszeilen](/docs/de/statusline)-Befehl und `apiKeyHelper` laufen mit Ihrem vollen Zugriff

48 

49Einige Shell-Befehle laufen je nach Ihren Einstellungen ebenfalls außerhalb der Sandbox:

50 

51* **Befehle, die Sie selbst eingeben**: Ein Befehl, den Sie an der [`!`-Eingabeaufforderung im Shell-Modus](/docs/de/interactive-mode#shell-mode-with-prefix) eingeben, läuft in den meisten Sitzungen ohne Sandbox. Unter [Strikter Sandbox-Modus](#turn-off-the-retry-with-strict-sandbox-mode) sind die Sitzungen aufgeführt, in denen ein von Ihnen eingegebener Befehl in der Sandbox läuft

52* **Ausgenommene Befehle**: Befehle, die mit [`excludedCommands`](#run-commands-outside-the-sandbox-with-excludedcommands) übereinstimmen, laufen ohne Sandbox

53* **Wiederholungsversuche ohne Sandbox**: Claude kann [darum bitten, einen Befehl ohne Sandbox auszuführen](#the-unsandboxed-retry-escape-hatch), in der Regel nachdem er in der Sandbox fehlgeschlagen ist

54 

55Um die Tools, Prozesse und Befehle aus diesem Abschnitt hinter eine gemeinsame Grenze zu stellen, führen Sie den Claude-Code-Prozess selbst in einem [Container, einer virtuellen Maschine oder der Sandbox-Runtime](/docs/de/sandbox-environments) aus.

56 

15<h2 id="get-started">57<h2 id="get-started">

16 Erste Schritte58 Erste Schritte

17</h2>59</h2>

18 60 

19Die Sandbox ist in Claude Code integriert und läuft auf macOS, Linux und WSL2. Native Windows wird nicht unterstützt. Führen Sie Claude Code unter Windows in einer WSL2-Distribution aus.61Die Sandbox ist in Claude Code integriert. Was Sie installieren müssen, hängt von Ihrer Plattform ab:

20 62 

21Auf macOS gibt es nichts zu installieren: Sandboxing verwendet das integrierte Seatbelt-Framework. Auf Linux und WSL2 basiert die Sandbox auf zwei Paketen, die in [Linux und WSL2 einrichten](#set-up-linux-and-wsl2) behandelt werden. Selbst wenn Sie diese noch nicht installiert haben, können Sie mit `/sandbox` beginnen, da sein Panel anzeigt, ob etwas fehlt.63* **macOS**: Das Sandboxing verwendet das integrierte Seatbelt-Framework, sodass Sie direkt mit den Schritten beginnen können

64* **Linux und WSL2**: Die Sandbox benötigt `bubblewrap` und `socat`, wie unter [Linux und WSL2 einrichten](#set-up-linux-and-wsl2) beschrieben. Auch wenn Sie diese noch nicht installiert haben, können Sie mit `/sandbox` beginnen, da dessen Panel anzeigt, ob etwas fehlt

22 65 

23<Steps>66<Steps>

24 <Step title="Führen Sie /sandbox aus">67 <Step title="/sandbox ausführen">

25 Starten Sie eine Claude Code-Sitzung und führen Sie den Befehl `/sandbox` aus:68 Starten Sie eine Claude Code-Sitzung und führen Sie den Befehl `/sandbox` aus:

26 69 

27 ```text theme={null}70 ```text theme={null}

28 /sandbox71 /sandbox

29 ```72 ```

30 73 

31 Dies öffnet das Sandbox-Panel mit drei Registerkarten sowie einer Registerkarte „Dependencies" unter Linux, wenn der optionale Seccomp-Filter fehlt:74 Dadurch wird das Sandbox-Panel mit drei Tabs geöffnet, unter Linux zusätzlich mit einem Tab „Dependencies“, wenn der optionale seccomp-Filter fehlt:

32 75 

33 * **Mode**: Wählen Sie, wie Sandbox-Befehle genehmigt werden, behandelt im nächsten Schritt76 * **Mode**: Legen Sie fest, wie Befehle in der Sandbox genehmigt werden; dies wird im nächsten Schritt beschrieben

34 * **Overrides**: Wählen Sie, ob Befehle, die unter der Sandbox fehlschlagen, auf unsandboxed ausweichen können. Dies ist die Einstellung [`allowUnsandboxedCommands`](/docs/de/settings-reference#sandbox-allowunsandboxedcommands)77 * **Overrides**: Legen Sie fest, ob Befehle, die in der Sandbox fehlschlagen, ersatzweise außerhalb der Sandbox ausgeführt werden dürfen. Dies ist die Einstellung [`allowUnsandboxedCommands`](/docs/de/settings-reference#sandbox-allowunsandboxedcommands)

35 * **Config**: Zeigen Sie die aufgelösten Sandbox-Einstellungen an78 * **Config**: Zeigen Sie die aufgelösten Sandbox-Einstellungen an

36 79 

37 Wenn das Panel nur eine Registerkarte „Dependencies" anzeigt, fehlt ein erforderliches Paket. Installieren Sie es wie in [Linux und WSL2 einrichten](#set-up-linux-and-wsl2) beschrieben, starten Sie Claude Code neu und führen Sie `/sandbox` erneut aus.80 Wenn das Panel nur einen Tab „Dependencies“ anzeigt, fehlt ein erforderliches Paket. Installieren Sie es wie unter [Linux und WSL2 einrichten](#set-up-linux-and-wsl2) beschrieben, starten Sie Claude Code neu und führen Sie `/sandbox` erneut aus.

38 </Step>81 </Step>

39 82 

40 <Step title="Wählen Sie einen Modus">83 <Step title="Einen Modus wählen">

41 Wählen Sie auf der Registerkarte „Mode" Auto-Allow oder reguläre Genehmigungen. Auto-Allow führt Sandbox-Befehle ohne Eingabeaufforderung aus, und reguläre Genehmigungen behalten die regulären Genehmigungseingaben bei, auch wenn Befehle in der Sandbox ausgeführt werden. Siehe [Sandbox-Modi](#sandbox-modes) für die Befehle, die im Auto-Allow-Modus immer noch eingeben.84 Wählen Sie im Tab „Mode“ entweder Auto-Allow oder reguläre Berechtigungen. Auto-Allow führt Befehle in der Sandbox ohne Nachfrage aus, während reguläre Berechtigungen die üblichen Berechtigungsabfragen beibehält, auch wenn Befehle in der Sandbox ausgeführt werden. Unter [Sandbox-Modi](#sandbox-modes) erfahren Sie, bei welchen Befehlen im Auto-Allow-Modus dennoch nachgefragt wird.

42 </Step>85 </Step>

43 86 

44 <Step title="Führen Sie einen Bash-Befehl aus">87 <Step title="Einen Bash-Befehl ausführen">

45 Bitten Sie Claude, einen Befehl auszuführen, z. B. einen Build oder eine Test-Suite. Standardmäßig können Befehle in der Sandbox in das Arbeitsverzeichnis, ein [Temp-Verzeichnis pro Benutzer](/docs/de/env-vars) und alle [Verzeichnisse schreiben, die Sie hinzugefügt haben](/docs/de/permissions#additional-directories-grant-file-access-not-configuration) mit `--add-dir`, `/add-dir` oder `permissions.additionalDirectories`.88 Bitten Sie Claude, einen Befehl auszuführen, etwa einen Build oder eine Testsuite. Standardmäßig können Befehle innerhalb der Sandbox in das Arbeitsverzeichnis, ein [benutzerspezifisches temporäres Verzeichnis](/docs/de/env-vars) und alle [Verzeichnisse schreiben, die Sie](/docs/de/permissions#additional-directories-grant-file-access-not-configuration) mit `--add-dir`, `/add-dir` oder `permissions.additionalDirectories` hinzugefügt haben.

46 89 

47 Wenn ein Befehl zum ersten Mal eine neue Netzwerk-Domain benötigt, fordert Claude Code zur Genehmigung auf; im [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) benennt Claude stattdessen die Hosts, die ein Befehl benötigt, [im Befehl selbst](#per-command-allowed-domains-in-auto-mode) für den Klassifizierer zur Überprüfung damit.90 Wenn ein Befehl zum ersten Mal eine neue Netzwerkdomain benötigt, bittet Claude Code um Genehmigung; im [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) gibt Claude stattdessen die Hosts, die ein Befehl benötigt, [direkt am Befehl](#per-command-allowed-domains-in-auto-mode) an, damit der Klassifikator sie zusammen mit ihm prüft.

48 91 

49 Befehle, die nicht in der Sandbox ausgeführt werden können, fallen auf den regulären Genehmigungsfluss zurück. Claude Code betitelt ihre Genehmigungseingabe mit „Bash-Befehl (unsandboxed)" statt „Bash-Befehl", damit Sie erkennen können, welche Befehle außerhalb der Sandbox ausgeführt wurden. Um diese Grenzen zu erweitern oder zu verengen, siehe [Sandboxing konfigurieren](#configure-sandboxing).92 Wie Sie erweitern oder einschränken, was die Sandbox zulässt, erfahren Sie unter [Sandboxing konfigurieren](#configure-sandboxing).

50 93 

51 Wenn Sandbox-Befehle in einem Container mit `Operation not permitted` fehlschlagen, siehe den Bubblewrap-Eintrag unter [Fehlerbehebung](#troubleshooting).94 Wenn Befehle in der Sandbox innerhalb eines Containers mit `Operation not permitted` fehlschlagen, lesen Sie den Bubblewrap-Eintrag unter [Fehlerbehebung](#troubleshooting).

52 </Step>95 </Step>

53</Steps>96</Steps>

54 97 

55Wenn Sie einen Modus im Panel auswählen, speichert Claude Code ihn in den lokalen Einstellungen Ihres Projekts unter `.claude/settings.local.json`, die für das aktuelle Projekt gelten. Claude Code fügt diese Datei zu Ihrer globalen Gitignore hinzu, wenn es dort eine Einstellung speichert. Um die Sandbox in allen Ihren Projekten zu aktivieren, setzen Sie [`sandbox.enabled`](/docs/de/settings-reference#sandbox-enabled) auf `true` in Ihren Benutzereinstellungen unter `~/.claude/settings.json`. Um Sandboxing für jeden Entwickler in einer Organisation zu erzwingen, verwenden Sie [verwaltete Einstellungen](#enforce-sandboxing-with-managed-settings).98Wenn Sie im Panel einen Modus auswählen, speichert Claude Code ihn in den lokalen Einstellungen Ihres Projekts unter `.claude/settings.local.json`, die für das aktuelle Projekt gelten. Claude Code fügt diese Datei Ihrer globalen gitignore hinzu, wenn es dort eine Einstellung speichert. Um die Sandbox für alle Ihre Projekte zu aktivieren, setzen Sie [`sandbox.enabled`](/docs/de/settings-reference#sandbox-enabled) in Ihren Benutzereinstellungen unter `~/.claude/settings.json` auf `true`. Um das Sandboxing für alle Entwickler einer Organisation durchzusetzen, verwenden Sie [verwaltete Einstellungen](#enforce-sandboxing-with-managed-settings).

56 99 

57Um die Sandbox für eine Sitzung zu ändern, ohne in eine Einstellungsdatei zu schreiben, starten Sie Claude Code mit [`--settings`](/docs/de/settings#change-a-setting-for-one-session). Beispielsweise startet dieser Befehl eine Sandbox-Sitzung, in der Claude einen blockierten Befehl nicht außerhalb der Sandbox erneut versuchen kann:100Um die Sandbox für eine einzelne Sitzung zu ändern, ohne in eine Einstellungsdatei zu schreiben, starten Sie Claude Code mit [`--settings`](/docs/de/settings#change-a-setting-for-one-session). Dieser Befehl startet beispielsweise eine Sitzung mit Sandbox, in der Claude einen blockierten Befehl nicht außerhalb der Sandbox erneut versuchen kann:

58 101 

59```bash theme={null}102```bash theme={null}

60claude --settings '{"sandbox": {"enabled": true, "allowUnsandboxedCommands": false}}'103claude --settings '{"sandbox": {"enabled": true, "allowUnsandboxedCommands": false}}'

61```104```

62 105 

63<Warning>106<Warning>

64 Standardmäßig zeigt Claude Code eine Warnung an und führt Befehle ohne Sandboxing aus, wenn die Sandbox nicht gestartet werden kann, da Abhängigkeiten fehlen oder die Plattform nicht unterstützt wird. Um dies stattdessen zu einem Hard Failure zu machen, setzen Sie [`sandbox.failIfUnavailable`](/docs/de/settings-reference#sandbox-failifunavailable) auf `true`. Dies ist für verwaltete Bereitstellungen vorgesehen, die Sandboxing als Sicherheits-Gate erfordern.107 Wenn die Sandbox nicht starten kann, weil eine Abhängigkeit fehlt oder die Plattform nicht unterstützt wird, führt Claude Code Befehle standardmäßig ohne Sandboxing aus. Damit Claude Code stattdessen beim Start beendet wird, setzen Sie [`sandbox.failIfUnavailable`](/docs/de/settings-reference#sandbox-failifunavailable) auf `true`. Verwaltete Bereitstellungen, die Sandboxing als Sicherheitsvoraussetzung verlangen, können diese Einstellung verwenden.

65</Warning>108</Warning>

66 109 

110<h3 id="confirm-commands-run-inside-the-sandbox">

111 Prüfen, ob Befehle in der Sandbox ausgeführt werden

112</h3>

113 

114Um zu prüfen, ob die Sandbox funktioniert, bitten Sie Claude, jede Zeile der Tabelle auszuführen. Was Sie an der [`!`-Eingabeaufforderung](#what-runs-outside-the-sandbox) eingeben, wird in der Regel außerhalb der Sandbox ausgeführt, daher testet es die Sandbox nicht, wenn Sie eine Zeile selbst eingeben.

115 

116| Befehl | Ergebnis innerhalb der Sandbox |

117| :- | :- |

118| `touch ~/sandbox-probe` | Schlägt unter macOS mit `Operation not permitted` fehl, unter Linux und WSL2 mit `Read-only file system` |

119| `curl --noproxy '*' https://example.com` | Schlägt mit `Could not resolve host` fehl, da der Befehl keine Route am Sandbox-Proxy vorbei hat |

120 

121Wenn Claude anbietet, einen fehlgeschlagenen Befehl außerhalb der Sandbox erneut zu versuchen, lehnen Sie den Wiederholungsversuch ab. Wenn `touch` erfolgreich ist und Ihr Home-Verzeichnis nicht zu den Verzeichnissen gehört, in die Befehle in der Sandbox schreiben dürfen, löschen Sie `~/sandbox-probe`. Führen Sie dann `/sandbox` aus, um zu prüfen, ob die Sandbox aktiviert ist und ihre Abhängigkeiten installiert sind.

122 

67<h3 id="set-up-linux-and-wsl2">123<h3 id="set-up-linux-and-wsl2">

68 Linux und WSL2 einrichten124 Linux und WSL2 einrichten

69</h3>125</h3>

70 126 

71Auf Linux und WSL2 basiert die Sandbox auf zwei Paketen:127Unter Linux und WSL2 benötigt die Sandbox diese Pakete:

72 128 

73* [`bubblewrap`](https://github.com/containers/bubblewrap): das unprivilegierte Sandboxing-Tool, das Dateisystem-Isolation erzwingt129* [`bubblewrap`](https://github.com/containers/bubblewrap): das unprivilegierte Sandboxing-Tool, das die Dateisystemisolation durchsetzt

74* [`socat`](http://www.dest-unreach.org/socat/): das Relay, das verwendet wird, um Netzwerk-Datenverkehr durch den Sandbox-Proxy zu leiten130* [`socat`](http://www.dest-unreach.org/socat/): das Relay, über das der Netzwerkverkehr durch den Sandbox-Proxy geleitet wird

75 131 

76Installieren Sie diese mit dem Paketmanager Ihrer Distribution:132Installieren Sie sie mit dem Paketmanager Ihrer Distribution:

77 133 

78<Tabs>134<Tabs>

79 <Tab title="Ubuntu/Debian">135 <Tab title="Ubuntu/Debian">


89 </Tab>145 </Tab>

90</Tabs>146</Tabs>

91 147 

92Wenn eine Abhängigkeit fehlt, listet die Registerkarte „Dependencies" in `/sandbox` auf, welche von `ripgrep`, `bubblewrap`, `socat` und dem Seccomp-Filter Ihre Plattform nicht hat. Wenn Sie die Registerkarte nach der Installation und dem Neustart von Claude Code nicht sehen, sind alle Abhängigkeiten vorhanden.148Wenn eine Abhängigkeit fehlt, listet der Tab „Dependencies“ in `/sandbox` auf, welche von `ripgrep`, `bubblewrap`, `socat` und dem seccomp-Filter auf Ihrer Plattform fehlen. Wenn Sie den Tab nach der Installation und einem Neustart von Claude Code nicht sehen, sind alle Abhängigkeiten vorhanden.

93 149 

94Ripgrep ist mit der nativen Claude Code-Binärdatei gebündelt. Der Seccomp-Filter ist optional und fügt Unix-Domain-Socket-Blockierung hinzu. Installieren Sie ihn mit `npm install -g @anthropic-ai/sandbox-runtime`, wenn er fehlt.150Ripgrep ist in der nativen Claude Code-Binärdatei enthalten. Der seccomp-Filter ist optional und ergänzt das Blockieren von Unix-Domain-Sockets. Installieren Sie ihn mit `npm install -g @anthropic-ai/sandbox-runtime`, falls er fehlt.

95 151 

96Wenn eine erforderliche Abhängigkeit fehlt, ist die Registerkarte „Dependencies" die einzige angezeigte Registerkarte, bis Sie sie installieren. Wenn nur der optionale Seccomp-Filter fehlt, wird die Registerkarte „Dependencies" neben den anderen Registerkarten angezeigt. Die Abhängigkeitsprüfung läuft beim Start, daher starten Sie Claude Code nach der Installation von Paketen neu, damit `/sandbox` diese erkennt.152Wenn eine erforderliche Abhängigkeit fehlt, ist der Tab „Dependencies“ der einzige angezeigte Tab, bis Sie sie installieren. Wenn nur der optionale seccomp-Filter fehlt, erscheint der Tab „Dependencies“ neben den anderen Tabs. Die Abhängigkeitsprüfung läuft beim Start, starten Sie Claude Code daher nach der Installation von Paketen neu, damit `/sandbox` sie erkennt.

97 153 

98<AccordionGroup>154<AccordionGroup>

99 <Accordion title="Ubuntu 24.04 und später: Erlauben Sie bubblewrap, Benutzer-Namespaces zu erstellen">155 <Accordion title="Ubuntu 24.04 und neuer: bubblewrap das Erstellen von User Namespaces erlauben">

100 Auf Ubuntu 24.04 und später verhindert die Standard-AppArmor-Richtlinie, dass bubblewrap die Benutzer-Namespaces erstellt, die es für die Isolation benötigt.156 Unter Ubuntu 24.04 und neuer verhindert die standardmäßige AppArmor-Richtlinie, dass bubblewrap die User Namespaces erstellt, die es für die Isolation benötigt.

101 157 

102 Um zu überprüfen, ob Ihre Umgebung diese Einschränkung erzwingt, auch in WSL2, führen Sie `sysctl kernel.apparmor_restrict_unprivileged_userns` aus. Wenn der Befehl `0` zurückgibt, überspringen Sie diesen Schritt. Wenn er einen `No such file or directory`-Fehler ausgibt, existiert der Schlüssel nicht und Sie können diesen Schritt überspringen. Wenn er `1` zurückgibt, fügen Sie ein AppArmor-Profil hinzu, das `bwrap` diese Fähigkeit gewährt:158 Um zu prüfen, ob Ihre Umgebung diese Einschränkung durchsetzt, auch innerhalb von WSL2, führen Sie `sysctl kernel.apparmor_restrict_unprivileged_userns` aus. Wenn der Befehl `0` zurückgibt, überspringen Sie diesen Schritt. Wenn er einen `No such file or directory`-Fehler ausgibt, existiert der Schlüssel nicht, und Sie können diesen Schritt überspringen. Wenn er `1` zurückgibt, fügen Sie ein AppArmor-Profil hinzu, das `bwrap` diese Fähigkeit gewährt:

103 159 

104 ```bash theme={null}160 ```bash theme={null}

105 sudo tee /etc/apparmor.d/bwrap > /dev/null <<'EOF'161 sudo tee /etc/apparmor.d/bwrap > /dev/null <<'EOF'


113 EOF169 EOF

114 ```170 ```

115 171 

116 Das Profil gilt nur für `bwrap` selbst, nicht für die Befehle, die es in der Sandbox ausführt. Laden Sie AppArmor neu, um es anzuwenden:172 Das Profil gilt nur für `bwrap` selbst, nicht für die Befehle, die es innerhalb der Sandbox ausführt. Laden Sie AppArmor neu, um es anzuwenden:

117 173 

118 ```bash theme={null}174 ```bash theme={null}

119 sudo systemctl reload apparmor175 sudo systemctl reload apparmor

120 ```176 ```

121 </Accordion>177 </Accordion>

122 178 

123 <Accordion title="WSL2-Hinweise">179 <Accordion title="Hinweise zu WSL2">

124 Überprüfen Sie Ihre WSL-Version mit `wsl -l -v` aus PowerShell. Wenn Sie `Sandboxing requires WSL2` sehen, läuft Ihre Distribution auf WSL1. Aktualisieren Sie sie auf WSL2 oder führen Sie Claude Code ohne Sandboxing aus.180 Prüfen Sie Ihre WSL-Version mit `wsl -l -v` in PowerShell. Wenn Sie `Sandboxing requires WSL2` sehen, läuft Ihre Distribution unter WSL1. Aktualisieren Sie sie auf WSL2 oder führen Sie Claude Code ohne Sandboxing aus.

125 181 

126 Auf WSL2 übergibt WSL den Start einer Windows-Binärdatei wie `cmd.exe`, `powershell.exe` oder etwas unter `/mnt/c/` über einen Unix-Socket an den Windows-Host, daher folgt, ob ein Sandbox-Befehl einen starten kann, den [Unix-Socket-Einstellungen](/docs/de/settings-reference#sandbox-network-allowunixsockets) der Sandbox: Der optionale Seccomp-Filter muss installiert sein, um den Socket überhaupt zu blockieren. Um diese Starts zu erlauben, setzen Sie `allowAllUnixSockets`; um sie vollständig aus der Sandbox zu halten, fügen Sie den Befehl zu [`excludedCommands`](/docs/de/settings-reference#sandbox-excludedcommands) hinzu.182 Unter WSL2 übergibt WSL den Start einer Windows-Binärdatei wie `cmd.exe`, `powershell.exe` oder von allem unter `/mnt/c/` über einen Unix-Socket an den Windows-Host. Ob ein Befehl in der Sandbox eine solche Datei starten kann, richtet sich daher nach den [Unix-Socket-Einstellungen](/docs/de/settings-reference#sandbox-network-allowunixsockets) der Sandbox: Der optionale seccomp-Filter muss installiert sein, damit der Socket überhaupt blockiert wird. Um diese Starts zu erlauben, setzen Sie `allowAllUnixSockets`, wodurch jeder Unix-Socket für Befehle in der Sandbox geöffnet wird.

127 </Accordion>183 </Accordion>

128</AccordionGroup>184</AccordionGroup>

129 185 


131 Sandbox-Modi187 Sandbox-Modi

132</h3>188</h3>

133 189 

134Claude Code bietet zwei Sandbox-Modi. In beiden erzwingt die Sandbox die gleichen Dateisystem- und Netzwerk-Einschränkungen; der Unterschied liegt nur darin, ob Sandbox-Befehle automatisch genehmigt oder explizit genehmigt werden müssen.190Claude Code bietet zwei Sandbox-Modi. In beiden setzt die Sandbox dieselben Dateisystem- und Netzwerkeinschränkungen durch; der Unterschied besteht nur darin, ob Befehle in der Sandbox automatisch genehmigt werden oder eine ausdrückliche Berechtigung erfordern.

135 191 

136<h4 id="auto-allow-mode">192<h4 id="auto-allow-mode">

137 Auto-Allow-Modus193 Auto-Allow-Modus

138</h4>194</h4>

139 195 

140Wenn ein Befehl in der Sandbox ausgeführt werden kann, führt Claude Code ihn in der Sandbox aus und genehmigt ihn automatisch, ohne Ihre Genehmigung zu fragen. Befehle, die nicht in der Sandbox ausgeführt werden können, z. B. solche, die Netzwerkzugriff auf nicht zulässige Hosts benötigen, fallen auf den regulären Genehmigungsfluss zurück, bei dem Claude Code Ihre [Genehmigungsregeln](/docs/de/permissions) überprüft und jeden Befehl, den diese Regeln nicht bereits zulassen, mit einer Eingabeaufforderung im Manual-Modus blockiert.196Claude Code genehmigt einen Befehl automatisch und ohne Nachfrage, wenn er innerhalb der Sandbox ausgeführt wird. Ein Befehl durchläuft den regulären [Berechtigungsablauf](/docs/de/permissions), wenn er außerhalb der Sandbox ausgeführt wird, weil er auf [`excludedCommands`](#run-commands-outside-the-sandbox-with-excludedcommands) passt oder weil Claude [ihn ohne Sandbox erneut versucht](#the-unsandboxed-retry-escape-hatch).

197 

198Ein Befehl in der Sandbox, der eine Verbindung zu einem Host herstellt, den Sie nicht erlaubt haben, bleibt in der Sandbox. Unter [Hosts außerhalb Ihrer erlaubten Domains](#hosts-outside-your-allowed-domains) erfahren Sie, wer entscheidet, ob die Verbindung zustande kommt.

141 199 

142Selbst im Auto-Allow-Modus gelten folgende Punkte:200Auch im Auto-Allow-Modus gilt weiterhin Folgendes:

143 201 

144* Explizite [Deny-Regeln](/docs/de/permissions) werden immer respektiert202* Ausdrückliche [Verweigerungsregeln](/docs/de/permissions) werden immer beachtet

145* `rm`- oder `rmdir`-Befehle, die auf einen [kritischen Pfad](/docs/de/permission-modes#critical-paths) abzielen, durchlaufen immer noch den regulären Genehmigungsfluss203* `rm`- oder `rmdir`-Befehle, die auf einen [kritischen Pfad](/docs/de/permission-modes#critical-paths) zielen, durchlaufen weiterhin den regulären Berechtigungsablauf

146* Inhaltsgebundene [Ask-Regeln](/docs/de/permissions) wie `Bash(git push *)` erzwingen immer noch eine Eingabeaufforderung, auch für Sandbox-Befehle204* Inhaltsbezogene [Nachfrageregeln](/docs/de/permissions) wie `Bash(git push *)` erzwingen weiterhin eine Nachfrage, auch für Befehle in der Sandbox

147* Eine einfache `Bash` Ask-Regel oder die entsprechende `Bash(*)` Form wird für Befehle übersprungen, die in der Sandbox ausgeführt werden; sie gilt immer noch für Befehle, die auf den regulären Genehmigungsfluss zurückfallen. Im [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode) wird die Regel nicht übersprungen: Sie fordert auch für Sandbox-Befehle auf, einschließlich schreibgeschützter. Vor v2.1.212 galt das Überspringen auch im Plan-Modus205* Eine einfache `Bash`-Nachfrageregel oder die gleichwertige Form `Bash(*)` wird für Befehle, die in der Sandbox ausgeführt werden, übersprungen; sie gilt weiterhin für Befehle, die auf den regulären Berechtigungsablauf zurückfallen. Im [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode) wird die Regel nicht übersprungen: Sie fragt auch bei Befehlen in der Sandbox nach, einschließlich nur lesender Befehle. Vor v2.1.212 galt das Überspringen auch im Plan-Modus

148 206 

149<Info>207<Info>

150 Der Auto-Allow-Modus funktioniert unabhängig von Ihrer Genehmigungsmodus-Einstellung, mit drei Ausnahmen: [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode), ein Auto-Modus-Befehl, der [pro-Befehl zulässige Domains](#per-command-allowed-domains-in-auto-mode) trägt, und [serverseitige Klassifizierer-Überprüfung](/docs/de/permission-modes#how-the-classifier-evaluates-actions) von Sandbox-Befehlen im Auto-Modus. Selbst wenn Sie sich nicht im „Bearbeitungen akzeptieren"-Modus befinden, werden Sandbox-Bash-Befehle automatisch ausgeführt, wenn Auto-Allow aktiviert ist. Dies bedeutet, dass Bash-Befehle, die Dateien innerhalb der Sandbox-Grenzen ändern, ohne Eingabeaufforderung ausgeführt werden, auch im Manual-Modus, wo die Datei-Bearbeitungs-Tools eine Eingabeaufforderung erfordern würden.208 Der Auto-Allow-Modus funktioniert unabhängig von Ihrer Einstellung für den Berechtigungsmodus, mit drei Ausnahmen: dem [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode), einem Befehl im Auto-Modus mit [befehlsspezifisch erlaubten Domains](#per-command-allowed-domains-in-auto-mode) und der [serverseitigen Prüfung durch den Klassifikator](/docs/de/permission-modes#how-the-classifier-evaluates-actions) für Befehle in der Sandbox im Auto-Modus. Auch wenn Sie sich nicht im „accept edits“-Modus befinden, werden Bash-Befehle in der Sandbox automatisch ausgeführt, wenn Auto-Allow aktiviert ist. Das bedeutet, dass Bash-Befehle, die Dateien innerhalb der Sandbox-Grenzen ändern, ohne Nachfrage ausgeführt werden, selbst im Manual-Modus, in dem die Tools zur Dateibearbeitung nachfragen würden.

151 209 

152 Im Plan-Modus erweitert Auto-Allow die Genehmigungen nicht; siehe [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode) für die Verwaltung von Befehlen durch Claude Code während der Planung. Vor v2.1.212 führte Auto-Allow Sandbox-Befehle auch im Plan-Modus ohne Eingabeaufforderung aus.210 Im Plan-Modus erweitert Auto-Allow die Genehmigungen nicht; unter [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode) erfahren Sie, wie Claude Code Befehle während der Planung kontrolliert. Vor v2.1.212 führte Auto-Allow Befehle in der Sandbox auch im Plan-Modus ohne Nachfrage aus.

153</Info>211</Info>

154 212 

155<h4 id="regular-permissions-mode">213<h4 id="regular-permissions-mode">

156 Regulärer Genehmigungsmodus214 Modus für reguläre Berechtigungen

157</h4>215</h4>

158 216 

159Alle Bash-Befehle durchlaufen den regulären Genehmigungsfluss, auch wenn sie in der Sandbox ausgeführt werden. Dies bietet mehr Kontrolle, erfordert aber mehr Genehmigungen.217Alle Bash-Befehle durchlaufen den regulären Berechtigungsablauf, auch wenn sie in der Sandbox ausgeführt werden. Dies bietet mehr Kontrolle, erfordert aber mehr Genehmigungen.

160 218 

161<h4 id="the-unsandboxed-retry-escape-hatch">219<h4 id="the-unsandboxed-retry-escape-hatch">

162 Die Fluchtluke für unsandboxed-Wiederversuche220 Der Ausweg über den Wiederholungsversuch ohne Sandbox

163</h4>221</h4>

164 222 

165Einige Befehle können überhaupt nicht in der Sandbox ausgeführt werden, z. B. Tools, die nicht kompatibel sind oder einen Host benötigen, den Sie nicht zulässig gemacht haben. Claude Code meldet Sandbox-Verstöße im Ergebnis des blockierten Befehls und nennt den Pfad oder Host, den die Sandbox verweigert hat, damit Claude sieht, was die Sandbox blockiert hat. Anstatt die Aufgabe fehlschlagen zu lassen oder Sie zu zwingen, Sandboxing auszuschalten, enthält Claude Code eine Fluchtluke: Claude analysiert den Verstoß und kann den Befehl mit dem Parameter `dangerouslyDisableSandbox` erneut versuchen.223Der Wiederholungsversuch ohne Sandbox ist ein Ausweg für Befehle, die innerhalb der Sandbox fehlschlagen, etwa Tools, die nicht mit ihr kompatibel sind. Wenn die Sandbox eine Netzwerkverbindung blockiert, nennt Claude Code den abgelehnten Host im Ergebnis des Befehls, sodass Claude sieht, was blockiert wurde. Claude analysiert den Fehler und versucht den Befehl möglicherweise mit dem Parameter `dangerouslyDisableSandbox` erneut.

166 224 

167Der erneut versuchte Befehl läuft außerhalb der Sandbox, daher durchläuft er den regulären Genehmigungsfluss. Im Manual-Modus erhalten Sie eine Bestätigungseingabe. Im [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) bewertet der Klassifizierer den zugrunde liegenden Befehl. Während [`permissions.blockReadsOutsideWorkingDirectories`](/docs/de/settings-reference#permissions-blockreadsoutsideworkingdirectories) aktiviert ist, fordert ein Wiederversuch, der Genehmigung benötigt, um außerhalb der Sandbox ausgeführt zu werden, Sie stattdessen auf. Um bei jedem unsandboxed-Wiederversuch auch im Auto-Modus aufgefordert zu werden, fügen Sie eine [Ask-Regel](/docs/de/permissions#match-by-input-parameter) für `Bash(dangerouslyDisableSandbox:true)` hinzu.225Der erneut versuchte Befehl wird ohne Sandbox ausgeführt. In einer interaktiven Terminal-Sitzung hängt es von Ihrem Berechtigungsmodus ab, wer ihn genehmigt:

168 226 

169Sie können diese Fluchtluke deaktivieren, indem Sie `"allowUnsandboxedCommands": false` in Ihren [Sandbox-Einstellungen](/docs/de/settings-reference#sandbox-settings) setzen. Wenn die Fluchtluke deaktiviert ist, ignoriert Claude Code den Parameter `dangerouslyDisableSandbox`, und jeder Befehl, den Claude ausführt, muss in der Sandbox ausgeführt werden, es sei denn, Sie haben ihn in `excludedCommands` aufgelistet. Die Registerkarte `/sandbox` **Overrides** zeigt diese Einstellung als **Strict sandbox mode** an.227* **`bypassPermissions`-Modus**: Der Wiederholungsversuch wird ohne Nachfrage ausgeführt

228* **Manual-Modus und `acceptEdits`-Modus**: Sie erhalten eine Berechtigungsabfrage mit dem Titel „Bash command (unsandboxed)“

229* **[Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode)**: Ein separates Klassifikator-Modell bewertet den zugrunde liegenden Befehl

230* **`dontAsk`-Modus**: Claude Code lehnt den Wiederholungsversuch ab

231* **Plan-Modus**: Siehe [wie Claude Code Befehle während der Planung kontrolliert](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode)

170 232 

171Der Strict-Sandbox-Modus gilt für die Befehle, die Claude ausführt. Befehle, die Sie selbst an der [`!` Shell-Modus-Eingabeaufforderung](/docs/de/interactive-mode#shell-mode-with-prefix) eingeben, laufen außerhalb der Sandbox, es sei denn, die Sitzung ist eine dieser:233Diese Regeln und Einstellungen ändern, wer den Wiederholungsversuch genehmigt:

234 

235* **Eine passende Erlaubnisregel**: Wenn eine Erlaubnisregel wie `Bash(curl *)` auf den Befehl passt, genehmigt sie auch den Wiederholungsversuch, sodass der Befehl ohne Nachfrage außerhalb der Sandbox ausgeführt wird

236* **Eine Nachfrageregel für den Parameter**: Fügen Sie eine [Nachfrageregel](/docs/de/permissions#match-by-input-parameter) für `Bash(dangerouslyDisableSandbox:true)` hinzu, damit bei Bash-Wiederholungsversuchen nachgefragt wird. Sie erhalten die Nachfrage auch im Auto-Modus und im `bypassPermissions`-Modus, und die Regel hat Vorrang vor einer passenden Erlaubnisregel

237* **[`permissions.blockReadsOutsideWorkingDirectories`](/docs/de/settings-reference#permissions-blockreadsoutsideworkingdirectories)**: Unter [Aktionen, die kein Modus automatisch genehmigt](/docs/de/permission-modes#actions-no-mode-auto-approves) erfahren Sie, bei welchen Wiederholungsversuchen nachgefragt wird, solange diese Einstellung aktiv ist

238 

239<h4 id="turn-off-the-retry-with-strict-sandbox-mode">

240 Den Wiederholungsversuch mit dem strikten Sandbox-Modus deaktivieren

241</h4>

172 242 

173* **Eine [Hintergrund-Sitzung](/docs/de/agent-view)**: Der Strict-Sandbox-Modus deckt auch Shell-Modus-Befehle ab243Sie können den Wiederholungsversuch ohne Sandbox deaktivieren, indem Sie in Ihren [Sandbox-Einstellungen](/docs/de/settings-reference#sandbox-settings) `"allowUnsandboxedCommands": false` setzen. Bei deaktiviertem Wiederholungsversuch ignoriert Claude Code den Parameter `dangerouslyDisableSandbox`. Solange die Sandbox läuft, werden die Befehle, die Claude ausführt, dann in der Sandbox ausgeführt, sofern sie nicht auf einen `excludedCommands`-Eintrag passen. Damit Claude Code keine Befehle ohne Sandbox ausführt, wenn die Sandbox nicht starten kann, setzen Sie zusätzlich [`failIfUnavailable`](/docs/de/settings-reference#sandbox-failifunavailable). Der Tab **Overrides** in `/sandbox` zeigt diese Einstellung als **Strict sandbox mode** an.

174* **Eine Linux-Sitzung mit [`CLAUDE_CODE_SUBPROCESS_ENV_SCRUB`](/docs/de/env-vars#variables) gesetzt**: Jeder Befehl wird in der Sandbox ausgeführt, einschließlich Shell-Modus-Befehle

175 244 

176Vor v2.1.260 sandboxte der Strict-Sandbox-Modus Shell-Modus-Befehle in jeder Sitzung.245Ein `false` in Ihren Benutzereinstellungen, in `--settings` oder in verwalteten Einstellungen bleibt bestehen, auch wenn die Einstellungen eines Projekts `true` setzen. Ein `false` in Ihren Benutzereinstellungen macht die Sandbox nicht administratorpflichtig, sodass die übrigen Sandbox-Einstellungen eines Projekts weiterhin gelten. Vor v2.1.285 überschrieb ein `true` eines Projekts ein `false` in Ihren Benutzereinstellungen.

246 

247Wenn Sie oder Ihr Administrator den Wiederholungsversuch in verwalteten Einstellungen oder mit dem Flag `--settings` deaktivieren, wird die Sandbox administratorpflichtig. Claude Code ignoriert dann die Einstellungen in den Dateien eines Repositorys, die die Sandbox lockern, einschließlich `excludedCommands`-Einträgen. Unter [Repository-Einstellungen bei einer administratorpflichtigen Sandbox](#repository-settings-under-an-admin-required-sandbox) sind sie aufgeführt.

248 

249Der strikte Sandbox-Modus gilt für die Befehle, die Claude ausführt. Befehle, die Sie selbst an der Eingabeaufforderung des [`!`-Shell-Modus](/docs/de/interactive-mode#shell-mode-with-prefix) eingeben, werden außerhalb der Sandbox ausgeführt, es sei denn, die Sitzung ist eine der folgenden:

250 

251* **Eine [Hintergrundsitzung](/docs/de/agent-view)**: Der strikte Sandbox-Modus umfasst auch Befehle im Shell-Modus

252* **Eine Linux-Sitzung, in der [`CLAUDE_CODE_SUBPROCESS_ENV_SCRUB`](/docs/de/env-vars#variables) gesetzt ist**: Jeder Befehl wird in der Sandbox ausgeführt, einschließlich Befehlen im Shell-Modus

253 

254Vor v2.1.260 führte der strikte Sandbox-Modus Befehle im Shell-Modus in jeder Sitzung in der Sandbox aus.

177 255 

178<h4 id="temporary-directories">256<h4 id="temporary-directories">

179 Temporäre Verzeichnisse257 Temporäre Verzeichnisse

180</h4>258</h4>

181 259 

182Ein Temp-Verzeichnis pro Benutzer ist standardmäßig in der Sandbox beschreibbar, zusammen mit dem Arbeitsverzeichnis. Sofern Sie nicht [Dateisystem-Isolation deaktivieren](#disable-filesystem-isolation), setzt Claude Code `$TMPDIR` auf dieses Verzeichnis für Sandbox-Befehle, sodass Tools, die temporäre Dateien schreiben, ohne zusätzliche Konfiguration funktionieren.260Ein benutzerspezifisches temporäres Verzeichnis ist innerhalb der Sandbox standardmäßig beschreibbar, zusätzlich zum Arbeitsverzeichnis. Sofern Sie die [Dateisystemisolation nicht deaktivieren](#disable-filesystem-isolation), setzt Claude Code `$TMPDIR` für Befehle in der Sandbox auf dieses Verzeichnis, sodass Tools, die temporäre Dateien schreiben, ohne zusätzliche Konfiguration funktionieren.

183 261 

184Unsandboxed-Befehle erben Ihr Shell-`$TMPDIR`, wenn es gesetzt ist, daher lösen Sandbox- und Unsandboxed-Befehle `$TMPDIR` in verschiedene Verzeichnisse auf, während Dateisystem-Isolation aktiviert ist. Wenn Ihre Shell `$TMPDIR` nicht gesetzt oder leer lässt, erhält ein Unsandboxed-Befehl, der auf `$TMPDIR` verweist, Ihre [`CLAUDE_CODE_TMPDIR`](/docs/de/env-vars)-Überschreibung oder das Temp-Verzeichnis des Betriebssystems, wenn Sie keine gesetzt haben oder die Überschreibung ein langer Pfad ist, damit die Variable nicht zu einer leeren Zeichenkette expandiert. Um temporäre Dateien zwischen den beiden zu übergeben, schreiben Sie sie stattdessen unter das Arbeitsverzeichnis.262Befehle außerhalb der Sandbox übernehmen das `$TMPDIR` Ihrer Shell, sofern es gesetzt ist. Solange die Dateisystemisolation aktiv ist, lösen Befehle innerhalb und außerhalb der Sandbox `$TMPDIR` daher in unterschiedliche Verzeichnisse auf. Wenn Ihre Shell `$TMPDIR` nicht setzt oder leer lässt, erhält ein Befehl außerhalb der Sandbox, der auf `$TMPDIR` verweist, Ihre Überschreibung [`CLAUDE_CODE_TMPDIR`](/docs/de/env-vars) oder das temporäre Verzeichnis des Betriebssystems, wenn Sie keine festgelegt haben oder die Überschreibung ein langer Pfad ist, sodass die Variable nicht zu einer leeren Zeichenfolge expandiert wird. Um temporäre Dateien zwischen beiden auszutauschen, schreiben Sie sie stattdessen unterhalb des Arbeitsverzeichnisses.

185 263 

186<h2 id="configure-sandboxing">264<h2 id="configure-sandboxing">

187 Sandboxing konfigurieren265 Sandboxing konfigurieren

188</h2>266</h2>

189 267 

190Passen Sie das Sandbox-Verhalten durch Ihre `settings.json`-Datei an. Siehe [Einstellungen](/docs/de/settings-reference#sandbox-settings) für die vollständige Konfigurationsreferenz.268Passen Sie das Verhalten der Sandbox über Ihre `settings.json`-Datei an. Die vollständige Konfigurationsreferenz finden Sie unter [Einstellungen](/docs/de/settings-reference#sandbox-settings).

191 269 

192Standardmäßig können Sandbox-Befehle in das aktuelle Arbeitsverzeichnis, das Sitzungs-Temp-Verzeichnis und alle [Verzeichnisse schreiben, die Sie hinzugefügt haben](/docs/de/permissions#additional-directories-grant-file-access-not-configuration) mit `--add-dir`, `/add-dir` oder `permissions.additionalDirectories`. Wenn Subprozess-Befehle wie `kubectl`, `terraform` oder `npm` außerhalb dieser Verzeichnisse schreiben müssen, verwenden Sie `sandbox.filesystem.allowWrite`, um Zugriff auf spezifische Pfade zu gewähren:270Standardmäßig können in der Sandbox ausgeführte Befehle in das aktuelle Arbeitsverzeichnis, das benutzerspezifische temporäre Verzeichnis und alle [Verzeichnisse schreiben, die Sie](/docs/de/permissions#additional-directories-grant-file-access-not-configuration) mit `--add-dir`, `/add-dir` oder `permissions.additionalDirectories` hinzugefügt haben. Wenn Unterprozessbefehle wie `kubectl`, `terraform` oder `npm` außerhalb dieser Verzeichnisse schreiben müssen, verwenden Sie `sandbox.filesystem.allowWrite`, um Zugriff auf bestimmte Pfade zu gewähren:

193 271 

194```json theme={null}272```json theme={null}

195{273{


202}280}

203```281```

204 282 

205Diese Pfade werden auf OS-Ebene durchgesetzt, daher respektieren alle Befehle, die in der Sandbox ausgeführt werden, einschließlich ihrer Kindprozesse, diese. Dies ist der empfohlene Ansatz, wenn ein Tool Schreibzugriff auf einen bestimmten Ort benötigt, anstatt das Tool mit `excludedCommands` vollständig aus der Sandbox auszuschließen.283Diese Pfade werden auf Betriebssystemebene durchgesetzt, sodass alle in der Sandbox ausgeführten Befehle einschließlich ihrer Kindprozesse sie beachten. Dies ist der empfohlene Ansatz, wenn ein Tool Schreibzugriff auf einen bestimmten Ort benötigt, anstatt das Tool mit `excludedCommands` vollständig von der Sandbox auszunehmen.

206 284 

207Wenn Sie das gleiche Dateisystem-Array in mehreren [Einstellungs-Scopes](/docs/de/settings#settings-precedence) definieren, führt Claude Code diese zusammen und kombiniert Pfade aus jedem Scope, anstatt das Array eines Scopes durch das eines anderen zu ersetzen.285Wenn Sie dasselbe Dateisystem-Array in mehreren [Einstellungs-Geltungsbereichen](/docs/de/settings#settings-precedence) definieren, führt Claude Code diese zusammen und kombiniert die Pfade aus jedem Geltungsbereich, anstatt das Array eines Geltungsbereichs durch das eines anderen zu ersetzen.

208 286 

209Wenn Sie eine Quelle mit [`--setting-sources`](/docs/de/cli-reference) in der CLI oder [`settingSources`](/docs/de/agent-sdk/claude-code-features#control-filesystem-settings-with-settingsources) im Agent SDK ausschließen, ignoriert Claude Code ihre `sandbox.filesystem`-Einträge, ihre `Edit`-Genehmigungsregeln und ihre `Read`-Ablehnungsregeln beim Aufbau der Sandbox-Konfiguration. Erfordert Claude Code v2.1.246 oder später.287Wenn Sie eine Quelle mit [`--setting-sources`](/docs/de/cli-reference) in der CLI oder mit [`settingSources`](/docs/de/agent-sdk/claude-code-features#control-filesystem-settings-with-settingsources) im Agent SDK ausschließen, ignoriert Claude Code beim Erstellen der Sandbox-Konfiguration deren `sandbox.filesystem`-Einträge, deren `Edit`-Berechtigungsregeln und deren `Read`-deny-Regeln. Erfordert Claude Code v2.1.246 oder höher.

210 288 

211Wenn Sie diese Dateisystem-Listen während einer Sitzung bearbeiten, [wendet Claude Code die Änderung auf die laufende Sitzung an](/docs/de/settings#when-edits-take-effect), daher wird der nächste Sandbox-Befehl unter den neuen Pfaden ausgeführt.289Wenn Sie diese Dateisystemlisten während einer Sitzung bearbeiten, [wendet Claude Code die Änderung auf die laufende Sitzung an](/docs/de/settings#when-edits-take-effect), sodass der nächste in der Sandbox ausgeführte Befehl mit den neuen Pfaden läuft.

212 290 

213Pfad-Präfixe steuern, wie Pfade aufgelöst werden:291Pfadpräfixe steuern, wie Pfade aufgelöst werden:

214 292 

215| Präfix | Bedeutung | Beispiel |293| Präfix | Bedeutung | Beispiel |

216| :- | :- | :- |294| :- | :- | :- |

217| `/` | Absoluter Pfad vom Dateisystem-Root | `/tmp/build` bleibt `/tmp/build` |295| `/` | Absoluter Pfad ab dem Dateisystem-Stammverzeichnis | `/tmp/build` bleibt `/tmp/build` |

218| `~/` | Relativ zum Home-Verzeichnis | `~/.kube` wird zu `$HOME/.kube` |296| `~/` | Relativ zum Home-Verzeichnis | `~/.kube` wird zu `$HOME/.kube` |

219| `./` oder kein Präfix | Relativ zum Projekt-Root für Projekt-Einstellungen oder zu `~/.claude` für Benutzer-Einstellungen | `./output` in `.claude/settings.json` wird zu `<project-root>/output` |297| `./` oder kein Präfix | Relativ zum Projektstammverzeichnis bei Projekteinstellungen oder zu `~/.claude` bei Benutzereinstellungen | `./output` in `.claude/settings.json` wird zu `<project-root>/output` aufgelöst |

220 298 

221Diese Syntax unterscheidet sich von [Read- und Edit-Genehmigungsregeln](/docs/de/permissions#read-and-edit), die `//path` für absolut und `/path` für projekt-relativ verwenden. Sandbox-Dateisystem-Pfade verwenden Standard-Konventionen: `/tmp/build` ist absolut. Wie Claude Code einen nachgestellten Schrägstrich oder einen Platzhalter in diesen Pfaden behandelt, siehe [Sandbox-Pfad-Präfixe](/docs/de/settings-reference#sandbox-path-prefixes).299Diese Syntax unterscheidet sich von den [Berechtigungsregeln für Read und Edit](/docs/de/permissions#read-and-edit), die `//path` für absolute und `/path` für projektrelative Pfade verwenden. Dateisystempfade der Sandbox folgen den üblichen Konventionen: `/tmp/build` ist absolut. Wie Claude Code einen abschließenden Schrägstrich oder einen Platzhalter in diesen Pfaden behandelt, erfahren Sie unter [Sandbox-Pfadpräfixe](/docs/de/settings-reference#sandbox-path-prefixes).

222 300 

223Sie können auch Schreib- oder Lesezugriff mit `sandbox.filesystem.denyWrite` und `sandbox.filesystem.denyRead` blockieren und spezifische Pfade innerhalb einer blockierten Region mit `sandbox.filesystem.allowRead` erneut zulassen. Wenn sich Lesevorgänge überlappen, gewinnt der spezifischere Pfad:301Sie können Schreib- oder Lesezugriff auch mit `sandbox.filesystem.denyWrite` und `sandbox.filesystem.denyRead` verweigern und bestimmte Pfade innerhalb eines gesperrten Bereichs mit `sandbox.filesystem.allowRead` wieder freigeben. Wenn sich Leseregeln überschneiden, gilt die Regel mit dem engeren Pfad:

224 302 

225| Beispielregeln | Ergebnis |303| Beispielregeln | Ergebnis |

226| :- | :- |304| :- | :- |

227| `"denyRead": ["~/"]` mit `"allowRead": ["~/projects"]` | `~/projects` ist lesbar und der Rest des Home-Verzeichnisses bleibt blockiert. Die engere Zulassung öffnet diesen Teil der blockierten Region erneut |305| `"denyRead": ["~/"]` mit `"allowRead": ["~/projects"]` | `~/projects` ist lesbar, und der Rest des Home-Verzeichnisses bleibt gesperrt. Die engere allow-Regel öffnet diesen Teil des gesperrten Bereichs wieder |

228| `"allowRead": ["~/"]` mit `"denyRead": ["~/.env"]` | `~/.env` bleibt blockiert und der Rest des Home-Verzeichnisses ist lesbar. Eine genaue Blockierung gilt innerhalb einer breiteren Zulassung, daher kann eine breite Zulassung ein Geheimnis nicht stillschweigend erneut offenlegen |306| `"allowRead": ["~/"]` mit `"denyRead": ["~/.env"]` | `~/.env` bleibt gesperrt, und der Rest des Home-Verzeichnisses ist lesbar. Die deny-Regel gilt auch innerhalb einer weiter gefassten allow-Regel, sodass eine breite allow-Regel ein Geheimnis nicht unbemerkt wieder freilegen kann |

229| `"allowRead": ["~/"]` mit `"denyRead": ["~/**/.env"]` | Jede `.env` unter dem Home-Verzeichnis bleibt blockiert und der Rest ist lesbar. Ein [Platzhalter-Deny](/docs/de/settings-reference#sandbox-path-prefixes) gilt innerhalb einer breiteren Zulassung genauso wie ein genauer Pfad |307| `"allowRead": ["~/"]` mit `"denyRead": ["~/**/.env"]` | Jede `.env` unterhalb des Home-Verzeichnisses bleibt gesperrt, und der Rest ist lesbar. Eine [deny-Regel mit Platzhalter](/docs/de/settings-reference#sandbox-path-prefixes) gilt innerhalb einer weiter gefassten allow-Regel genauso wie ein exakter Pfad |

230 308 

231Das folgende Beispiel blockiert das Lesen aus dem gesamten Home-Verzeichnis und erlaubt gleichzeitig Lesevorgänge aus dem aktuellen Projekt. Platzieren Sie es in der Datei `.claude/settings.json` Ihres Projekts, da der relative Pfad `.` nur zum Projekt-Root aufgelöst wird, wenn die Konfiguration in Projekt-Einstellungen lebt:309Das folgende Beispiel sperrt das Lesen aus dem gesamten Home-Verzeichnis, erlaubt aber weiterhin das Lesen aus dem aktuellen Projekt. Legen Sie es in der `.claude/settings.json` Ihres Projekts ab, da der relative Pfad `.` nur dann zum Projektstammverzeichnis aufgelöst wird, wenn sich die Konfiguration in den Projekteinstellungen befindet:

232 310 

233```json theme={null}311```json theme={null}

234{312{


242}320}

243```321```

244 322 

245Wenn Sie die gleiche Konfiguration in `~/.claude/settings.json` platzieren würden, würde `.` stattdessen zu `~/.claude` aufgelöst, und Projektdateien würden durch die `denyRead`-Regel blockiert bleiben.323Würden Sie dieselbe Konfiguration in `~/.claude/settings.json` ablegen, würde `.` stattdessen zu `~/.claude` aufgelöst, und Projektdateien blieben durch die `denyRead`-Regel gesperrt.

324 

325Um Befehlen in der Sandbox den Lesezugriff auf Home-Verzeichnisse und eingebundene Volumes zu verweigern und die Arbeitsverzeichnisse dennoch lesbar zu halten, setzen Sie [`permissions.blockReadsOutsideWorkingDirectories`](/docs/de/settings-reference#permissions-blockreadsoutsideworkingdirectories), anstatt Pfadregeln zu schreiben.

326 

327<h3 id="run-commands-outside-the-sandbox-with-excludedcommands">

328 Befehle mit `excludedCommands` außerhalb der Sandbox ausführen

329</h3>

330 

331Tragen Sie ein Befehlsmuster in [`sandbox.excludedCommands`](/docs/de/settings-reference#sandbox-excludedcommands) ein, um passende Befehle außerhalb der Sandbox auszuführen, also ohne Dateisystembeschränkungen und ohne Netzwerk-Proxy. Verwenden Sie dies für ein Tool, das innerhalb der Sandbox nicht funktioniert und dem Sie Ihren vollen Zugriff anvertrauen. Ein Tool, das nur ein weiteres Verzeichnis oder einen weiteren Host benötigt, funktioniert möglicherweise mit `allowWrite` oder `allowedDomains`, wodurch der Befehl in der Sandbox bleibt.

332 

333Dieses Beispiel nimmt `docker compose`-Befehle aus der Sandbox heraus. Speichern Sie es in `~/.claude/settings.json`, um es auf alle Ihre Projekte anzuwenden:

334 

335```json theme={null}

336{

337 "sandbox": {

338 "enabled": true,

339 "excludedCommands": ["docker compose *"]

340 }

341}

342```

343 

344Claude Code prüft Ihre Einträge bei jedem Bash- und Monitor-Aufruf. Ein Aufruf ist die gesamte Befehlszeile, die Claude sendet, und kann mehrere Befehle verketten. Die folgenden Regeln entscheiden, ob ein Aufruf die Sandbox verlässt:

345 

346* **Beenden Sie das Muster mit ` *`**: Einträge verwenden dieselbe Syntax wie eine `Bash(...)`-[Berechtigungsregel](/docs/de/permissions#permission-rule-syntax), bei der ein Muster ohne Platzhalter eine exakte Übereinstimmung ist. `docker` passt nur auf `docker` ohne Argumente. `docker *` passt auf `docker` mit oder ohne Argumente

347* **Jeder Befehl im Aufruf muss passen**: `npm ci && docker compose build` bleibt in der Sandbox, sofern kein anderer Eintrag `npm ci` abdeckt

348* **Claude Code gleicht den Text des Aufrufs ab**: Ein Skript oder `make`-Target, das intern `docker` aufruft, passt nicht, ebenso wenig `/usr/local/bin/docker`

349* **Manche Aufrufe bleiben in der Sandbox**: Eine Umleitung in eine Datei, ein `cd` oder eine Befehlssubstitution wie `$(...)` hält den gesamten Aufruf in der Sandbox. Der [Referenzeintrag](/docs/de/settings-reference#sandbox-excludedcommands) listet weitere Aufrufe auf, die in der Sandbox bleiben

350* **Wo Sie den Eintrag speichern, kann eine Rolle spielen**: Solange die Sandbox [vom Administrator vorgeschrieben](#repository-settings-under-an-admin-required-sandbox) ist, ignoriert Claude Code Einträge in `.claude/settings.json` und `.claude/settings.local.json`

351 

352Ein ausgenommener Befehl durchläuft den regulären Berechtigungsablauf:

353 

354* [Nur lesende Befehle](/docs/de/permissions#read-only-commands) und Befehle, die Ihre allow-Regeln abdecken, werden ohne Nachfrage ausgeführt

355* Im Auto-Modus prüft der Klassifikator andere ausgenommene Befehle

356* Im `bypassPermissions`-Modus wird ein ausgenommener Befehl ohne Nachfrage ausgeführt, sofern keine ask-Regel auf ihn passt

246 357 

247Um Sandbox-Befehlen Lesezugriff auf Home-Verzeichnisse und eingebundene Volumes zu verweigern und gleichzeitig die Arbeitsverzeichnisse lesbar zu halten, setzen Sie stattdessen [`permissions.blockReadsOutsideWorkingDirectories`](/docs/de/settings-reference#permissions-blockreadsoutsideworkingdirectories).358Um zu bestätigen, dass ein Eintrag passt, wechseln Sie in den Manual-Modus und bitten Claude, einen passenden Befehl auszuführen, der etwas verändert, etwa `docker compose up -d`. Die Berechtigungsabfrage trägt den Titel „Bash command (unsandboxed)“.

359 

360<Warning>

361 Ein ausgenommener Befehl wird mit Ihrem vollen Zugriff ausgeführt. Ein breiter Eintrag wie `docker *` deckt alles ab, was dieses Tool tun kann. Wenn Sie ein Muster schreiben, das einen Interpreter, ein Skript in Ihrem Arbeitsverzeichnis oder ein Tool abdeckt, das auf eine Datei dort zugreift, wie es `docker compose` mit seiner Compose-Datei tut, kann Claude diese Datei schreiben und sie anschließend außerhalb der Sandbox ausführen. Ein engeres Muster lässt weniger übrig, das Claude außerhalb der Sandbox ausführen kann.

362</Warning>

248 363 

249<h3 id="disable-filesystem-isolation">364<h3 id="disable-filesystem-isolation">

250 Dateisystem-Isolation deaktivieren365 Dateisystem-Isolation deaktivieren

251</h3>366</h3>

252 367 

253Setzen Sie `sandbox.filesystem.disabled` auf `true`, um die Dateisystem-Isolation zu überspringen und gleichzeitig die Netzwerk-Isolation beizubehalten. Das folgende Beispiel deaktiviert die Dateisystem-Isolation und behält eine Zulassungsliste von Netzwerk-Domains:368Setzen Sie `sandbox.filesystem.disabled` auf `true`, um die Dateisystem-Isolation zu überspringen und die Netzwerk-Isolation beizubehalten. Das folgende Beispiel schaltet die Dateisystem-Isolation aus und behält eine Allowlist von Netzwerkdomains bei:

254 369 

255```json theme={null}370```json theme={null}

256{371{


266}381}

267```382```

268 383 

269Die Sandbox hat zwei unabhängige Schichten: [Dateisystem-Isolation](#filesystem-isolation) steuert, welche Pfade Sandbox-Befehle lesen und schreiben können, und [Netzwerk-Isolation](#network-isolation) steuert, welche Domains sie erreichen können. Mit der Dateisystem-Schicht aus erhalten Sandbox-Befehle unbegrenzten Lese- und Schreibzugriff auf das Host-Dateisystem, während ihr Netzwerk-Ausgang auf Ihre zulässigen Domains beschränkt bleibt. Schalten Sie die Schicht aus, wenn Sie Sandboxing verwenden, um zu steuern, wo Befehle sich verbinden, anstatt was sie schreiben.384Die Sandbox besteht aus zwei unabhängigen Ebenen: Die [Dateisystem-Isolation](#filesystem-isolation) steuert, welche Pfade Befehle in der Sandbox lesen und schreiben können, und die [Netzwerk-Isolation](#network-isolation) steuert, welche Domains sie erreichen können. Ist die Dateisystemebene ausgeschaltet, erhalten Befehle in der Sandbox uneingeschränkten Lese- und Schreibzugriff auf das Dateisystem des Hosts, während ihr ausgehender Netzwerkverkehr auf Ihre erlaubten Domains beschränkt bleibt. Schalten Sie die Ebene aus, wenn Sie die Sandbox verwenden, um zu steuern, wohin Befehle sich verbinden, und nicht, was sie schreiben.

270 385 

271Die Einstellung ist standardmäßig deaktiviert und gilt auf den Plattformen, auf denen die Sandbox ausgeführt wird: macOS, Linux und WSL2. Erfordert Claude Code v2.1.216 oder später.386Die Einstellung ist standardmäßig deaktiviert und gilt auf den Plattformen, auf denen die Sandbox läuft: macOS, Linux und WSL2. Erfordert Claude Code v2.1.216 oder höher.

272 387 

273<Warning>388<Warning>

274 Mit deaktivierter Dateisystem-Isolation und automatisch zulässigen Befehlen kann ein Sandbox-Befehl Dateien schreiben, die später Befehle ausführen oder lesen, wie Shell-Startdateien, ausführbare Dateien auf `$PATH` oder `~/.claude/settings.json`, und diese verwenden, um seinen eigenen Zugriff beim nächsten Durchlauf zu erweitern. Setzen Sie `filesystem.disabled` auf `true` nur für Workloads, denen Sie vertrauen, dass sie ihren eigenen Zugriff nicht eskalieren. Das Sperren von Netzwerk-Domains mit [`allowManagedDomainsOnly`](#keep-developers-from-widening-the-policy) verengt das Risiko, entfernt es aber nicht, da diese Sperre nur auf Befehle gilt, die in der Sandbox ausgeführt werden.389 Bei ausgeschalteter Dateisystem-Isolation und automatisch erlaubten Befehlen kann ein Befehl in der Sandbox Dateien schreiben, die spätere Befehle ausführen oder lesen, etwa Shell-Startdateien, ausführbare Dateien im `$PATH` oder `~/.claude/settings.json`, und diese nutzen, um beim nächsten Durchlauf seinen eigenen Zugriff zu erweitern. Setzen Sie `filesystem.disabled` nur dann auf `true`, wenn Sie den Workloads vertrauen, ihren eigenen Zugriff nicht auszuweiten. Das Sperren von Netzwerkdomains mit [`allowManagedDomainsOnly`](#keep-developers-from-widening-the-policy) verringert das Risiko, beseitigt es aber nicht, da diese Sperre nur für Befehle gilt, die innerhalb der Sandbox ausgeführt werden.

275</Warning>390</Warning>

276 391 

277<h4 id="which-settings-can-disable-it">392<h4 id="which-settings-can-disable-it">

278 Welche Einstellungen können es deaktivieren393 Welche Einstellungen sie deaktivieren können

279</h4>394</h4>

280 395 

281Da das Ausschalten der Dateisystem-Isolation erweitert, was Sandbox-Befehle tun können, berücksichtigt Claude Code `filesystem.disabled` nur aus diesen Einstellungsquellen:396Da das Ausschalten der Dateisystem-Isolation erweitert, was Befehle in der Sandbox tun können, berücksichtigt Claude Code `filesystem.disabled` nur aus diesen Einstellungsquellen:

282 397 

283* Benutzer-Einstellungen, verwaltete Einstellungen und das `--settings` CLI-Flag können es setzen. Projekt-Einstellungen in `.claude/settings.json` und `.claude/settings.local.json` können nicht, daher kann ein ausgechecktes Projekt die Dateisystem-Isolation nicht ausschalten.398* Benutzereinstellungen, verwaltete Einstellungen und das CLI-Flag `--settings` können sie setzen. Projekteinstellungen in `.claude/settings.json` und `.claude/settings.local.json` können das nicht, sodass ein ausgechecktes Projekt die Dateisystem-Isolation nicht ausschalten kann.

284* Wenn verwaltete Einstellungen `sandbox.filesystem` überhaupt konfigurieren oder einen beliebigen `sandbox.credentials.files`-Eintrag mit `"mode": "deny"` auflisten, können nur verwaltete Einstellungen den Schlüssel setzen. Dies hält vom Administrator bereitgestellte Dateisystem-Einschränkungen in Kraft; um eine solche Bereitstellung zu lockern, setzen Sie `"disabled": true` in verwalteten Einstellungen.399* Wenn verwaltete Einstellungen `sandbox.filesystem` überhaupt konfigurieren oder einen `sandbox.credentials.files`-Eintrag mit `"mode": "deny"` enthalten, können nur verwaltete Einstellungen den Schlüssel setzen. So bleiben vom Administrator bereitgestellte Dateisystembeschränkungen in Kraft; um eine solche Bereitstellung zu lockern, setzen Sie `"disabled": true` in den verwalteten Einstellungen.

285* Wenn [`CLAUDE_CODE_SUBPROCESS_ENV_SCRUB`](/docs/de/env-vars) gesetzt ist, ignoriert Claude Code `filesystem.disabled` aus jeder Quelle, einschließlich verwalteter Einstellungen, und lässt die Dateisystem-Isolation eingeschaltet.400* Wenn [`CLAUDE_CODE_SUBPROCESS_ENV_SCRUB`](/docs/de/env-vars) gesetzt ist, ignoriert Claude Code `filesystem.disabled` aus jeder Quelle, einschließlich der verwalteten Einstellungen, und lässt die Dateisystem-Isolation eingeschaltet.

286 401 

287Ob ein verwalteter `credentials.files`-Eintrag `filesystem.disabled` anheftet und den Schlüssel auf verwaltete Einstellungen sperrt, damit Entwickler die Dateisystem-Isolation nicht ausschalten können, hängt vom `mode` des Eintrags und davon ab, was mit dem Eintrag beim Start der Sandbox geschieht:402Ob ein verwalteter `credentials.files`-Eintrag `filesystem.disabled` festlegt, also den Schlüssel auf verwaltete Einstellungen beschränkt, sodass Entwickler die Dateisystem-Isolation nicht ausschalten können, hängt vom `mode` des Eintrags ab und davon, was mit dem Eintrag beim Start der Sandbox geschieht:

288 403 

289| Verwalteter Eintrag | Heftet `filesystem.disabled` an | Was schützt die Datei, wenn Isolation aus ist |404| Verwalteter Eintrag | Legt `filesystem.disabled` fest | Was die Datei schützt, wenn die Isolation aus ist |

290| - | - | - |405| - | - | - |

291| `"mode": "deny"` | Ja | Nichts: der Lesblock ist Teil der Dateisystem-Schicht |406| `"mode": "deny"` | Ja | Nichts: Die Lesesperre ist Teil der Dateisystemebene |

292| `"mode": "mask"`, angewendet als Maske | Nein | Maskierung selbst: die [Sentinel-Kopie und der Proxy](#mask-credential-files) auf Linux und WSL2, die Sandbox-eigenen Lesevorgänge auf macOS |407| `"mode": "mask"`, als Maske angewendet | Nein | Die Maskierung selbst: die [Sentinel-Kopie und der Proxy](#mask-credential-files) unter Linux und WSL2, die eigenen Leseregeln der Sandbox unter macOS |

293| `"mode": "mask"`, [auf `deny` zurückgefallen](#mask-credential-files) beim Setup | Nein | Nichts, wie `deny`. Führen Sie einen Pfad auf, der nicht maskiert werden kann, wie ein Verzeichnis, als expliziten `deny`-Eintrag auf, der den Schlüssel anheftet |408| `"mode": "mask"`, beim Einrichten [auf `deny` zurückgefallen](#mask-credential-files) | Nein | Nichts, wie bei `deny`. Tragen Sie einen Pfad, der nicht maskiert werden kann, etwa ein Verzeichnis, als expliziten `deny`-Eintrag ein, der den Schlüssel festlegt |

294| `"mode": "mask"`, [durch Validierung zu `deny` herabgestuft](/docs/de/managed-settings#invalid-entries-in-managed-settings) | Ja, wie ein expliziter `deny` | Nichts, wie `deny` |409| `"mode": "mask"`, [durch die Validierung zu `deny` herabgestuft](/docs/de/managed-settings#invalid-entries-in-managed-settings) | Ja, wie ein expliziter `deny`-Eintrag | Nichts, wie bei `deny` |

295 410 

296Ein Fallback tritt auf, wenn die Sandbox startet, nachdem Claude Code die Einstellungen bereits gelesen hat, auf denen die Anheftungsprüfung läuft, daher heftet ein zurückgefallener Eintrag niemals an. Validierung schreibt einen ungültigen Eintrag zu `deny` um, während Einstellungen geladen werden, daher heftet ein herabgestufter Eintrag wie einer an, den Sie als `deny` geschrieben haben.411Ein Fallback erfolgt beim Start der Sandbox, nachdem Claude Code die Einstellungen, auf denen die Prüfung der Festlegung basiert, bereits gelesen hat. Ein zurückgefallener Eintrag legt den Schlüssel daher nie fest. Die Validierung schreibt einen ungültigen Eintrag beim Laden der Einstellungen in `deny` um, sodass ein herabgestufter Eintrag den Schlüssel genauso festlegt wie einer, den Sie als `deny` geschrieben haben.

297 412 

298<h4 id="what-changes-when-filesystem-isolation-is-off">413<h4 id="what-changes-when-filesystem-isolation-is-off">

299 Was ändert sich, wenn Dateisystem-Isolation aus ist414 Was sich bei ausgeschalteter Dateisystem-Isolation ändert

300</h4>415</h4>

301 416 

302Setzen von `filesystem.disabled` hebt die Schutzmaßnahmen auf, die die Dateisystem-Schicht selbst durchsetzt. Schutzmaßnahmen, die andere Schichten durchsetzen, bleiben angewendet:417Das Setzen von `filesystem.disabled` hebt die Schutzmaßnahmen auf, die die Dateisystemebene selbst durchsetzt. Schutzmaßnahmen, die andere Ebenen durchsetzen, gelten weiterhin:

303 418 

304| Schutz | Mit deaktivierter Dateisystem-Isolation |419| Schutzmaßnahme | Bei ausgeschalteter Dateisystem-Isolation |

305| - | - |420| - | - |

306| `filesystem.denyRead` und [`credentials.files`](#protect-credentials) `deny` Lesevorgänge blockieren | Nicht durchgesetzt. Die Dateisystem-Schicht wendet beide an |421| `filesystem.denyRead` und `deny`-Lesesperren aus [`credentials.files`](#protect-credentials) | Nicht durchgesetzt. Die Dateisystemebene wendet beide an |

307| `credentials.envVars` `deny` und `mask` Einträge | Durchgesetzt. Umgebungsvariablen-Scrubbing ist unabhängig von der Dateisystem-Schicht |422| `deny`- und `mask`-Einträge in `credentials.envVars` | Durchgesetzt. Das Bereinigen von Umgebungsvariablen ist unabhängig von der Dateisystemebene |

308| [`credentials.files` `mask` Einträge](#mask-credential-files) angewendet als Masken | Durchgesetzt: Maskierung ist unabhängig von der Dateisystem-Schicht. Ein Eintrag, der [auf `deny` zurückgefallen ist](#mask-credential-files), wird nicht durchgesetzt, wie jeder `deny`-Eintrag |423| [`mask`-Einträge in `credentials.files`](#mask-credential-files), die als Masken angewendet werden | Durchgesetzt: Die Maskierung ist unabhängig von der Dateisystemebene. Ein Eintrag, der [auf `deny` zurückgefallen](#mask-credential-files) ist, wird wie jeder `deny`-Eintrag nicht durchgesetzt |

309 424 

310Zwei weitere Dinge ändern sich:425Zwei weitere Dinge ändern sich:

311 426 

312* Sandbox-Befehle erben `$TMPDIR` Ihrer Shell anstelle des Sitzungs-Temp-Verzeichnisses, da jedes Temp-Verzeichnis beschreibbar ist und Claude Code Befehle nicht mehr zum Sitzungs-Temp-Verzeichnis umleitet.427* Befehle in der Sandbox übernehmen das `$TMPDIR` Ihrer Shell anstelle des benutzerspezifischen temporären Verzeichnisses, da jedes temporäre Verzeichnis beschreibbar ist und Claude Code Befehle nicht mehr auf das benutzerspezifische umleitet.

313 428 

314 Auf Linux ist die Variable oft in der übergeordneten Shell nicht gesetzt. Das Bash-Tool-Leitfaden teilt Claude mit, Scratch-Verzeichnisse mit `mktemp -d` zu erstellen, anstatt sich auf `$TMPDIR` zu verlassen.429 Unter Linux ist die Variable in der übergeordneten Shell oft nicht gesetzt. Die Hinweise des Bash-Tools weisen Claude an, temporäre Arbeitsverzeichnisse mit `mktemp -d` zu erstellen, anstatt sich auf `$TMPDIR` zu verlassen.

315* [`autoAllowBashIfSandboxed`](/docs/de/settings-reference#sandbox-autoallowbashifsandboxed) hat immer noch den Standard `true`, daher laufen Sandbox-Befehle ohne Eingabeaufforderungen. Setzen Sie es auf `false`, um Eingabeaufforderungen für Sandbox-Befehle zu erhalten.430* [`autoAllowBashIfSandboxed`](/docs/de/settings-reference#sandbox-autoallowbashifsandboxed) ist weiterhin standardmäßig `true`, sodass Befehle in der Sandbox weiterhin ohne Nachfrage ausgeführt werden. Setzen Sie den Wert auf `false`, um bei Befehlen in der Sandbox nachfragen zu lassen.

316 431 

317<h3 id="protect-credentials">432<h3 id="protect-credentials">

318 Anmeldedaten schützen433 Anmeldedaten schützen

319</h3>434</h3>

320 435 

321Die Einstellung `sandbox.credentials` deklariert Anmeldedatendateien und Umgebungsvariablen, um sie vor Sandbox-Befehlen zu schützen. Jeder Eintrag benennt einen Dateipfad oder eine Umgebungsvariable und einen `mode`. Der dedizierte `credentials`-Block hält Anmeldedatenregeln zusammen und getrennt von allgemeinen Dateisystem-Regeln.436Die Einstellung `sandbox.credentials` legt Dateien mit Anmeldedaten und Umgebungsvariablen fest, die vor Befehlen in der Sandbox geschützt werden sollen. Jeder Eintrag benennt einen Dateipfad oder eine Umgebungsvariable sowie einen `mode`. Der eigene `credentials`-Block hält Regeln für Anmeldedaten zusammen und getrennt von allgemeinen Dateisystemregeln.

322 437 

323Für Einträge mit `"mode": "deny"` werden Dateipfade für Lesevorgänge in der Sandbox blockiert, die gleiche Einschränkung, die `filesystem.denyRead` anwendet, und Umgebungsvariablen werden vor jedem Sandbox-Befehl deaktiviert. Der Dateischutz ist Teil der Dateisystem-Schicht, daher gilt er nicht, wenn Sie [Dateisystem-Isolation deaktivieren](#disable-filesystem-isolation); der Umgebungsvariablen-Schutz gilt immer noch.438Bei Einträgen mit `"mode": "deny"` wird für Dateipfade das Lesen innerhalb der Sandbox verweigert, dieselbe Einschränkung, die `filesystem.denyRead` anwendet, und Umgebungsvariablen werden vor jedem Befehl in der Sandbox entfernt. Der Dateischutz ist Teil der Dateisystemebene und gilt daher nicht, wenn Sie die [Dateisystem-Isolation deaktivieren](#disable-filesystem-isolation); der Schutz der Umgebungsvariablen gilt weiterhin.

324 439 

325Das folgende Beispiel blockiert Lesevorgänge der AWS-Anmeldedatendatei und des SSH-Verzeichnisses und entfernt `GITHUB_TOKEN` und `NPM_TOKEN` aus der Umgebung von Sandbox-Befehlen:440Das folgende Beispiel sperrt das Lesen der AWS-Anmeldedatendatei und des SSH-Verzeichnisses und entfernt `GITHUB_TOKEN` und `NPM_TOKEN` aus der Umgebung von Befehlen in der Sandbox:

326 441 

327```json theme={null}442```json theme={null}

328{443{


342}457}

343```458```

344 459 

345Umgebungsvariablen-Einträge und Datei-Einträge akzeptieren auch `"mode": "mask"`, das unter [Anmeldedaten maskieren](#mask-credentials) beschrieben wird.460Einträge für Umgebungsvariablen und Dateien akzeptieren auch `"mode": "mask"`, beschrieben unter [Anmeldedaten maskieren](#mask-credentials).

346 461 

347Dateipfade folgen den gleichen [Präfix-Regeln](/docs/de/settings-reference#sandbox-path-prefixes) wie `sandbox.filesystem.*`-Einstellungen.462Dateipfade folgen denselben [Präfixregeln](/docs/de/settings-reference#sandbox-path-prefixes) wie die `sandbox.filesystem.*`-Einstellungen.

348 463 

349Claude Code führt die `deny`-Einträge aus jedem [Einstellungs-Scope](/docs/de/settings#settings-precedence) zusammen, den die Sitzung lädt. Ein `deny`-Eintrag engt den Zugriff nur ein, daher kann jeder Scope einen hinzufügen, aber keiner kann einen entfernen, den ein anderer Scope hinzugefügt hat.464Claude Code führt die `deny`-Einträge aus jedem [Einstellungs-Geltungsbereich](/docs/de/settings#settings-precedence) zusammen, den die Sitzung lädt. Ein `deny`-Eintrag schränkt den Zugriff immer nur ein, daher kann jeder Geltungsbereich einen hinzufügen, aber kein Geltungsbereich kann einen entfernen, den ein anderer hinzugefügt hat.

350 465 

351Wenn Sie [eine Einstellungsquelle ausschließen](#configure-sandboxing):466Wenn Sie [eine Einstellungsquelle ausschließen](#configure-sandboxing):

352 467 

353* **Projekt- oder lokale Einstellungen**: Claude Code wendet keine ihrer `credentials`-Einträge an. Erfordert Claude Code v2.1.246 oder später.468* **Projekt- oder lokale Einstellungen**: Claude Code wendet keinen ihrer `credentials`-Einträge an. Erfordert Claude Code v2.1.246 oder höher.

354* **Benutzer-Einstellungen**: Claude Code wendet immer noch die `deny`-Einträge in `~/.claude/settings.json` an und behält ihre [Datei-`mask`-Einträge](#mask-credential-files) als Einschränkungen, aber verwirft ihre [Umgebungsvariablen-`mask`-Einträge](#mask-environment-variables).469* **Benutzereinstellungen**: Claude Code wendet die `deny`-Einträge in `~/.claude/settings.json` weiterhin an und behält deren [`mask`-Einträge für Dateien](#mask-credential-files) als Einschränkungen bei, verwirft aber deren [`mask`-Einträge für Umgebungsvariablen](#mask-environment-variables).

355 470 

356Es gibt keine integrierte Anmeldedaten-Ablehnungsliste, daher werden nur die Dateien und Variablen, die Sie auflisten, eingeschränkt.471Es gibt keine integrierte Denylist für Anmeldedaten, daher sind nur die Dateien und Variablen eingeschränkt, die Sie auflisten.

357 472 

358`sandbox.credentials` betrifft nur Sandbox-Bash-Befehle. Um Anmeldedaten aus allen Subprozessen unabhängig von Sandboxing zu entfernen, setzen Sie [`CLAUDE_CODE_SUBPROCESS_ENV_SCRUB`](/docs/de/env-vars).473`sandbox.credentials` wirkt sich nur auf Bash-Befehle in der Sandbox aus. Um Anmeldedaten unabhängig vom Sandboxing aus allen Unterprozessen zu entfernen, setzen Sie [`CLAUDE_CODE_SUBPROCESS_ENV_SCRUB`](/docs/de/env-vars).

359 474 

360<h3 id="mask-credentials">475<h3 id="mask-credentials">

361 Anmeldedaten maskieren476 Anmeldedaten maskieren

362</h3>477</h3>

363 478 

364Maskierung geht weiter als ein `deny`-Eintrag unter [Anmeldedaten schützen](#protect-credentials). Anstatt eine Anmeldedaten zu blockieren, zeigt Claude Code Sandbox-Befehlen einen Platzhalter, den Sentinel, und der [Sandbox-Proxy](#network-isolation) tauscht den echten Wert bei ausgehenden Anfragen an Hosts aus, die Sie zulassen. Für Dateien ist die Substitution Linux- und WSL2-Verhalten; [macOS blockiert die Datei stattdessen](#mask-credential-files).479Die Maskierung geht weiter als ein `deny`-Eintrag unter [Anmeldedaten schützen](#protect-credentials). Anstatt Anmeldedaten zu sperren, zeigt Claude Code Befehlen in der Sandbox einen Platzhalter, den Sentinel, und der [Sandbox-Proxy](#network-isolation) setzt bei ausgehenden Anfragen an von Ihnen erlaubte Hosts den echten Wert ein. Bei Dateien ist die Ersetzung ein Verhalten unter Linux und WSL2; [macOS sperrt die Datei stattdessen](#mask-credential-files).

365 480 

366<h4 id="mask-environment-variables">481<h4 id="mask-environment-variables">

367 Umgebungsvariablen maskieren482 Umgebungsvariablen maskieren

368</h4>483</h4>

369 484 

370`"mode": "mask"` schützt eine Anmeldedaten, während die Tools, die sich damit authentifizieren, funktionieren. `deny` entfernt die Variable vollständig, was auch Tools bricht, die sie benötigen, wie `gh` oder `npm`. Erfordert Claude Code v2.1.199 oder später.485`"mode": "mask"` schützt Anmeldedaten und sorgt dafür, dass die Tools, die sich damit authentifizieren, weiterhin funktionieren. `deny` entfernt die Variable vollständig, wodurch auch Tools nicht mehr funktionieren, die sie benötigen, etwa `gh` oder `npm`. Erfordert Claude Code v2.1.199 oder höher.

371 486 

372Mit `mask` sieht der Sandbox-Befehl einen pro-Sitzungs-Sentinel-Wert anstelle des echten. Jeder `mask`-Eintrag kann `injectHosts` auflisten, die Hosts, an die der echte Wert erreichen darf. Wenn eine Anfrage die Sandbox für einen von ihnen verlässt, ersetzt der [Sandbox-Proxy](#network-isolation) den Sentinel durch den echten Wert. Der Befehl und alles, das er protokolliert, hält niemals die echte Anmeldedaten, aber seine Anfragen authentifizieren sich immer noch.487Mit `mask` sieht der Befehl in der Sandbox einen sitzungsspezifischen Sentinel-Wert anstelle des echten Werts. Jeder `mask`-Eintrag kann `injectHosts` auflisten, die Hosts, die der echte Wert erreichen darf. Wenn eine Anfrage die Sandbox in Richtung eines dieser Hosts verlässt, ersetzt der [Sandbox-Proxy](#network-isolation) den Sentinel durch den echten Wert. Der Befehl und alles, was er protokolliert, enthalten nie die echten Anmeldedaten, aber seine Anfragen werden dennoch authentifiziert.

373 488 

374Der Proxy ersetzt die Anmeldedaten in Anfrageinhalten, daher muss er diese sehen. Setzen Sie [`network.tlsTerminate`](/docs/de/settings-reference#sandbox-network-tlsterminate), damit der Proxy TLS selbst beendet.489Der Proxy ersetzt die Anmeldedaten innerhalb des Anfrageinhalts und muss diesen daher sehen können. Setzen Sie [`network.tlsTerminate`](/docs/de/settings-reference#sandbox-network-tlsterminate), damit der Proxy TLS selbst terminiert.

375 490 

376Ohne ihn schlägt die Maskierung geschlossen fehl: Der Befehl sieht immer noch nur den Sentinel, aber der Sentinel erreicht den Server unverändert und die Authentifizierung schlägt fehl. Claude Code meldet diese Fehlkonfiguration beim Start.491Ohne diese Einstellung schlägt die Maskierung fehl, ohne etwas preiszugeben: Der Befehl sieht weiterhin nur den Sentinel, aber der Sentinel erreicht den Server unverändert, und die Authentifizierung schlägt fehl. Claude Code meldet diese Fehlkonfiguration beim Start.

377 492 

378Die Substitution deckt Header und Anfragekörper ab. Anfragen, die sich mit einer Signatur authentifizieren, die von der Anmeldedaten abgeleitet ist, anstatt der Anmeldedaten selbst, benötigen eine Neusignierung beim Proxy; [AWS-Anfragen erneut signieren](#re-sign-aws-requests) behandelt, wie das für AWS funktioniert.493Die Ersetzung umfasst Header und Anfrage-Bodys. Anfragen, die sich mit einer aus den Anmeldedaten abgeleiteten Signatur statt mit den Anmeldedaten selbst authentifizieren, müssen am Proxy neu signiert werden; [AWS-Anfragen neu signieren](#re-sign-aws-requests) beschreibt, wie das bei AWS funktioniert.

379 494 

380Der Proxy injiziert nur auf Verbindungen, die die [Domain-Zulassungsliste](#network-isolation) zulässt, daher muss jedes `injectHosts`-Ziel auch über `network.allowedDomains` erreichbar sein.495Der Proxy fügt Anmeldedaten nur bei Verbindungen ein, die die [Domain-Allowlist](#network-isolation) zulässt. Jedes `injectHosts`-Ziel muss daher auch über `network.allowedDomains` erreichbar sein.

381 496 

382Das folgende Beispiel maskiert zwei Token. `GH_TOKEN` wird nur bei Anfragen an `api.github.com` ersetzt, während `NPM_TOKEN` keine `injectHosts` hat und bei Anfragen an jeden Host in `network.allowedDomains` ersetzt wird.497Das folgende Beispiel maskiert zwei Token. `GH_TOKEN` wird nur bei Anfragen an `api.github.com` ersetzt, während `NPM_TOKEN` keine `injectHosts` hat und bei Anfragen an jeden Host in `network.allowedDomains` ersetzt wird.

383 498 


401 516 

402<span id="ipv6-destinations-in-injecthosts" />Schreiben Sie ein IPv6-Ziel in den beiden Listen unterschiedlich, da jede Liste ihren eigenen Matcher hat:517<span id="ipv6-destinations-in-injecthosts" />Schreiben Sie ein IPv6-Ziel in den beiden Listen unterschiedlich, da jede Liste ihren eigenen Matcher hat:

403 518 

404* **`network.allowedDomains`**: die [geklammerte Form, die Domain-Listen verwenden](#ipv6-addresses-in-domain-lists), wie `"[::1]"`. Der Proxy prüft diese Liste, um die Verbindung zuzulassen.519* **`network.allowedDomains`**: die [in Domainlisten verwendete Form mit eckigen Klammern](#ipv6-addresses-in-domain-lists), etwa `"[::1]"`. Der Proxy prüft diese Liste, um die Verbindung zuzulassen.

405* **`injectHosts`**: die bloße Adresse in ihrer kanonischen komprimierten Form, wie `"::1"` oder `"2001:db8::1"`. Der Proxy gleicht jeden Eintrag gegen die bloße Zieladresse der Verbindung ab und ignoriert Ports, daher passt eine geklammerte, Zone-ID- oder anders komprimierte Schreibweise niemals und der Proxy injiziert die Anmeldedaten dort niemals.520* **`injectHosts`**: die reine Adresse in ihrer kanonischen komprimierten Form, etwa `"::1"` oder `"2001:db8::1"`. Der Proxy gleicht jeden Eintrag mit der reinen Zieladresse der Verbindung ab und ignoriert dabei Ports. Eine Schreibweise mit eckigen Klammern, Zonen-ID oder anderer Komprimierung passt daher nie, und der Proxy fügt die Anmeldedaten dort nie ein.

406 521 

407`claude doctor` kennzeichnet `injectHosts`-Einträge, die niemals passen können, mit der Warnung `Sandbox credential injectHosts entries can never match their destination`. Diese Prüfung erfordert Claude Code v2.1.229 oder später.522`claude doctor` kennzeichnet `injectHosts`-Einträge, die nie passen können, mit der Warnung `Sandbox credential injectHosts entries can never match their destination`. Diese Prüfung erfordert Claude Code v2.1.229 oder höher.

408 523 

409Im Gegensatz zu `deny` autorisiert die Maskierung den Proxy, Ihre echte Anmeldedaten an die aufgelisteten Hosts zu senden, daher wird sie nur von Einstellungen berücksichtigt, die Sie oder Ihr Administrator kontrollieren: Benutzer-Einstellungen, verwaltete Einstellungen und das `--settings` CLI-Flag. Claude Code ignoriert `mask`-Einträge in der `.claude/settings.json` oder `.claude/settings.local.json` eines Repositorys. In diesen Dateien ignoriert es auch `network.tlsTerminate` und [`credentials.allowPlaintextInject`](/docs/de/settings-reference#sandbox-credentials-allowplaintextinject), die Einstellung, die dem Proxy erlaubt, Anmeldedaten in unverschlüsselte Anfragen zu injizieren. Wenn Sie [Benutzer-Einstellungen ausschließen](#configure-sandboxing), verwirft Claude Code die Umgebungsvariablen-`mask`-Einträge in `~/.claude/settings.json` auch.524Anders als `deny` autorisiert die Maskierung den Proxy, Ihre echten Anmeldedaten an die aufgelisteten Hosts zu senden. Claude Code berücksichtigt sie daher nur aus Einstellungen, die Sie oder Ihr Administrator kontrollieren: Benutzereinstellungen, verwaltete Einstellungen und das CLI-Flag `--settings`. Claude Code ignoriert `mask`-Einträge in der `.claude/settings.json` oder `.claude/settings.local.json` eines Repositorys. In diesen Dateien ignoriert es auch `network.tlsTerminate` und [`credentials.allowPlaintextInject`](/docs/de/settings-reference#sandbox-credentials-allowplaintextinject), die Einstellung, mit der der Proxy Anmeldedaten in unverschlüsselte Anfragen einfügen darf. Wenn Sie [Benutzereinstellungen ausschließen](#configure-sandboxing), verwirft Claude Code auch die `mask`-Einträge für Umgebungsvariablen in `~/.claude/settings.json`.

410 525 

411Wenn Ihr Administrator `mask`-Einträge, `network.tlsTerminate` oder `credentials.allowPlaintextInject` über server-verwaltete Einstellungen bereitstellt, zählen sie als [Einstellungen, die Genehmigung benötigen](/docs/de/server-managed-settings#security-approval-dialogs).526Wenn Ihr Administrator `mask`-Einträge, `network.tlsTerminate` oder `credentials.allowPlaintextInject` über serververwaltete Einstellungen bereitstellt, zählen diese zu den [Einstellungen, die eine Genehmigung erfordern](/docs/de/server-managed-settings#security-approval-dialogs).

412 527 

413Wenn die gleiche Variable mit `deny` in einem beliebigen Scope aufgelistet ist, hat `deny` Vorrang.528Wenn dieselbe Variable in einem beliebigen Geltungsbereich mit `deny` aufgeführt ist, hat `deny` Vorrang.

414 529 

415Die Maskierung ersetzt standardmäßig den gesamten Wert der Variablen, was sich für einen bloßen Token eignet. Optionale Eintragsfelder, die Claude Code v2.1.224 oder später erfordern, behandeln Werte mit Struktur:530Die Maskierung ersetzt standardmäßig den gesamten Wert der Variable, was für ein einfaches Token geeignet ist. Optionale Eintragsfelder, die Claude Code v2.1.224 oder höher erfordern, verarbeiten strukturierte Werte:

416 531 

417* `extract`: ein regulärer Ausdruck, den Claude Code über den Wert anwendet und nur den Text ersetzt, der von Gruppe 1 jedes Treffers erfasst wird, daher funktioniert ein Tool, das den Wert analysiert, wie eine `DATABASE_URL`-Verbindungszeichenfolge, immer noch in der Sandbox. Das Muster muss mindestens eine erfassende Gruppe enthalten.532* `extract`: ein regulärer Ausdruck, den Claude Code auf den gesamten Wert anwendet, wobei nur der von Gruppe 1 jeder Übereinstimmung erfasste Text ersetzt wird. So funktioniert ein Tool, das den Wert parst, etwa bei einem `DATABASE_URL`-Verbindungsstring, auch innerhalb der Sandbox weiter. Das Muster muss mindestens eine Erfassungsgruppe enthalten.

418* `onExtractNoMatch` steuert, was geschieht, wenn das Muster nichts trifft:533* `onExtractNoMatch` steuert, was passiert, wenn das Muster auf nichts passt:

419 * `warn`, der Standard, warnt und übergibt die Variable unmasked534 * `warn`, der Standard, gibt eine Warnung aus und reicht die Variable unmaskiert durch

420 * `deny` deaktiviert die Variable in der Sandbox535 * `deny` entfernt die Variable innerhalb der Sandbox

421 * `error` stoppt das Sandbox-Setup, bis Sie die Konfiguration beheben536 * `error` stoppt die Einrichtung der Sandbox, bis Sie die Konfiguration korrigieren

422* `decode: "jwt"`: für eine Variable, die ein JSON Web Token (JWT) hält. Claude Code überprüft, dass der Wert ein JWT ist, und ersetzt ihn durch ein strukturell gültiges gefälschtes Token, daher funktioniert Code in der Sandbox, der das Token dekodiert, weiterhin. Fügen Sie `maskClaims` hinzu, um nur die aufgelisteten Top-Level-Payload-Ansprüche einzeln zu maskieren, anstatt das gesamte Token zu ersetzen; die anderen Ansprüche bleiben lesbar. Wenn der Wert nicht als JWT überprüft wird oder kein aufgelisteter Anspruch passt, übergibt Claude Code die Variable unmasked mit einer Warnung. `decode` kann nicht mit `extract` kombiniert werden.537* `decode: "jwt"`: für eine Variable, die ein JSON Web Token (JWT) enthält. Claude Code prüft, ob der Wert ein JWT ist, und ersetzt ihn durch ein strukturell gültiges gefälschtes Token, sodass Code innerhalb der Sandbox, der das Token dekodiert, weiterhin funktioniert. Fügen Sie `maskClaims` hinzu, um Claims der obersten Ebene der Payload aufzulisten, die einzeln maskiert werden sollen, anstatt das gesamte Token zu ersetzen; die übrigen Claims bleiben lesbar. Wenn sich der Wert nicht als JWT verifizieren lässt oder kein aufgeführter Claim passt, reicht Claude Code die Variable mit einer Warnung unmaskiert durch. `decode` kann nicht mit `extract` kombiniert werden.

423 538 

424Siehe die [`credentials.envVars[]`-Zeilen in der Einstellungsreferenz](/docs/de/settings-reference#sandbox-settings) für die vollständige Feldliste.539Die vollständige Feldliste finden Sie in den [Zeilen zu `credentials.envVars[]` in der Einstellungsreferenz](/docs/de/settings-reference#sandbox-settings).

425 540 

426<h4 id="re-sign-aws-requests">541<h4 id="re-sign-aws-requests">

427 AWS-Anfragen erneut signieren542 AWS-Anfragen neu signieren

428</h4>543</h4>

429 544 

430AWS-Anfragen tragen SigV4-Signaturen über die Anfrageinhalte, daher maskieren Sie `AWS_ACCESS_KEY_ID` und `AWS_SECRET_ACCESS_KEY` zusammen. Der Proxy erkennt eine SigV4-Anfrage durch den Sentinel des Zugangsschlüssels und signiert sie erneut, nachdem er die echten Werte ersetzt hat. Das Maskieren des Geheimnisses allein hinterlässt Anfragen, die mit dem Platzhalter signiert sind, den der Proxy nicht erkennen kann, daher schlagen sie bei AWS fehl; Claude Code warnt in diesem Fall beim Start, aber nicht, wenn nur die Zugangsschlüssel-ID maskiert ist. Eine erkannte Anfrage, die der Proxy nicht erneut signieren kann, wie eine, der der `x-amz-date`-Header fehlt, schlägt mit einem Proxy-Fehler fehl, anstatt den Server mit einer fehlerhaften Signatur zu erreichen.545AWS-Anfragen tragen SigV4-Signaturen über den Anfrageinhalt. Maskieren Sie daher `AWS_ACCESS_KEY_ID` und `AWS_SECRET_ACCESS_KEY` gemeinsam. Der Proxy erkennt eine SigV4-Anfrage am Sentinel des Zugriffsschlüssels und signiert sie neu, nachdem er die echten Werte eingesetzt hat. Wird nur der geheime Schlüssel maskiert, bleiben Anfragen mit dem Platzhalter signiert, den der Proxy nicht erkennen kann, sodass sie bei AWS fehlschlagen; Claude Code warnt in diesem Fall beim Start, jedoch nicht, wenn nur die Zugriffsschlüssel-ID maskiert ist. Eine erkannte Anfrage, die der Proxy nicht neu signieren kann, etwa eine ohne `x-amz-date`-Header, schlägt mit einem Proxy-Fehler fehl, anstatt den Server mit einer fehlerhaften Signatur zu erreichen.

431 546 

432Claude Code verknüpft die konventionellen `AWS_ACCESS_KEY_ID`-, `AWS_SECRET_ACCESS_KEY`- und `AWS_SESSION_TOKEN`-Variablen automatisch zu einer Anmeldedaten, wenn Sie ihre gesamten Werte maskieren. Wenn Ihre AWS-Anmeldedaten in Variablen mit anderen Namen lebt, gruppieren Sie sie selbst mit [`credentials.awsPairs`](/docs/de/settings-reference#sandbox-credentials-awspairs), das Claude Code v2.1.224 oder später erfordert. Dieses Beispiel fügt die Paarung zu einer Konfiguration hinzu, die bereits `MY_KEY_ID`, `MY_SECRET_KEY` und `MY_SESSION_TOKEN` ganz-Wert maskiert, wie in der [Maskierungskonfiguration oben](#mask-environment-variables):547Claude Code verknüpft die üblichen Variablen `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY` und `AWS_SESSION_TOKEN` automatisch zu einem Satz Anmeldedaten, wenn Sie deren gesamte Werte maskieren. Wenn Ihre AWS-Anmeldedaten in Variablen mit anderen Namen liegen, gruppieren Sie diese selbst mit [`credentials.awsPairs`](/docs/de/settings-reference#sandbox-credentials-awspairs), was Claude Code v2.1.224 oder höher erfordert. Dieses Beispiel fügt die Zuordnung einer Konfiguration hinzu, die `MY_KEY_ID`, `MY_SECRET_KEY` und `MY_SESSION_TOKEN` bereits vollständig maskiert, wie in der [obigen Maskierungskonfiguration](#mask-environment-variables):

433 548 

434```json theme={null}549```json theme={null}

435{550{


449 564 

450Jeder Eintrag folgt diesen Regeln:565Jeder Eintrag folgt diesen Regeln:

451 566 

452* `accessKeyIdVar` und `secretAccessKeyVar` benennen die maskierten `envVars`-Einträge, die die Zugangsschlüssel-ID und den geheimen Schlüssel halten. Das optionale `sessionTokenVar` benennt den Eintrag, der das Sitzungs-Token für temporäre Anmeldedaten hält; wenn gesetzt, sendet der Proxy das echte Token als `x-amz-security-token` bei erneut signierten Anfragen.567* `accessKeyIdVar` und `secretAccessKeyVar` benennen die maskierten `envVars`-Einträge, die die Zugriffsschlüssel-ID und den geheimen Schlüssel enthalten. Das optionale `sessionTokenVar` benennt den Eintrag mit dem Sitzungstoken für temporäre Anmeldedaten; wenn es gesetzt ist, sendet der Proxy bei neu signierten Anfragen das echte Token als `x-amz-security-token`.

453* Jede benannte Variable muss ein `mask`-Eintrag sein, der ihren gesamten Wert maskiert, ohne `extract` oder `decode`.568* Jede benannte Variable muss ein `mask`-Eintrag sein, der ihren gesamten Wert maskiert, ohne `extract` oder `decode`.

454* Der Proxy signiert Anfragen auf den Hosts erneut, die in der Zugangsschlüssel-ID-Eintrags-`injectHosts` aufgelistet sind.569* Der Proxy signiert Anfragen an die Hosts neu, die in den `injectHosts` des Eintrags für die Zugriffsschlüssel-ID aufgeführt sind.

455* Das Benennen einer der konventionellen Variablen in einem Paar ersetzt die automatische Paarung.570* Wird eine der üblichen Variablen in einem Paar benannt, ersetzt dies die automatische Zuordnung.

456 571 

457Wie `mask`-Einträge wird `awsPairs` nur von Benutzer-Einstellungen, verwalteten Einstellungen und dem `--settings` CLI-Flag berücksichtigt.572Wie `mask`-Einträge wird `awsPairs` nur aus Benutzereinstellungen, verwalteten Einstellungen und dem CLI-Flag `--settings` berücksichtigt.

458 573 

459Drei AWS-Anfrage-Formen tragen Signaturen, die der Proxy nicht neu berechnen kann. Wenn eine solche Anfrage mit einem Platzhalter eines maskierten Paares signiert ist, schlägt der Proxy sie fehl, anstatt eine fehlerhafte Signatur weiterzuleiten; Anfragen, die mit unmaskierten Anmeldedaten signiert sind, sind niemals betroffen. Die Einstellung [`credentials.sigv4`](/docs/de/settings-reference#sandbox-credentials-sigv4), die Claude Code v2.1.224 oder später erfordert, lockert dies pro Form: Das Setzen des Schlüssels einer Form auf `passthrough` leitet die Anfrage mit ihrer Platzhalter-abgeleiteten Signatur weiter, daher erhält das aufrufende Tool die eigene Ablehnungsantwort von AWS anstelle eines Proxy-Fehlers. Wie `awsPairs` wird `sigv4` nur von Benutzer-Einstellungen, verwalteten Einstellungen und dem `--settings` CLI-Flag berücksichtigt.574Drei Formen von AWS-Anfragen tragen Signaturen, die der Proxy nicht neu berechnen kann. Wenn eine solche Anfrage mit dem Platzhalter eines maskierten Paars signiert ist, lässt der Proxy sie fehlschlagen, anstatt eine fehlerhafte Signatur weiterzuleiten; Anfragen, die mit unmaskierten Anmeldedaten signiert sind, sind nie betroffen. Die Einstellung [`credentials.sigv4`](/docs/de/settings-reference#sandbox-credentials-sigv4), die Claude Code v2.1.224 oder höher erfordert, lockert dies je Form: Wird der Schlüssel einer Form auf `passthrough` gesetzt, wird die Anfrage mit ihrer vom Platzhalter abgeleiteten Signatur weitergeleitet, sodass das aufrufende Tool die Ablehnungsantwort von AWS selbst statt eines Proxy-Fehlers erhält. Wie `awsPairs` wird `sigv4` nur aus Benutzereinstellungen, verwalteten Einstellungen und dem CLI-Flag `--settings` berücksichtigt.

460 575 

461| Anfrage-Form | `sigv4` Schlüssel | Warum der Proxy sie nicht erneut signieren kann |576| Anfrageform | `sigv4`-Schlüssel | Warum der Proxy sie nicht neu signieren kann |

462| :- | :- | :- |577| :- | :- | :- |

463| aws-chunked Streaming-Uploads | `streaming` | Pro-Chunk-Signaturen verketten sich von der Seed-Signatur, daher würde eine Neusignierung das Rewriting des Körpers erfordern |578| aws-chunked-Streaming-Uploads | `streaming` | Die Signaturen pro Chunk bauen auf der Ausgangssignatur auf, sodass ein Neusignieren das Umschreiben des Bodys erfordern würde |

464| Vorsignierte URLs | `presigned` | Die Signatur lebt in der URL selbst, ohne `Authorization`-Header |579| Vorsignierte URLs | `presigned` | Die Signatur befindet sich in der URL selbst, ohne `Authorization`-Header |

465| SigV4A asymmetrische Signaturen | `sigv4a` | Es gibt keinen gemeinsamen Schlüssel-HMAC zum Neuberechnen |580| Asymmetrische SigV4A-Signaturen | `sigv4a` | Es gibt keinen HMAC mit gemeinsamem Schlüssel, der neu berechnet werden könnte |

466 581 

467<h4 id="mask-credential-files">582<h4 id="mask-credential-files">

468 Anmeldedatendateien maskieren583 Dateien mit Anmeldedaten maskieren

469</h4>584</h4>

470 585 

471Datei-Einträge akzeptieren auch `"mode": "mask"`, das Claude Code v2.1.221 oder später erfordert. Was ein Sandbox-Befehl sieht, hängt von der Plattform ab:586Dateieinträge akzeptieren ebenfalls `"mode": "mask"`, was Claude Code v2.1.221 oder höher erfordert. Was ein Befehl in der Sandbox sieht, hängt von der Plattform ab:

472 587 

473* **Linux und WSL2**: Sandbox-Befehle lesen eine Sentinel-Kopie der Datei, einen Platzhalter, dessen Geheimnis durch einen Platzhalter-Wert ersetzt ist, und der [Sandbox-Proxy](#network-isolation) ersetzt den echten Wert bei Ausgang.588* **Linux und WSL2**: Befehle in der Sandbox lesen eine Sentinel-Kopie der Datei, einen Ersatz, dessen Geheimnis durch einen Platzhalterwert ersetzt ist, und der [Sandbox-Proxy](#network-isolation) setzt beim ausgehenden Verkehr den echten Wert ein.

474* **macOS**: Sandbox-Befehle können die aufgelistete Datei überhaupt nicht lesen. Claude Code erstellt keine Sentinel-Kopie und ersetzt nichts bei Ausgang, daher funktionieren Tools, die sich mit der Datei authentifizieren, nicht in der Sandbox, der gleiche Effekt wie `deny`. Im Gegensatz zu einem `deny`-Eintrag gilt der Lesblock auch, wenn Sie [Dateisystem-Isolation deaktivieren](#disable-filesystem-isolation).589* **macOS**: Befehle in der Sandbox können die aufgeführte Datei überhaupt nicht lesen. Claude Code erstellt keine Sentinel-Kopie und ersetzt beim ausgehenden Verkehr nichts, sodass Tools, die sich mit der Datei authentifizieren, innerhalb der Sandbox nicht funktionieren, mit derselben Wirkung wie `deny`. Anders als bei einem `deny`-Eintrag bleibt die Lesesperre auch dann bestehen, wenn Sie die [Dateisystem-Isolation deaktivieren](#disable-filesystem-isolation).

475 590 

476Auf jeder Plattform wendet Claude Code die [`network.tlsTerminate`](/docs/de/settings-reference#sandbox-network-tlsterminate)-Anforderung und `injectHosts` genauso an wie für [maskierte Umgebungsvariablen](#mask-environment-variables), und ignoriert Repository-Einstellungen genauso. Wenn Sie [Benutzer-Einstellungen ausschließen](#configure-sandboxing), behält Claude Code die Datei-`mask`-Einträge in `~/.claude/settings.json` als Einschränkungen, aber die Einträge autorisieren den Proxy nicht mehr, den echten Wert zu ersetzen.591Auf jeder Plattform wendet Claude Code die Anforderung [`network.tlsTerminate`](/docs/de/settings-reference#sandbox-network-tlsterminate) und `injectHosts` genauso an wie bei [maskierten Umgebungsvariablen](#mask-environment-variables) und ignoriert Repository-Einstellungen auf dieselbe Weise. Wenn Sie [Benutzereinstellungen ausschließen](#configure-sandboxing), behält Claude Code die `mask`-Einträge für Dateien in `~/.claude/settings.json` als Einschränkungen bei, aber die Einträge autorisieren den Proxy nicht mehr, den echten Wert einzusetzen.

477 592 

478Das folgende Beispiel maskiert ein GitHub-Token, das in `~/.config/gh/hosts.yml` gespeichert ist; das `extract`-Muster, das unten behandelt wird, teilt Claude Code mit, welcher Teil der Datei das Geheimnis ist. Auf Linux und WSL2 erhalten Sandbox-Befehle, die die Datei lesen, einen Sentinel anstelle des Tokens, und der Proxy ersetzt das echte Token bei Anfragen an `api.github.com`:593Das folgende Beispiel maskiert ein GitHub-Token, das in `~/.config/gh/hosts.yml` gespeichert ist; das weiter unten beschriebene `extract`-Muster teilt Claude Code mit, welcher Teil der Datei das Geheimnis ist. Unter Linux und WSL2 erhalten Befehle in der Sandbox, die die Datei lesen, einen Sentinel anstelle des Tokens, und der Proxy setzt bei Anfragen an `api.github.com` das echte Token ein:

479 594 

480```json theme={null}595```json theme={null}

481{596{


499}614}

500```615```

501 616 

502Um zu bestätigen, dass die Maske aktiv ist, bitten Sie Claude, `cat ~/.config/gh/hosts.yml` in einem Sandbox-Befehl auszuführen: Auf Linux und WSL2 zeigt die Ausgabe einen Sentinel-Wert anstelle des Tokens, und auf macOS schlägt der Lesevorgang stattdessen fehl.617Um zu bestätigen, dass die Maske aktiv ist, bitten Sie Claude, `cat ~/.config/gh/hosts.yml` in einem Befehl in der Sandbox auszuführen: Unter Linux und WSL2 zeigt die Ausgabe einen Sentinel-Wert anstelle des Tokens, und unter macOS schlägt das Lesen stattdessen fehl.

503 618 

504Auf Linux und WSL2 ist das `extract`-Muster das, was den Rest von `hosts.yml` lesbar hält. Claude Code wendet den regulären Ausdruck über die gesamte Datei an und ersetzt nur den Text, der von Gruppe 1 jedes Treffers erfasst wird, daher analysiert `gh` immer noch seine Konfiguration und nur das Token ist ein Platzhalter. Verwenden Sie `extract` für jede strukturierte Datei, die Tools analysieren, wie `.netrc`, JSON oder YAML; das Muster muss mindestens eine erfassende Gruppe enthalten. Ohne `extract` ersetzt Claude Code den gesamten Dateiinhalt durch einen Sentinel-Wert, was sich für eine Datei eignet, die ein einzelnes bloßes Geheimnis und nichts anderes hält.619Unter Linux und WSL2 sorgt das `extract`-Muster dafür, dass der Rest von `hosts.yml` lesbar bleibt. Claude Code wendet den regulären Ausdruck auf die gesamte Datei an und ersetzt nur den von Gruppe 1 jeder Übereinstimmung erfassten Text, sodass `gh` seine Konfiguration weiterhin parst und nur das Token ein Platzhalter ist. Verwenden Sie `extract` für jede strukturierte Datei, die Tools parsen, etwa `.netrc`, JSON oder YAML; das Muster muss mindestens eine Erfassungsgruppe enthalten. Ohne `extract` ersetzt Claude Code den gesamten Dateiinhalt durch einen einzigen Sentinel-Wert, was für eine Datei geeignet ist, die nur ein einzelnes Geheimnis und sonst nichts enthält.

505 620 

506Für eine Datei, die ein JSON Web Token (JWT) hält, setzen Sie `decode: "jwt"` anstelle von oder zusammen mit `extract`. `decode` erfordert Claude Code v2.1.224 oder später. Claude Code findet JWT-Kandidaten mit einem eingebauten Muster oder mit Ihrem `extract`-Muster, wenn gesetzt, überprüft jeden Kandidaten, dass er ein JWT ist, und ersetzt ihn durch ein strukturell gültiges gefälschtes Token, daher funktioniert Code, der das Token in der Sandbox dekodiert, weiterhin. Fügen Sie `maskClaims` hinzu, um nur die benannten Top-Level-Payload-Ansprüche in jedem überprüften Token zu maskieren und die anderen Ansprüche lesbar zu lassen. Wenn kein Kandidat überprüft wird oder kein benannter Anspruch passt, regelt das Feld `onExtractNoMatch` unten das Ergebnis, wie es auch für ein Muster tut, das nichts trifft.621Für eine Datei, die ein JSON Web Token (JWT) enthält, setzen Sie `decode: "jwt"` anstelle von oder zusammen mit `extract`. `decode` erfordert Claude Code v2.1.224 oder höher. Claude Code findet JWT-Kandidaten mit einem integrierten Muster oder, falls gesetzt, mit Ihrem `extract`-Muster, prüft, ob jeder Kandidat ein JWT ist, und ersetzt ihn durch ein strukturell gültiges gefälschtes Token, sodass Code, der das Token innerhalb der Sandbox dekodiert, weiterhin funktioniert. Fügen Sie `maskClaims` hinzu, um nur die benannten Claims der obersten Ebene der Payload innerhalb jedes verifizierten Tokens zu maskieren und die übrigen Claims lesbar zu lassen. Wenn sich kein Kandidat verifizieren lässt oder kein benannter Claim passt, bestimmt das unten beschriebene Feld `onExtractNoMatch` das Ergebnis, genauso wie bei einem Muster, das auf nichts passt.

507 622 

508Zwei optionale Felder verfeinern, wie Matching sich verhält. Beide gelten nur, wenn `mode` `mask` ist und `extract` oder `decode` gesetzt ist. Auf macOS wendet Claude Code `mask`-Einträge als `deny` an, bevor das Muster läuft, wann immer Dateisystem-Isolation an ist, daher gelten diese Felder und die No-Match-Ergebnisse unten dort nur, wenn [Dateisystem-Isolation aus ist](#disable-filesystem-isolation):623Zwei optionale Felder verfeinern das Abgleichverhalten. Beide gelten nur, wenn `mode` auf `mask` steht und `extract` oder `decode` gesetzt ist. Unter macOS wendet Claude Code `mask`-Einträge bei eingeschalteter Dateisystem-Isolation als `deny` an, bevor das Muster ausgeführt wird. Diese Felder und die unten beschriebenen Ergebnisse bei fehlender Übereinstimmung wirken dort daher nur, wenn die [Dateisystem-Isolation ausgeschaltet ist](#disable-filesystem-isolation):

509 624 

510* `onExtractNoMatch` steuert, was geschieht, wenn Matching nichts zu maskieren in der Datei findet:625* `onExtractNoMatch` steuert, was passiert, wenn der Abgleich in der Datei nichts zum Maskieren findet:

511 626 

512 * `warn`, der Standard, warnt und überspringt den Eintrag, daher können Sandbox-Befehle die echte Datei unmasked lesen. Der Standard eignet sich für Anmeldedaten, die legitim abwesend sein können; wenn das Geheimnis möglicherweise vorhanden ist, aber das Muster es möglicherweise verpasst, verwenden Sie `deny`627 * `warn`, der Standard, gibt eine Warnung aus und überspringt den Eintrag, sodass Befehle in der Sandbox die echte Datei unmaskiert lesen können. Der Standard eignet sich für Anmeldedaten, die berechtigterweise fehlen können; wenn das Geheimnis vorhanden sein könnte, das Muster es aber möglicherweise verfehlt, verwenden Sie `deny`

513 * `deny` macht die Datei stattdessen unlesbar628 * `deny` macht die Datei stattdessen unlesbar

514 * `error` stoppt das Sandbox-Setup, bis Sie die Konfiguration beheben629 * `error` stoppt die Einrichtung der Sandbox, bis Sie die Konfiguration korrigieren

515 630 

516 Claude Code behandelt `deny` als `error`, wann immer der Lesblock nicht durchgesetzt würde: wenn Sie [Dateisystem-Isolation deaktivieren](#disable-filesystem-isolation), und wenn ein `filesystem.allowRead`-Eintrag aus einer beliebigen Einstellungsquelle den Dateipfad erneut öffnet.631 Claude Code behandelt `deny` als `error`, wann immer die Lesesperre nicht durchgesetzt würde: wenn Sie die [Dateisystem-Isolation deaktivieren](#disable-filesystem-isolation) und wenn ein `filesystem.allowRead`-Eintrag den Pfad der Datei wieder freigibt.

517* `maskDuplicates` ersetzt auch wörtliche Kopien jedes maskierten Anmeldedaten-Wertes, eine `extract`-Erfassung oder ein `decode`-überprüftes Token, das außerhalb der abgestimmten Spannweiten gefunden wird, für ein Geheimnis, das wiederholt wird, wo Matching nicht reicht. Es gleicht rohe Teilzeichenfolgen ab, daher würde ein kurzer oder häufiger Wert überall ersetzt, wo er erscheint; reservieren Sie es für lange, hochentropische Geheimnisse. Standard: false.632* `maskDuplicates` ersetzt zusätzlich wörtliche Kopien jedes maskierten Anmeldedatenwerts, also einer `extract`-Erfassung oder eines durch `decode` verifizierten Tokens, die außerhalb der abgeglichenen Bereiche gefunden werden, für ein Geheimnis, das an Stellen wiederholt wird, die der Abgleich nicht erreicht. Es gleicht rohe Teilstrings ab, sodass ein kurzer oder häufiger Wert überall ersetzt würde, wo er vorkommt; verwenden Sie es daher nur für lange Geheimnisse mit hoher Entropie. Standard: false.

518 633 

519`mask` gilt für eine einzelne Datei, daher führen Sie jede Anmeldedatendatei einzeln auf. Claude Code fällt auf `deny` zurück für einen `mask`-Eintrag, den es nicht sicher maskieren kann: einen Verzeichnispfad, ein Glob-Muster, eine Datei größer als 8 MiB oder eine Datei, die kein UTF-8-Text ist. Schreiben Sie Verzeichnisse stattdessen als explizite `deny`-Einträge; die Tabelle unter [Welche Einstellungen können es deaktivieren](#which-settings-can-disable-it) behandelt, ob jede Form `filesystem.disabled` anheftet und wie sie sich mit Dateisystem-Isolation aus verhält.634`mask` gilt für eine einzelne Datei, listen Sie daher jede Datei mit Anmeldedaten einzeln auf. Claude Code fällt bei einem `mask`-Eintrag, den es nicht sicher maskieren kann, auf `deny` zurück: bei einem Verzeichnispfad, einem Glob-Muster, einer Datei größer als 8 MiB oder einer Datei, die kein UTF-8-Text ist. Tragen Sie Verzeichnisse stattdessen als explizite `deny`-Einträge ein; die Tabelle unter [Welche Einstellungen sie deaktivieren können](#which-settings-can-disable-it) beschreibt, ob jede Form `filesystem.disabled` festlegt und wie sie sich bei ausgeschalteter Dateisystem-Isolation verhält.

520 635 

521<h2 id="how-sandboxing-works">636<h2 id="how-sandboxing-works">

522 Wie Sandboxing funktioniert637 Wie Sandboxing funktioniert

523</h2>638</h2>

524 639 

525<h3 id="filesystem-isolation">640<h3 id="filesystem-isolation">

526 Dateisystem-Isolation641 Dateisystemisolation

527</h3>642</h3>

528 643 

529Das Sandboxed-Bash-Tool beschränkt den Dateisystem-Zugriff auf spezifische Verzeichnisse:644Das in einer Sandbox ausgeführte Bash-Tool beschränkt den Dateisystemzugriff auf bestimmte Verzeichnisse:

530 645 

531* **Standard-Schreibverhalten**: Lese- und Schreibzugriff auf das aktuelle Arbeitsverzeichnis und seine Unterverzeichnisse, alle Verzeichnisse, die Sie mit `--add-dir`, `/add-dir` oder [`permissions.additionalDirectories`](/docs/de/settings-reference#permissions-additionaldirectories) hinzugefügt haben, plus das benutzerabhängige Temp-Verzeichnis, auf das `$TMPDIR` verweist646* **Standardverhalten beim Schreiben**: Lese- und Schreibzugriff auf das aktuelle Arbeitsverzeichnis und seine Unterverzeichnisse, auf alle Verzeichnisse, die Sie mit `--add-dir`, `/add-dir` oder [`permissions.additionalDirectories`](/docs/de/settings-reference#permissions-additionaldirectories) hinzugefügt haben, sowie auf das benutzerspezifische temporäre Verzeichnis, auf das `$TMPDIR` verweist

532* **Standard-Leseverhalten**: Lesezugriff auf den gesamten Computer, außer bestimmten blockierten Verzeichnissen. Beachten Sie, dass diese Standard-Einstellung immer noch das Lesen von Anmeldedatendateien wie `~/.aws/credentials` und `~/.ssh/` ermöglicht. Verwenden Sie [`sandbox.credentials`](#protect-credentials), um Lesezugriffe auf diese Dateien zu blockieren und geheime Umgebungsvariablen zu deaktivieren, oder fügen Sie die Pfade zu `denyRead` hinzu.647* **Standardverhalten beim Lesen**: Lesezugriff auf den gesamten Computer, mit Ausnahme bestimmter gesperrter Verzeichnisse. Diese Standardeinstellung erlaubt weiterhin das Lesen von Dateien mit Anmeldedaten, daher sollten Sie [Anmeldedaten schützen](#protect-credentials), die Befehle nicht lesen sollen.

533* **Blockierter Lesezugriff**: Mit [`permissions.blockReadsOutsideWorkingDirectories`](/docs/de/settings-reference#permissions-blockreadsoutsideworkingdirectories) aktiviert, verlieren Sandbox-Befehle auch Lesezugriff auf Ihr Home-Verzeichnis und die anderen Verzeichnisse, die Benutzerdateien enthalten, außer den Pfaden, die [Sandboxed commands under the block](/docs/de/settings-reference#sandboxed-commands-under-the-block) auflistet. Dieser Abschnitt sagt auch, wann dieser Teil des Blocks nicht gilt.648* **Lesesperre**: Wenn [`permissions.blockReadsOutsideWorkingDirectories`](/docs/de/settings-reference#permissions-blockreadsoutsideworkingdirectories) aktiviert ist, verlieren in der Sandbox ausgeführte Befehle außerdem den Lesezugriff auf Ihr Home-Verzeichnis und die anderen Verzeichnisse, die Benutzerdateien enthalten, mit Ausnahme der Pfade, die unter [Befehle in der Sandbox unter der Sperre](/docs/de/settings-reference#sandboxed-commands-under-the-block) aufgeführt sind. Dieser Abschnitt beschreibt auch, wann dieser Teil der Sperre nicht gilt.

534* **Blockierter Zugriff**: Kann Dateien außerhalb des Arbeitsverzeichnisses, hinzugefügter Verzeichnisse und des benutzerabhängigen Temp-Verzeichnisses nicht ohne explizite Genehmigung ändern, einschließlich Shell-Konfigurationsdateien wie `~/.bashrc` und System-Binärdateien in `/bin/`649* **Git-Worktrees**: Wenn das Arbeitsverzeichnis ein [verknüpfter Git-Worktree](/docs/de/worktrees) ist, erlaubt die Sandbox auch Schreibvorgänge im gemeinsamen `.git`-Verzeichnis des Haupt-Repositorys, damit Befehle wie `git commit` Refs und den Index aktualisieren können. Schreibvorgänge in `hooks/` und `config` innerhalb dieses Verzeichnisses bleiben gesperrt.

535* **Git Worktrees**: Wenn das Arbeitsverzeichnis ein [verknüpftes Git Worktree](/docs/de/worktrees) ist, erlaubt die Sandbox auch Schreibzugriff auf das gemeinsame `.git`-Verzeichnis des Haupt-Repositorys, damit Befehle wie `git commit` Refs und den Index aktualisieren können. Schreibzugriffe auf `hooks/` und `config` in diesem Verzeichnis bleiben blockiert.

536* **Konfigurierbar**: Definieren Sie benutzerdefinierte zulässige und blockierte Pfade durch Einstellungen

537 650 

538Um die Dateisystem-Isolation vollständig zu überspringen und dabei die Netzwerk-Isolation beizubehalten, setzen Sie [`sandbox.filesystem.disabled`](#disable-filesystem-isolation).651Um die Dateisystemisolation vollständig zu überspringen und gleichzeitig die Netzwerkisolation beizubehalten, setzen Sie [`sandbox.filesystem.disabled`](#disable-filesystem-isolation).

539 652 

540<h3 id="protected-paths">653<h3 id="protected-paths">

541 Geschützte Pfade654 Geschützte Pfade

542</h3>655</h3>

543 656 

544Innerhalb der Verzeichnisse, in die Sandbox-Befehle schreiben können, blockiert die Sandbox immer noch Schreibzugriffe auf die Dateien, aus denen Claude Code Konfiguration und Code lädt. Ein Befehl, der diese Dateien bearbeiten könnte, könnte sich selbst Berechtigungen gewähren oder einen Hook oder MCP-Server hinzufügen, den Claude Code außerhalb der Sandbox ausführt. Das Berechtigungssystem hat seine eigenen [geschützten Pfade](/docs/de/permission-modes#protected-paths), die steuern, was Claude Code genehmigt, bevor ein Tool ausgeführt wird; die Liste der Sandbox gilt für einen Befehl, der bereits ausgeführt wird. Sie umfasst vier Gruppen von Pfaden:657Innerhalb der Verzeichnisse, in die in der Sandbox ausgeführte Befehle schreiben dürfen, verweigert die Sandbox weiterhin Schreibvorgänge in die Dateien, aus denen Claude Code Konfiguration und Code lädt. Ein Befehl, der diese Dateien bearbeiten könnte, könnte sich selbst Berechtigungen erteilen oder einen Hook oder MCP-Server hinzufügen, den Claude Code außerhalb der Sandbox ausführt. Das Berechtigungssystem hat eigene [geschützte Pfade](/docs/de/permission-modes#protected-paths), die steuern, was Claude Code genehmigt, bevor ein Tool ausgeführt wird; die Liste der Sandbox gilt für einen Befehl, der bereits läuft. Sie umfasst vier Gruppen von Pfaden:

545 658 

546* **In Ihrem Arbeitsverzeichnis und den Verzeichnissen darüber**: die `.claude`-Einstellungsdateien, die Verzeichnisse `.claude/skills`, `.claude/agents`, `.claude/commands` und `.claude/hooks`, `.mcp.json` und die Dateien, die Claude Code selbst ausführt, wie `.claude/workflows` und `.claude/scheduled_tasks.json`659* **In Ihrem Arbeitsverzeichnis und den darüberliegenden Verzeichnissen**: die `.claude`-Einstellungsdateien, die Verzeichnisse `.claude/skills`, `.claude/agents`, `.claude/commands` und `.claude/hooks`, `.mcp.json` sowie die Dateien, die Claude Code selbstständig ausführt, etwa `.claude/workflows` und `.claude/scheduled_tasks.json`

547* **Nur in Ihrem Arbeitsverzeichnis**: Shell-Startdateien wie `.bashrc` und `.zshrc`, `.gitconfig`, die Verzeichnisse `.vscode` und `.idea` sowie `hooks` und `config` innerhalb von `.git`660* **Nur in Ihrem Arbeitsverzeichnis**: Shell-Startdateien wie `.bashrc` und `.zshrc`, `.gitconfig`, die Verzeichnisse `.vscode` und `.idea` sowie `hooks` und `config` innerhalb von `.git`

548* **Dateien, die Ihr Arbeitsverzeichnis in ein Bare-Git-Repository umwandeln würden**: `HEAD`, `objects` und `refs` auf der obersten Ebene, plus `config` und `hooks` dort, wenn ein `HEAD` neben ihnen sitzt. Eine Datei namens `config` wird auch ohne `HEAD` blockiert. Unter Linux und WSL2 löscht die Sandbox eine `HEAD`-Datei oder ein `objects`- oder `refs`-Verzeichnis auf der obersten Ebene, das während der Ausführung eines Sandbox-Befehls erscheint661* **Dateien, die Ihr Arbeitsverzeichnis in ein Bare-Git-Repository verwandeln würden**: `HEAD`, `objects` und `refs` auf oberster Ebene sowie dort vorhandene `config`- und `hooks`-Einträge, wenn daneben ein `HEAD` liegt. Eine Datei namens `config` wird auch ohne `HEAD` gesperrt. Unter Linux und WSL2 löscht die Sandbox eine `HEAD`-Datei bzw. ein `objects`- oder `refs`-Verzeichnis auf oberster Ebene, das erscheint, während ein Befehl in der Sandbox läuft

549* **In `~/.claude` oder dem Verzeichnis, auf das `CLAUDE_CONFIG_DIR` verweist**: die meisten seiner Inhalte, plus `~/.claude.json` und der Anmeldedaten-Speicher `.credentials.json`662* **In `~/.claude` oder dem Verzeichnis, auf das `CLAUDE_CONFIG_DIR` verweist**: der Großteil des Inhalts sowie `~/.claude.json` und der Anmeldedatenspeicher `.credentials.json`

550 663 

551Wenn ein Symlink während der Sitzung auf dem Pfad einer geschützten Einstellungsdatei erscheint, blockiert die Sandbox auch Schreibzugriffe auf die Datei, auf die er verweist, ab dem nächsten Befehl.664Wenn während der Sitzung ein Symlink am Pfad einer geschützten Einstellungsdatei erscheint, verweigert die Sandbox ab dem nächsten Befehl auch Schreibvorgänge in die Datei, auf die er verweist.

552 665 

553Es gibt keine Möglichkeit, einen dieser Pfade auszunehmen: Ein `allowWrite`-Eintrag oder eine `Edit`-Erlaubnisregel, die den Pfad abdeckt, hebt den Schutz nicht auf. Die einzige Möglichkeit, den Schutz auszuschalten, ist [`filesystem.disabled`](#disable-filesystem-isolation), was die Dateisystem-Isolation für jeden Pfad ausschaltet. Um die meisten dieser Pfade für Ihren Computer aufgelöst zu sehen, führen Sie `/sandbox` aus und öffnen Sie die Registerkarte **Config**, die sie unter **Denied within allowed** auflistet, gemischt mit Ihren eigenen `denyWrite`-Einträgen.666Es gibt keine Möglichkeit, einen dieser Pfade auszunehmen: Ein `allowWrite`-Eintrag oder eine `Edit`-allow-Regel, die den Pfad abdeckt, hebt den Schutz nicht auf. Die einzige Möglichkeit, den Schutz auszuschalten, ist [`filesystem.disabled`](#disable-filesystem-isolation), wodurch die Dateisystemisolation für alle Pfade ausgeschaltet wird. Um die meisten dieser Pfade für Ihren Rechner aufgelöst zu sehen, führen Sie `/sandbox` aus und öffnen Sie den Tab **Config**, der sie unter **Denied within allowed** zusammen mit Ihren eigenen `denyWrite`-Einträgen auflistet.

554 667 

555Wenn `git merge` oder `git checkout` mit `unable to unlink old` auf einem dieser Pfade fehlschlägt, siehe [Troubleshooting](#troubleshooting).668Wenn `git merge` oder `git checkout` bei einem dieser Pfade mit `unable to unlink old` fehlschlägt, lesen Sie [Fehlerbehebung](#troubleshooting).

556 669 

557<h3 id="network-isolation">670<h3 id="network-isolation">

558 Netzwerk-Isolation671 Netzwerkisolation

559</h3>672</h3>

560 673 

561Der Netzwerkzugriff wird durch einen Proxy-Server gesteuert, der außerhalb der Sandbox läuft:674Ein in der Sandbox ausgeführter Befehl hat keinen direkten Zugang zum Netzwerk:

675 

676* **Linux und WSL2**: Der Befehl läuft in einem separaten Netzwerk-Namespace, der keine Verbindung zu Ihrem Netzwerk hat

677* **macOS**: Das Sandbox-Framework Seatbelt blockiert standardmäßig alle Verbindungen außer der zum Sandbox-Proxy

678 

679Claude Code betreibt den Sandbox-Proxy auf Ihrem Rechner außerhalb der Sandbox und leitet Befehle mit `HTTP_PROXY`, `HTTPS_PROXY`, `ALL_PROXY` und verwandten Umgebungsvariablen zu ihm. Der Proxy prüft den Hostnamen jeder Verbindung anhand Ihrer erlaubten und gesperrten Domains.

562 680 

563* **Domain-Einschränkungen**: Claude Code erlaubt standardmäßig keine Domains vorab. Wenn ein Befehl zum ersten Mal eine neue Domain benötigt, fordert Claude Code zur Genehmigung auf; im [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) nennt Claude stattdessen die Hosts, die ein Befehl benötigt, auf dem Befehl selbst, pro [Per-command allowed domains](#per-command-allowed-domains-in-auto-mode).681Was ein Tool erreichen kann, hängt davon ab, ob es den Proxy verwendet:

564* **Genehmigungsoptionen**: Wenn Sie bei der Aufforderung „Ja" wählen, erlaubt Claude Code den Host für den Rest der aktuellen Sitzung und fordert nicht erneut auf für spätere Verbindungen zum gleichen Host. Wenn Sie „Ja, und nicht mehr fragen" wählen, speichert Claude Code eine `WebFetch(domain:...)`-Erlaubnisregel in Ihren [lokalen Einstellungen](/docs/de/permissions#permission-system), sodass der Host in zukünftigen Sitzungen zulässig bleibt.

565* **Vorab zulässige Domains**: Lassen Sie Domains vorab mit [`allowedDomains`](/docs/de/settings-reference#sandbox-network-alloweddomains) zu, um die Aufforderung vollständig zu vermeiden. Claude Code erlaubt auch Domains vorab aus `WebFetch(domain:...)`-Erlaubnisregeln, wie in [Permission rules](#permission-rules) beschrieben.

566* **Strikte Zulassungsliste**: Wenn Sie [`strictAllowlist`](/docs/de/settings-reference#sandbox-network-strictallowlist) in Benutzer-, verwalteten oder CLI-`--settings`-Einstellungen auf `true` setzen, blockiert Claude Code den Zugriff von Sandbox-Befehlen auf jeden Host außerhalb der Zulassungsliste, anstatt zu fragen. Die Zulassungsliste ist die gleiche, gegen die die Sandbox sonst fragt: `allowedDomains` plus Domains aus `WebFetch(domain:...)`-Erlaubnisregeln, oder nur die Einträge der verwalteten Einstellungen, wenn `allowManagedDomainsOnly` gesetzt ist. Claude Code erzwingt dies nur für Sandbox-Befehle; In-Process-Tools wie `WebFetch` folgen immer noch ihren [Permission rules](#permission-rules). Das Setzen in der `.claude/settings.json` oder `.claude/settings.local.json` eines Repositorys hat keine Auswirkung. Erfordert Claude Code v2.1.219 oder später.

567* **Verwaltete Sperrung**: Wenn [`allowManagedDomainsOnly`](/docs/de/settings-reference#sandbox-network-allowmanageddomainsonly) in verwalteten Einstellungen gesetzt ist, werden nicht zulässige Domains automatisch blockiert, anstatt zu fragen, und nur `allowedDomains` und `WebFetch(domain:...)`-Erlaubnisregeln aus verwalteten Einstellungen werden berücksichtigt.

568* **Unternehmens-Proxy**: Wenn Ihr Netzwerk erfordert, dass ausgehender Datenverkehr durch einen Unternehmens-Proxy geleitet wird, setzen Sie `HTTPS_PROXY`, `HTTP_PROXY` und `NO_PROXY` wie [Proxy-Konfiguration](/docs/de/network-config#proxy-configuration) beschreibt, im `env`-Block Ihrer Einstellungen, damit [Background Agents](/docs/de/network-config#set-network-variables-in-settings-not-the-shell) sie auch erhalten, oder in der Umgebung, aus der Sie Claude Code starten. Claude Code erzwingt die Domain-Zulassungsliste und tunnelt dann zulässige Verbindungen durch diesen Upstream-Proxy.

569* **Benutzerdefinierte Proxy-Unterstützung**: Fortgeschrittene Benutzer können benutzerdefinierte Regeln für ausgehenden Datenverkehr implementieren

570* **Umfassende Abdeckung**: Einschränkungen gelten für alle Skripte, Programme und Subprozesse, die durch Befehle erzeugt werden

571 682 

572In einer `WebFetch(domain:...)`-Regel ehrt die Sandbox zwei Wildcard-Formen: ein führendes `*.`, wie `*.example.com`, und ein einfaches `*`. Die einfache `*`-Form erfordert Claude Code v2.1.186 oder später. Ein Wildcard an einer anderen Position, wie `WebFetch(domain:example.*)`, stimmt immer noch mit Abrufen überein, hat aber keine Auswirkung auf Sandbox-Befehle.683* **Tools, die die Proxy-Variablen lesen**: `curl`, `npm`, `git` über HTTPS und ähnliche Tools verbinden sich, sobald ihr Host erlaubt ist. Ein `allowedDomains`-Eintrag ohne Port erlaubt jeden Port auf diesem Host

684* **Tools, die die Proxy-Variablen ignorieren**: einfaches `ssh`, die meisten Datenbanktreiber und ähnliche Tools können sich nicht verbinden, selbst zu einem erlaubten Host. Siehe [Ein Datenbank-Client oder ein anderes Nicht-HTTP-Tool erreicht einen erlaubten Host nicht](#a-database-client-or-other-non-http-tool-fails-to-reach-an-allowed-host)

685* **Alles, was nicht TCP ist**: UDP, HTTP/3 über QUIC und ICMP-Tools wie `ping` können die Sandbox nicht verlassen

686 

687Die folgenden Einstellungen und Verhaltensweisen steuern, welche Hosts der Proxy erlaubt:

688 

689* **Domain-Beschränkungen**: Ihre erlaubten Domains sind anfangs leer. [Hosts außerhalb Ihrer erlaubten Domains](#hosts-outside-your-allowed-domains) beschreibt, was passiert, wenn ein Befehl zum ersten Mal eine neue Domain benötigt.

690* **Genehmigungsoptionen**: Wenn Sie bei der Abfrage Yes wählen, erlaubt Claude Code den Host für den Rest der aktuellen Sitzung. Wenn Sie „Yes, and don't ask again" wählen, speichert Claude Code eine `WebFetch(domain:...)`-allow-Regel in Ihren [lokalen Einstellungen](/docs/de/permissions#permission-system), sodass der Host auch in zukünftigen Sitzungen erlaubt bleibt. Solange die Sandbox [vom Administrator vorgeschrieben](#repository-settings-under-an-admin-required-sandbox) ist, speichert Claude Code die Regel in Ihren Benutzereinstellungen, wo sie in jedem Projekt gilt.

691* **Vorab erlaubte Domains**: Erlauben Sie Domains vorab mit [`allowedDomains`](/docs/de/settings-reference#sandbox-network-alloweddomains), um die Abfrage ganz zu vermeiden. Claude Code erlaubt außerdem vorab Domains aus `WebFetch(domain:...)`-allow-Regeln, wie unter [Berechtigungsregeln](#permission-rules) beschrieben.

692* **Strikte Allowlist**: Wenn Sie [`strictAllowlist`](/docs/de/settings-reference#sandbox-network-strictallowlist) in Benutzer-, verwalteten oder CLI-`--settings`-Einstellungen auf `true` setzen, verweigert Claude Code Befehlen in der Sandbox den Zugriff auf jeden Host außerhalb der Allowlist, statt nachzufragen. Die Allowlist besteht aus `allowedDomains` plus Domains aus `WebFetch(domain:...)`-allow-Regeln oder nur aus den Einträgen der verwalteten Einstellungen, wenn `allowManagedDomainsOnly` gesetzt ist. [Sperren, die ohne vom Administrator vorgeschriebene Sandbox gelten](#locks-that-apply-without-an-admin-required-sandbox) behandelt die Einträge eines Repositorys. Claude Code erzwingt dies nur für Befehle in der Sandbox; prozessinterne Tools wie `WebFetch` folgen weiterhin ihren [Berechtigungsregeln](#permission-rules). Das Setzen in `.claude/settings.json` oder `.claude/settings.local.json` eines Repositorys hat keine Wirkung. Erfordert Claude Code v2.1.219 oder höher.

693* **Verwaltete Sperre**: Wenn [`allowManagedDomainsOnly`](/docs/de/settings-reference#sandbox-network-allowmanageddomainsonly) in verwalteten Einstellungen gesetzt ist, werden nicht erlaubte Domains automatisch blockiert, statt nachzufragen, und nur `allowedDomains` und `WebFetch(domain:...)`-allow-Regeln aus verwalteten Einstellungen werden berücksichtigt.

694* **Unternehmens-Proxy**: Wenn Ihr Netzwerk verlangt, dass ausgehender Datenverkehr über einen Unternehmens-Proxy läuft, setzen Sie `HTTPS_PROXY`, `HTTP_PROXY` und `NO_PROXY` wie unter [Proxy-Konfiguration](/docs/de/network-config#proxy-configuration) beschrieben, und zwar im `env`-Block Ihrer Einstellungen, damit auch [Hintergrund-Agenten](/docs/de/network-config#set-network-variables-in-settings-not-the-shell) sie erhalten, oder in der Umgebung, aus der Sie Claude Code starten. Claude Code erzwingt die Domain-Allowlist und tunnelt erlaubte Verbindungen dann über diesen vorgelagerten Proxy. `http://`- und `https://`-Proxy-URLs funktionieren, bei Bedarf mit Basic-Authentifizierung in der URL.

695 

696In einer `WebFetch(domain:...)`-Regel berücksichtigt die Sandbox zwei Platzhalterformen: ein führendes `*.`, etwa `*.example.com`, und ein alleinstehendes `*`. Die Form mit alleinstehendem `*` erfordert Claude Code v2.1.186 oder höher. Ein Platzhalter an jeder anderen Position, etwa `WebFetch(domain:example.*)`, passt weiterhin auf Abrufe, hat aber keine Wirkung auf Befehle in der Sandbox.

573 697 

574<Note>698<Note>

575 Der integrierte Proxy erzwingt die Zulassungsliste basierend auf dem angeforderten Hostnamen und beendet oder inspiziert standardmäßig keinen TLS-Datenverkehr. Die experimentelle Einstellung [`network.tlsTerminate`](/docs/de/settings-reference#sandbox-network-tlsterminate), verfügbar in Claude Code v2.1.199 und später, lässt den integrierten Proxy TLS selbst beenden, was [`mask`-Anmeldedateneinträge](#mask-credentials) erfordern. Siehe [Security limitations](#security-limitations) für die Auswirkungen des Standards und [Custom proxy configuration](#custom-proxy-configuration), wenn Ihr Bedrohungsmodell TLS-Inspektion erfordert.699 Der integrierte Proxy erzwingt die Allowlist anhand des angefragten Hostnamens und terminiert oder prüft TLS-Datenverkehr standardmäßig nicht. Die experimentelle Einstellung [`network.tlsTerminate`](/docs/de/settings-reference#sandbox-network-tlsterminate), verfügbar in Claude Code v2.1.199 und höher, lässt den integrierten Proxy TLS selbst terminieren, was für [`mask`-Anmeldedateneinträge](#mask-credentials) erforderlich ist. Siehe [Sicherheitseinschränkungen](#security-limitations) für die Auswirkungen der Standardeinstellung und [Benutzerdefinierte Proxy-Konfiguration](#custom-proxy-configuration), falls Ihr Bedrohungsmodell eine TLS-Prüfung erfordert.

576</Note>700</Note>

577 701 

702<h4 id="hosts-outside-your-allowed-domains">

703 Hosts außerhalb Ihrer erlaubten Domains

704</h4>

705 

706Wenn sich ein Befehl in der Sandbox mit einem Host verbindet, der nicht zu Ihren erlaubten Domains gehört, bleibt der Befehl in der Sandbox und wartet auf eine Entscheidung. In einer interaktiven Terminal-Sitzung hängt die Entscheidung von Ihrem Berechtigungsmodus ab:

707 

708| Berechtigungsmodus | Was mit der Verbindung passiert |

709| :- | :- |

710| `bypassPermissions`-Modus sowie Plan-Modus mit [verfügbarem Umgehen von Berechtigungen](/docs/de/permission-modes#skip-all-checks-with-bypasspermissions-mode) | Ohne Abfrage erlaubt |

711| Manueller Modus, `acceptEdits`-Modus und Plan-Modus in anderen Fällen | Sie erhalten eine Abfrage |

712| Auto-Modus | Abgelehnt, sofern der Befehl den Host nicht [aufgeführt hat](#per-command-allowed-domains-in-auto-mode) und der Klassifikator die Liste genehmigt hat |

713| `dontAsk`-Modus | Abgelehnt |

714 

715Wenn [`strictAllowlist`](/docs/de/settings-reference#sandbox-network-strictallowlist) oder [`allowManagedDomainsOnly`](/docs/de/settings-reference#sandbox-network-allowmanageddomainsonly) aktiviert ist, lehnt der integrierte Sandbox-Proxy die Verbindung in jedem Berechtigungsmodus ab. Im `bypassPermissions`-Modus sind Hosts außerhalb Ihrer erlaubten Domains erlaubt, sofern keine dieser Einstellungen aktiviert ist. [Der Notausgang des Wiederholungsversuchs außerhalb der Sandbox](#the-unsandboxed-retry-escape-hatch) beschreibt, wann ein Befehl die Sandbox in diesem Modus verlassen kann. Eine Verbindung zu einem Host in [`deniedDomains`](/docs/de/settings-reference#sandbox-network-denieddomains) wird ebenfalls in jedem Berechtigungsmodus abgelehnt.

716 

717<h4 id="hostnames-that-resolve-to-local-addresses">

718 Hostnamen, die zu lokalen Adressen aufgelöst werden

719</h4>

720 

721Nachdem ein Hostname die Allowlist passiert hat, löst der Sandbox-Proxy ihn auf und lehnt die Verbindung ab, wenn der Name ausschließlich zu lokalen Adressen aufgelöst wird. Zu den lokalen Adressen gehören Loopback-Adressen wie `127.0.0.1`, Link-Local-Adressen wie der Cloud-Metadaten-Endpunkt `169.254.169.254` sowie Adressen, die Ihrem eigenen Rechner zugewiesen sind. Die Namen `localhost` und `*.localhost` dürfen zu Loopback aufgelöst werden.

722 

723Ein erlaubter Intranet-Hostname, der zu einem privaten Bereich wie `10.0.0.0/8` aufgelöst wird, verbindet sich. Damit ein Name zu einer abgelehnten Adresse aufgelöst werden darf, fügen Sie diese IP-Adresse zu `allowedDomains` hinzu, etwa `"127.0.0.1:8080"`.

724 

725Die Prüfung gilt für Hostnamen. Über eine Verbindung zu einer IP-Adresse entscheiden Ihre erlaubten Domains und Ihr Berechtigungsmodus. Der Proxy überspringt die Prüfung außerdem bei Verbindungen, die er über einen vorgelagerten Unternehmens-Proxy sendet, da dieser Proxy den Namen auflöst.

726 

578<h4 id="per-command-allowed-domains-in-auto-mode">727<h4 id="per-command-allowed-domains-in-auto-mode">

579 Per-command allowed domains im Auto-Modus728 Erlaubte Domains pro Befehl im Auto-Modus

580</h4>729</h4>

581 730 

582Im [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) mit aktiviertem Sandboxing nennt Claude die Hosts, die ein Befehl benötigt, auf dem Befehl selbst, anstatt für jede Verbindung eine Netzwerk-Genehmigung auszulösen. Jeder Bash-, PowerShell- oder [Monitor](/docs/de/tools-reference#monitor-tool)-Befehl, der in der Sandbox ausgeführt wird, kann eine Liste von Hosts über die Zulassungsliste der Sandbox hinaus tragen: eine Domain wie `registry.npmjs.org`, ein Wildcard wie `*.pythonhosted.org` oder eine IP-Adresse, jeweils mit einem optionalen `:port`. Der Klassifizierer überprüft die Hosts zusammen mit dem Befehl. Erfordert Claude Code v2.1.271 oder später.731Im [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) mit aktiviertem Sandboxing benennt Claude die Hosts, die ein Befehl benötigt, direkt am Befehl, statt für jede Verbindung eine Netzwerkgenehmigung auszulösen. Jeder Bash-, PowerShell- oder [Monitor](/docs/de/tools-reference#monitor-tool)-Befehl, der in der Sandbox läuft, kann eine Liste von Hosts über die Allowlist der Sandbox hinaus mitführen: eine Domain wie `registry.npmjs.org`, einen Platzhalter wie `*.pythonhosted.org` oder eine IP-Adresse, jeweils mit optionalem `:port`. Der Klassifikator prüft die Hosts zusammen mit dem Befehl. Erfordert Claude Code v2.1.271 oder höher.

583 732 

584Eine genehmigte Liste öffnet diese Hosts nur für diesen einen Befehl, solange er ausgeführt wird. Nichts wird zu Ihren Session-zulässigen Hosts oder Ihren Einstellungen hinzugefügt; der nächste Befehl nennt seine eigenen Hosts.733Eine genehmigte Liste öffnet diese Hosts nur für diesen einen Befehl, solange er läuft. Weder den erlaubten Hosts Ihrer Sitzung noch Ihren Einstellungen wird etwas hinzugefügt; der nächste Befehl benennt seine eigenen Hosts.

585 734 

586Ein Befehl, der Hosts trägt, geht an den Klassifizierer, anstatt von einer Erlaubnisregel oder dem [Auto-Allow-Modus](#sandbox-modes) der Sandbox genehmigt zu werden. Wenn eine [ask-Regel](/docs/de/permissions#manage-permissions) eine Aufforderung für den Befehl erzwingt, listet der Berechtigungsdialog in Ihrem Terminal die Hosts daneben auf, und das Genehmigen dort deckt beides ab.735Ein Befehl, der Hosts mitführt, geht an den Klassifikator, statt durch eine Berechtigungsregel oder den [Auto-Allow-Modus](#sandbox-modes) der Sandbox genehmigt zu werden. Wenn eine [ask-Regel](/docs/de/permissions#manage-permissions) eine Abfrage für den Befehl erzwingt, listet der Berechtigungsdialog in Ihrem Terminal die Hosts daneben auf, und eine Genehmigung dort deckt beides ab.

587 736 

588Eine Per-Command-Liste verbreitert nur das, was die Sandbox standardmäßig blockiert. [`deniedDomains`](/docs/de/settings-reference#sandbox-network-denieddomains)-Einträge blockieren immer noch. Wenn [`strictAllowlist`](/docs/de/settings-reference#sandbox-network-strictallowlist) oder [`allowManagedDomainsOnly`](/docs/de/settings-reference#sandbox-network-allowmanageddomainsonly) die Zulassungsliste sperrt, lehnt Claude Code Per-Command-Listen ab.737Eine Liste pro Befehl erweitert nur das, was die Sandbox standardmäßig verweigert. Einträge in [`deniedDomains`](/docs/de/settings-reference#sandbox-network-denieddomains) blockieren weiterhin. Wenn [`strictAllowlist`](/docs/de/settings-reference#sandbox-network-strictallowlist) oder [`allowManagedDomainsOnly`](/docs/de/settings-reference#sandbox-network-allowmanageddomainsonly) die Allowlist sperrt, lehnt Claude Code Listen pro Befehl ab.

589 738 

590Während Per-Command-Listen gelten, lehnt Claude Code eine Verbindung zu einem Host ab, den kein genehmigter Befehl aufgelistet hat, ohne eine Aufforderung oder eine Klassifizierer-Überprüfung. Die Ablehnung nennt den Host im Ergebnis des Befehls, und Claude führt den Befehl mit dem hinzugefügten Host erneut aus.739Solange Listen pro Befehl gelten, lehnt Claude Code eine Verbindung zu einem Host, den kein genehmigter Befehl aufgeführt hat, ohne Abfrage und ohne Prüfung durch den Klassifikator ab. Die Ablehnung nennt den Host im Ergebnis des Befehls, und Claude führt den Befehl mit hinzugefügtem Host erneut aus.

591 740 

592<h4 id="ipv6-addresses-in-domain-lists">741<h4 id="ipv6-addresses-in-domain-lists">

593 IPv6-Adressen in Domain-Listen742 IPv6-Adressen in Domain-Listen

594</h4>743</h4>

595 744 

596Die Domain-Listen der Sandbox sind `allowedDomains`, `deniedDomains` und die `WebFetch(domain:...)`-Regeln, die sie speisen. Um eine IPv6-Adresse in einer von ihnen zu treffen, schreiben Sie das Literal in Klammern: `"[::1]"` stimmt mit dieser Adresse auf jedem Port überein, und `"[::1]:443"` stimmt mit ihr nur auf Port 443 überein. Schreiben Sie den Port als Zahl von 1 bis 65535 ohne führende Nullen. Die geklammerte Form erfordert Claude Code v2.1.229 oder später. Vor v2.1.229, wenn der Text nach dem letzten Doppelpunkt eines ungeklammerten Eintrags eine Portnummer war, las Claude Code ihn als eine, also benannte `::1:443` die Adresse `::1` auf Port 443.745Die Domain-Listen der Sandbox sind `allowedDomains`, `deniedDomains` und die `WebFetch(domain:...)`-Regeln, die in sie einfließen. Um in einer davon eine IPv6-Adresse abzugleichen, schreiben Sie das Literal in eckigen Klammern: `"[::1]"` passt auf diese Adresse an jedem Port, und `"[::1]:443"` passt nur an Port 443. Schreiben Sie den Port als Zahl von 1 bis 65535 ohne führende Nullen. Die Form in eckigen Klammern erfordert Claude Code v2.1.229 oder höher. Vor v2.1.229 las Claude Code den Text nach dem letzten Doppelpunkt eines Eintrags ohne Klammern als Port, wenn es sich um eine Portnummer handelte, sodass `::1:443` die Adresse `::1` an Port 443 bezeichnete.

597 746 

598Wenn Sie bei der Netzwerk-Genehmigungsaufforderung für eine IPv6-Adresse „Ja, und nicht mehr fragen" wählen, speichert Claude Code die `WebFetch(domain:...)`-Regel mit der Adresse geklammert, sodass die Regel die Adresse in zukünftigen Sitzungen weiterhin trifft.747Wenn Sie bei der Netzwerk-Genehmigungsabfrage für eine IPv6-Adresse „Yes, and don't ask again" wählen, speichert Claude Code die `WebFetch(domain:...)`-Regel mit der Adresse in eckigen Klammern, sodass die Regel die Adresse auch in zukünftigen Sitzungen weiterhin abgleicht.

599 748 

600Ein ungeklammerter Eintrag mit zwei oder mehr Doppelpunkten ist mehrdeutig: `::1:443` ist sowohl eine vollständige IPv6-Adresse als auch eine Adresse gefolgt von einem Port. Claude Code erzwingt mehrdeutige Schreibweisen konservativ, anstatt zu erraten, welche Lesart Sie gemeint haben:749Ein Eintrag ohne Klammern mit zwei oder mehr Doppelpunkten ist mehrdeutig: `::1:443` ist sowohl eine vollständige IPv6-Adresse als auch eine Adresse gefolgt von einem Port. Claude Code setzt mehrdeutige Schreibweisen konservativ durch, statt zu raten, welche Lesart Sie gemeint haben:

601 750 

602* **Deny-Listen**: Claude Code blockiert jede Lesart, die der Eintrag analysiert, also wird die Lesart, die Sie gemeint haben, blockiert. Für einen Eintrag ohne analysierbare Lesart blockiert Claude Code nichts.751* **Denylists**: Claude Code sperrt jede Lesart, als die der Eintrag geparst werden kann, sodass die von Ihnen gemeinte Lesart in jedem Fall blockiert ist. Bei einem Eintrag ohne parsbare Lesart blockiert Claude Code nichts.

603* **Allow-Listen**: Claude Code erlaubt nie mehr als Sie geschrieben haben. Es schreibt einen mehrdeutigen Eintrag in seine Host-und-Port-Lesart um, wenn diese Lesart sauber analysiert, und kann den Eintrag vollständig fallen lassen, anstatt die Zulassungsliste zu verbreitern.752* **Allowlists**: Claude Code erlaubt nie mehr, als Sie geschrieben haben. Es schreibt einen mehrdeutigen Eintrag in seine Host-und-Port-Lesart um, wenn diese Lesart sauber geparst werden kann, und verwirft den Eintrag gegebenenfalls ganz, statt die Allowlist zu erweitern.

604 753 

605Führen Sie `claude doctor` in Ihrem Terminal aus, um die betroffenen Einträge zu finden: Die Warnung `Sandbox network domain entries have unreliable spellings` nennt bis zu drei von ihnen und zählt den Rest. Schreiben Sie jeden in der geklammerten Form um, um die Warnung zu löschen. Die Warnung nennt auch Einträge, deren Schreibweise aus anderen Gründen unzuverlässig ist, wie `@`, Pfad- oder Abfragezeichen oder Wildcards in Klammern.754Führen Sie `claude doctor` in Ihrem Terminal aus, um die betroffenen Einträge zu finden: Die Warnung `Sandbox network domain entries have unreliable spellings` nennt bis zu drei davon und zählt die übrigen. Schreiben Sie jeden davon in die Form mit eckigen Klammern um, damit die Warnung verschwindet. Die Warnung nennt auch Einträge, deren Schreibweise aus anderen Gründen unzuverlässig ist, etwa wegen `@`, Pfad- oder Query-Zeichen oder Platzhaltern innerhalb eckiger Klammern.

606 755 

607<h3 id="os-level-enforcement">756<h3 id="os-level-enforcement">

608 OS-Level-Durchsetzung757 Durchsetzung auf Betriebssystemebene

609</h3>758</h3>

610 759 

611Das Sandboxed-Bash-Tool nutzt Betriebssystem-Sicherheits-Primitive:760Das in einer Sandbox ausgeführte Bash-Tool verwendet Sicherheitsprimitive des Betriebssystems:

612 761 

613* **macOS**: Verwendet Seatbelt für Sandbox-Durchsetzung762* **macOS**: verwendet Seatbelt zur Durchsetzung der Sandbox

614* **Linux**: Verwendet [bubblewrap](https://github.com/containers/bubblewrap) für Isolation763* **Linux**: verwendet [bubblewrap](https://github.com/containers/bubblewrap) zur Isolation

615* **WSL2**: Verwendet bubblewrap, wie Linux764* **WSL2**: verwendet bubblewrap, wie Linux

616 765 

617WSL1 wird nicht unterstützt, da bubblewrap Kernel-Features erfordert, die nur in WSL2 verfügbar sind.766WSL1 wird nicht unterstützt, da bubblewrap Kernel-Funktionen benötigt, die nur in WSL2 verfügbar sind.

618 767 

619Diese gleichen Primitive sind als das eigenständige Paket [`@anthropic-ai/sandbox-runtime`](https://github.com/anthropic-experimental/sandbox-runtime) verfügbar, das die Seite [Sandbox-Umgebungen](/docs/de/sandbox-environments#sandbox-runtime) als separaten Ansatz zum Wrapping des gesamten Claude Code-Prozesses behandelt.768Sie können das Paket [`@anthropic-ai/sandbox-runtime`](https://github.com/anthropics/sandbox-runtime) auch eigenständig ausführen, um den Claude Code-Prozess zu umschließen. Siehe [Sandbox-Laufzeit](/docs/de/sandbox-environments#sandbox-runtime).

620 769 

621<h2 id="how-sandboxing-relates-to-permissions-and-permission-modes">770<h2 id="how-sandboxing-relates-to-permissions-and-permission-modes">

622 Wie Sandboxing sich auf Genehmigungen und Genehmigungsmodi bezieht771 Wie Sandboxing sich auf Genehmigungen und Genehmigungsmodi bezieht


679 828 

680Um die Sandbox für jeden Entwickler zu erfordern, liefern Sie die `sandbox`-Schlüssel über [verwaltete Einstellungen](/docs/de/managed-settings#delivery-mechanisms), entweder als Datei, die von Ihrem MDM verwaltet wird, oder über [server-verwaltete Einstellungen](/docs/de/server-managed-settings) auf claude.ai.829Um die Sandbox für jeden Entwickler zu erfordern, liefern Sie die `sandbox`-Schlüssel über [verwaltete Einstellungen](/docs/de/managed-settings#delivery-mechanisms), entweder als Datei, die von Ihrem MDM verwaltet wird, oder über [server-verwaltete Einstellungen](/docs/de/server-managed-settings) auf claude.ai.

681 830 

682Die folgende Konfiguration verwalteter Einstellungen aktiviert die Sandbox, weigert sich, Claude Code zu starten, wenn die Sandbox nicht initialisiert werden kann, und verhindert, dass das Modell Befehle außerhalb der Sandbox erneut versucht:831Die folgende Konfiguration verwalteter Einstellungen aktiviert die Sandbox, verweigert den Start von Claude Code, wenn die Plattform nicht unterstützt wird oder eine Abhängigkeit fehlt, und verhindert, dass das Modell Befehle außerhalb der Sandbox erneut versucht:

683 832 

684```json theme={null}833```json theme={null}

685{834{


693 842 

694Die beiden Schlüssel über `enabled` hinaus steuern, was passiert, wenn die Sandbox einen Befehl nicht ausführen kann:843Die beiden Schlüssel über `enabled` hinaus steuern, was passiert, wenn die Sandbox einen Befehl nicht ausführen kann:

695 844 

696* **`failIfUnavailable`**: Eine fehlende Abhängigkeit wie bubblewrap auf Linux blockiert Claude Code vom Start, anstatt eine Warnung anzuzeigen und auf unsandboxed-Ausführung zurückzufallen845* **`failIfUnavailable`**: Eine fehlende Abhängigkeit wie bubblewrap auf Linux verhindert den Start von Claude Code, anstatt auf eine Ausführung ohne Sandbox zurückzufallen

697* **`allowUnsandboxedCommands: false`**: Claude Code ignoriert die `dangerouslyDisableSandbox`-Fluchtluke, daher können Befehle, die unter der Sandbox fehlschlagen, nicht außerhalb davon erneut versucht werden846* **`allowUnsandboxedCommands: false`**: Claude Code ignoriert die `dangerouslyDisableSandbox`-Fluchtluke. Wenn ein Befehl unter der Sandbox fehlschlägt, kann Claude ihn daher nicht ohne Sandbox erneut versuchen

847 

848Erwägen Sie zusätzlich diese Ergänzungen:

849 

850* Fügen Sie `excludedCommands` für alle von der Organisation genehmigten Tools hinzu, die ohne Isolation ausgeführt werden müssen, da diese Konfiguration [verhindert, dass die Einstellungen eines Repositorys Befehle aus der Sandbox herausnehmen](#repository-settings-under-an-admin-required-sandbox)

851* Fügen Sie [`sandbox.credentials`](#protect-credentials)-Einträge für Anmeldedaten-Verzeichnisse wie `~/.aws` und `~/.ssh` und für geheime Umgebungsvariablen hinzu, da die Standard-Leserichtlinie diese immer noch zulässt

698 852 

699Zwei Ergänzungen sind erwägenswert. Fügen Sie `excludedCommands` für alle von der Organisation genehmigten Tools hinzu, die ohne Isolation ausgeführt werden müssen. Fügen Sie [`sandbox.credentials`](#protect-credentials)-Einträge für Anmeldedaten-Verzeichnisse wie `~/.aws` und `~/.ssh` und für geheime Umgebungsvariablen hinzu, da die Standard-Lesrichtlinie diese immer noch zulässt.853Diese Konfiguration führt die Befehle, die Claude ausführt, in der Sandbox aus. Ein Entwickler kann immer noch einen Befehl an der [`!`-Shell-Modus-Eingabeaufforderung](/docs/de/interactive-mode#shell-mode-with-prefix) eingeben und ihn außerhalb der Sandbox ausführen, mit dem gleichen Zugriff, den er bereits in jedem Terminal außerhalb von Claude Code hat. Siehe [strikter Sandbox-Modus](#turn-off-the-retry-with-strict-sandbox-mode) für die Sitzungen, in denen eingegebene Befehle in der Sandbox ausgeführt werden.

700 854 

701Diese Konfiguration sandboxed die Befehle, die Claude ausführt. Ein Entwickler kann immer noch einen Befehl an der [`!`-Shell-Modus-Eingabeaufforderung](/docs/de/interactive-mode#shell-mode-with-prefix) eingeben und ihn außerhalb der Sandbox ausführen, mit dem gleichen Zugriff, den er bereits in jedem Terminal außerhalb von Claude Code hat. Siehe [Die unsandboxed-Wiederholungs-Fluchtluke](#the-unsandboxed-retry-escape-hatch) für die Sitzungen, in denen eingegebene Befehle sandboxed ausgeführt werden.855Die Sandbox läuft nicht auf nativem Windows, daher beendet sich Claude Code auf diesen Rechnern beim Start, wenn `failIfUnavailable` gesetzt ist. Wenn Ihre Flotte Windows-Hosts enthält, können Sie:

702 856 

703Die Sandbox läuft nicht auf nativem Windows, daher müssen Sie diese Konfiguration auf macOS und Linux beschränken oder diese Benutzer Claude Code in WSL2 oder einem Container ausführen lassen, wenn Ihre Flotte Windows-Hosts enthält.857* **Die Konfiguration nach Betriebssystem ausliefern**: Stellen Sie sie über Ihr MDM oder als [Datei für verwaltete Einstellungen](/docs/de/managed-settings#delivery-mechanisms) nur auf macOS- und Linux-Rechnern bereit. [Server-verwaltete Einstellungen](/docs/de/server-managed-settings#current-limitations) gelten für alle Benutzer in der Organisation

858* **Windows-Benutzer in eine unterstützte Umgebung verlagern**: Lassen Sie sie Claude Code in WSL2 oder einem Container ausführen

704 859 

705<h3 id="keep-developers-from-widening-the-policy">860<h3 id="keep-developers-from-widening-the-policy">

706 Verhindern Sie, dass Entwickler die Richtlinie erweitern861 Verhindern Sie, dass Entwickler die Richtlinie erweitern

707</h3>862</h3>

708 863 

709Für boolesche Schlüssel wie `enabled` und `failIfUnavailable` verwendet Claude Code den verwalteten Wert und ignoriert alles, das ein Entwickler lokal setzt. Für Array-Schlüssel wie `excludedCommands` und `allowRead` führt Claude Code Einträge aus jedem Scope zusammen, daher kann ein Entwickler Einträge anhängen, die die Richtlinie erweitern.864Wenn verwaltete Einstellungen einen booleschen Schlüssel wie `enabled` oder `failIfUnavailable` setzen, verwendet Claude Code den verwalteten Wert und ignoriert alles, was ein Entwickler lokal setzt. Für Array-Schlüssel wie `allowRead` führt Claude Code Einträge aus den Geltungsbereichen zusammen, die die Sitzung lädt, daher kann ein Entwickler Einträge anhängen, die die Richtlinie erweitern, sofern keine Sperre diesen Schlüssel abdeckt.

710 865 

711Setzen Sie `allowManagedReadPathsOnly` auf `true` in verwalteten Einstellungen, damit nur `allowRead`-Einträge aus verwalteten Einstellungen berücksichtigt werden. Dies verhindert, dass Entwickler den Lesezugriff über die von der Organisation genehmigten Pfade hinaus erweitern. Um Netzwerk-Domains auf die gleiche Weise auf die verwalteten Werte zu sperren, setzen Sie [`allowManagedDomainsOnly`](/docs/de/settings-reference#sandbox-network-allowmanageddomainsonly).866Sofern verwaltete Einstellungen sie nicht setzen, können die Benutzereinstellungen eines Entwicklers oder `--settings` die folgenden Schlüssel einschalten. Die `.claude/settings.json` eines Repositorys kann dies ebenfalls, es sei denn, die Sandbox ist [vom Administrator erforderlich](#repository-settings-under-an-admin-required-sandbox). Jeder dieser Schlüssel schwächt die Sandbox, setzen Sie ihn daher in verwalteten Einstellungen auf `false`, wenn Sie nicht möchten, dass er verwendet wird:

867 

868* [`enableWeakerNestedSandbox`](/docs/de/settings-reference#sandbox-enableweakernestedsandbox)

869* [`enableWeakerNetworkIsolation`](/docs/de/settings-reference#sandbox-enableweakernetworkisolation)

870* [`network.allowAllUnixSockets`](/docs/de/settings-reference#sandbox-network-allowallunixsockets)

871* [`network.allowLocalBinding`](/docs/de/settings-reference#sandbox-network-allowlocalbinding)

872* [`allowAppleEvents`](/docs/de/settings-reference#sandbox-allowappleevents), den ein Repository nicht einschalten kann

873 

874Setzen Sie `allowManagedReadPathsOnly` auf `true` in verwalteten Einstellungen, damit nur `allowRead`-Einträge aus verwalteten Einstellungen berücksichtigt werden. Dies verhindert, dass Entwickler den Lesezugriff über die von der Organisation genehmigten Pfade hinaus erweitern.

875 

876Um Netzwerk-Domains auf die gleiche Weise auf die verwalteten Werte zu sperren, setzen Sie [`allowManagedDomainsOnly`](/docs/de/settings-reference#sandbox-network-allowmanageddomainsonly). Bei aktiver Sperre können nur verwaltete Einstellungen einen [Proxy-Port](#custom-proxy-configuration) setzen.

712 877 

713Wenn verwaltete Einstellungen `sandbox.filesystem` konfigurieren oder einen beliebigen `sandbox.credentials.files`-Eintrag mit `"mode": "deny"` auflisten, können nur verwaltete Einstellungen [`filesystem.disabled`](#disable-filesystem-isolation) setzen, daher können Entwickler von Administratoren bereitgestellte Filesystem-Einschränkungen nicht ausschalten. Ob ein `mask`-Eintrag den Schlüssel fixiert, hängt davon ab, wie er sich auflöst; die Tabelle unter [Welche Einstellungen können es deaktivieren](#which-settings-can-disable-it) behandelt die vier Fälle.878Wenn verwaltete Einstellungen `sandbox.filesystem` konfigurieren oder einen beliebigen `sandbox.credentials.files`-Eintrag mit `"mode": "deny"` auflisten, können nur verwaltete Einstellungen [`filesystem.disabled`](#disable-filesystem-isolation) setzen, daher können Entwickler von Administratoren bereitgestellte Filesystem-Einschränkungen nicht ausschalten. Ob ein `mask`-Eintrag den Schlüssel fixiert, hängt davon ab, wie er sich auflöst; die Tabelle unter [Welche Einstellungen können es deaktivieren](#which-settings-can-disable-it) behandelt die vier Fälle.

714 879 

715`excludedCommands` hat keine äquivalente verwaltete Sperrung, daher kann ein Entwickler immer Einträge anhängen, die zusätzliche Befehle außerhalb der Sandbox ausführen. Halten Sie die verwaltete Liste eng.880<h4 id="repository-settings-under-an-admin-required-sandbox">

881 Repository-Einstellungen bei einer vom Administrator erforderlichen Sandbox

882</h4>

883 

884Die Sandbox ist vom Administrator erforderlich, solange eine dieser Einstellungen wirksam ist:

885 

886* [`allowUnsandboxedCommands`](/docs/de/settings-reference#sandbox-allowunsandboxedcommands) ist in verwalteten Einstellungen auf `false` gesetzt, oder mit dem `--settings`-Flag, sofern verwaltete Einstellungen es nicht auf `true` setzen

887* [`allowManagedDomainsOnly`](/docs/de/settings-reference#sandbox-network-allowmanageddomainsonly) ist in verwalteten Einstellungen auf `true` gesetzt

888 

889Diese Einstellungen schalten die Sandbox nicht ein, setzen Sie daher auch `enabled`.

890 

891Solange die Sandbox vom Administrator erforderlich ist, übernimmt Claude Code die Einstellungen, die sie lockern, nur aus verwalteten Einstellungen, dem `--settings`-Flag und der `~/.claude/settings.json` jedes Entwicklers. Diese Einstellungen in der `.claude/settings.json` und `.claude/settings.local.json` eines Repositorys ignoriert es:

892 

893| Repository-Einstellung | Was Claude Code ignoriert |

894| :- | :- |

895| `excludedCommands`, `ignoreViolations`, `network.allowedDomains`, `network.allowUnixSockets`, `network.allowMachLookup`, `network.httpProxyPort`, `network.socksProxyPort` | Jeden Eintrag |

896| `filesystem.allowWrite`, `Edit(...)`-Allow-Regeln, `permissions.additionalDirectories` | Den Schreibzugriff, den jeder Eintrag Befehlen in der Sandbox gewährt. Claudes Datei-Tools befolgen weiterhin die `Edit(...)`-Regeln und zusätzlichen Verzeichnisse |

897| `WebFetch(domain:...)`-Allow-Regeln | Den Host, den jede Regel zur Sandbox-Allowlist hinzufügt. Das WebFetch-Tool befolgt die Regel weiterhin |

898| `enableWeakerNestedSandbox`, `enableWeakerNetworkIsolation`, `network.allowAllUnixSockets`, `network.allowLocalBinding` | `true`. Ein `false` gilt weiterhin |

899| `enabled`, `failIfUnavailable` | `false`, wenn die `~/.claude/settings.json` des Entwicklers `true` setzt |

900| `filesystem.allowRead` | Einen Eintrag an oder unterhalb eines Pfads, dessen Lesen verwaltete Einstellungen, `--settings` oder Benutzereinstellungen verweigern, oder ein Glob, der einen solchen treffen könnte |

901 

902Diese Einstellungen gelten weiterhin, solange die Sandbox vom Administrator erforderlich ist:

903 

904* **In den Dateien eines Repositorys**: Deny-Einträge und der Wert von `autoAllowBashIfSandboxed`. Setzen Sie den Schlüssel in verwalteten Einstellungen, um zu verhindern, dass ein Repository ihn ändert

905* **In den eigenen Einstellungen eines Entwicklers**: Die Einstellungen aus der Tabelle gelten weiterhin aus `~/.claude/settings.json` oder `--settings`, sofern keine nur verwaltete Sperre wie `allowManagedDomainsOnly` sie abdeckt. Die meisten davon, etwa `excludedCommands` und `filesystem.allowWrite`, haben keine nur verwaltete Sperre

906 

907Die Konfiguration unter [Erzwingen Sie Sandboxing mit verwalteten Einstellungen](#enforce-sandboxing-with-managed-settings) macht die Sandbox vom Administrator erforderlich. Fügen Sie die `excludedCommands`-, `allowWrite`- und Socket-Einträge, die Ihre genehmigten Tools benötigen, zu verwalteten Einstellungen hinzu, da ein Repository sie nicht bereitstellen kann.

908 

909Erfordert Claude Code v2.1.285 oder höher. Von v2.1.282 bis v2.1.284 führten dieselben Einstellungen dazu, dass Claude Code die `excludedCommands`-Einträge eines Repositorys ignorierte.

910 

911<h4 id="locks-that-apply-without-an-admin-required-sandbox">

912 Sperren, die ohne eine vom Administrator erforderliche Sandbox gelten

913</h4>

914 

915Einige Einstellungen führen dazu, dass Claude Code die Repository-Schlüssel ignoriert, die eine Einschränkung direkt überschreiben, selbst wenn die Sandbox nicht vom Administrator erforderlich ist. Jede davon hat diese Wirkung nur, wenn Sie sie in einer Datei setzen, die in ihrer Zeile genannt ist, und die anderen Sandbox-Einstellungen des Repositorys gelten weiterhin. Erfordert Claude Code v2.1.285 oder höher.

916 

917| Einstellung | Wo Sie sie setzen | Was Claude Code in den Einstellungen eines Repositorys ignoriert |

918| :- | :- | :- |

919| `network.deniedDomains` oder eine `WebFetch(domain:...)`-Deny-Regel | Verwaltete Einstellungen, `--settings` | `httpProxyPort` und `socksProxyPort` |

920| `network.strictAllowlist` | Verwaltete Einstellungen, `--settings`, Benutzereinstellungen | Die Proxy-Ports, `allowedDomains` und `WebFetch(domain:...)`-Allow-Regeln |

921| `filesystem.denyRead`, eine `Read(...)`-Deny-Regel oder ein `credentials.files`-Eintrag | Verwaltete Einstellungen, `--settings` | Einen `allowRead`-, `allowWrite`-, `Edit(...)`-Allow- oder `additionalDirectories`-Eintrag an oder unterhalb eines Pfads, dessen Lesen verwaltete Einstellungen, `--settings` oder Benutzereinstellungen verweigern, oder ein Glob, der einen solchen treffen könnte |

922 

923Diese Sperren ändern, was Befehle in der Sandbox erreichen können. Das WebFetch-Tool und Claudes Datei-Tools befolgen weiterhin die Regeln und zusätzlichen Verzeichnisse eines Repositorys.

716 924 

717<h3 id="custom-proxy-configuration">925<h3 id="custom-proxy-configuration">

718 Benutzerdefinierte Proxy-Konfiguration926 Benutzerdefinierte Proxy-Konfiguration

719</h3>927</h3>

720 928 

721Für Organisationen, die erweiterte Netzwerk-Sicherheit erfordern, können Sie einen benutzerdefinierten Proxy implementieren, um:929Um Sandbox-Datenverkehr mit Ihren eigenen Tools zu inspizieren, zu filtern oder zu protokollieren, ersetzen Sie den integrierten Sandbox-Proxy durch einen Proxy, den Sie auf demselben Rechner betreiben.

722 930 

723* HTTPS-Datenverkehr zu entschlüsseln und zu inspizieren931Um Sandbox-Datenverkehr stattdessen durch einen Unternehmens-Proxy an anderer Stelle in Ihrem Netzwerk zu leiten, setzen Sie `HTTPS_PROXY`, wie es der Eintrag **Unternehmens-Proxy** unter [Netzwerkisolation](#network-isolation) beschreibt. Auf diese Weise gilt die Allowlist von Claude Code weiterhin.

724* Benutzerdefinierte Filterregeln anzuwenden

725* Alle Netzwerk-Anfragen zu protokollieren

726* Mit bestehender Sicherheitsinfrastruktur zu integrieren

727 932 

728Um Claude Code auf Ihren Proxy zu verweisen, setzen Sie die Proxy-Ports in [Sandbox-Einstellungen](/docs/de/settings-reference#sandbox-settings):933Um Befehle in der Sandbox an Ihren Proxy zu leiten, setzen Sie die localhost-Ports, auf denen er lauscht, in [Sandbox-Einstellungen](/docs/de/settings-reference#sandbox-settings):

729 934 

730```json theme={null}935```json theme={null}

731{936{


738}943}

739```944```

740 945 

946Wenn Sie einen Port setzen und außerdem `HTTPS_PROXY` oder `HTTP_PROXY` setzen, leitet Claude Code das, was Befehle in der Sandbox an Ihren Proxy senden, nicht an den Proxy weiter, den diese Variablen nennen. Um einen Unternehmens-Proxy zu erreichen, konfigurieren Sie Ihren eigenen Proxy so, dass er an diesen weiterleitet.

947 

948Welche Dateien einen Port setzen können, hängt von Ihren anderen Sandbox-Einstellungen ab:

949 

950* **`allowManagedDomainsOnly` ist aktiviert**: nur verwaltete Einstellungen

951* **Die Sandbox ist [vom Administrator erforderlich](#repository-settings-under-an-admin-required-sandbox), oder eine [engere Netzwerksperre](#locks-that-apply-without-an-admin-required-sandbox) gilt**: verwaltete Einstellungen, `--settings` und Benutzereinstellungen

952* **Andernfalls**: jede Einstellungsdatei

953 

954Claude Code ignoriert einen Port, der an anderer Stelle gesetzt ist. Vor v2.1.285 konnte jede Einstellungsdatei einen Port setzen.

955 

956<Warning>

957 Sobald einer der beiden Ports gilt, ist Ihr Proxy dafür verantwortlich, alles zu filtern, was an ihn gesendet wird. Die eigenen Netzwerkkontrollen von Claude Code, wie `allowedDomains`, `deniedDomains`, `strictAllowlist`, Genehmigungsabfragen und die [Prüfung auf lokale Adressen](#hostnames-that-resolve-to-local-addresses), gelten für diesen Datenverkehr nicht mehr. Ein Befehl in der Sandbox kann sich mit jedem der beiden Proxys verbinden. Wenn Sie also nur einen Port setzen, begrenzen die Domain-Listen von Claude Code auf dem anderen Proxy nicht, was der Befehl über Ihren Proxy erreicht.

958</Warning>

959 

741<h2 id="troubleshooting">960<h2 id="troubleshooting">

742 Fehlerbehebung961 Fehlerbehebung

743</h2>962</h2>

744 963 

745Einige Befehle schlagen in der Sandbox fehl, obwohl sie außerhalb funktionieren. Die folgenden Lösungen decken die häufigsten Fälle ab.964Einige Befehle schlagen in der Sandbox fehl, obwohl sie außerhalb funktionieren. Die folgende Liste enthält kurze Lösungen. Fehler, die eine längere Erklärung erfordern, haben jeweils eine eigene Überschrift.

965 

966Wenn die Sandbox Ihrer Organisation [vom Administrator vorgeschrieben](#repository-settings-under-an-admin-required-sandbox) ist, ignoriert Claude Code die in diesen Lösungen genannten Einstellungen in den Einstellungsdateien eines Projekts. Speichern Sie sie daher in `~/.claude/settings.json`, wo sie in jedem Projekt gelten. Wenn eine Lösung trotzdem keine Wirkung zeigt, setzen die verwalteten Einstellungen Ihrer Organisation möglicherweise diesen Schlüssel.

967 

968Eine Lösung, die ein `excludedCommands`-Muster hinzufügt, nimmt die Befehle, auf die das Muster zutrifft, aus der Sandbox heraus. Siehe [was ein ausgeschlossener Befehl tun kann](#run-commands-outside-the-sandbox-with-excludedcommands).

746 969 

747* **Befehle schlagen mit einem host-not-allowed-Fehler fehl**: Viele CLI-Tools müssen bestimmte Hosts erreichen. Wenn Sie die Berechtigung bei der Aufforderung erteilen, wird der Host zu Ihrer Zulassungsliste hinzugefügt, damit das Tool in Zukunft in der Sandbox ausgeführt wird.970* **Befehle schlagen mit einem host-not-allowed-Fehler fehl**: Viele CLI-Tools müssen bestimmte Hosts erreichen. Genehmigen Sie den Host, wenn Sie gefragt werden, oder fügen Sie ihn zu [`allowedDomains`](/docs/de/settings-reference#sandbox-network-alloweddomains) hinzu. Wenn Ihre Organisation die Allowlist mit `allowManagedDomainsOnly` sperrt, erscheint keine Abfrage; bitten Sie in diesem Fall Ihren Administrator, den Host hinzuzufügen.

748* **`jest` hängt oder schlägt fehl**: `watchman` ist nicht kompatibel mit der Sandbox. Führen Sie stattdessen `jest --no-watchman` aus.971* **`jest` hängt oder schlägt fehl**: `watchman` ist nicht kompatibel mit der Sandbox. Führen Sie stattdessen `jest --no-watchman` aus.

749* **Go-basierte CLIs schlagen bei der TLS-Verifizierung auf macOS fehl**: Tools wie `gh`, `gcloud` und `terraform` können unter Seatbelt bei der TLS-Verifizierung fehlschlagen. Listen Sie diese Tools in [`excludedCommands`](/docs/de/settings-reference#sandbox-excludedcommands) auf. Wenn Sie `httpProxyPort` mit einem MITM-Proxy und einer benutzerdefinierten CA verwenden, setzen Sie stattdessen [`enableWeakerNetworkIsolation`](/docs/de/settings-reference#sandbox-enableweakernetworkisolation) auf `true`.972* **Go-basierte CLIs schlagen bei der TLS-Verifizierung auf macOS fehl**: Tools wie `gh`, `gcloud` und `terraform` können unter Seatbelt bei der TLS-Verifizierung fehlschlagen. Fügen Sie für jedes Tool ein Muster wie `gh *` zu [`excludedCommands`](#run-commands-outside-the-sandbox-with-excludedcommands) hinzu. Das Tool läuft dann mit Ihrem vollen Zugriff und seinen gespeicherten Anmeldedaten. Wenn Sie `httpProxyPort` mit einem MITM-Proxy und einer benutzerdefinierten CA verwenden, setzen Sie stattdessen [`enableWeakerNetworkIsolation`](/docs/de/settings-reference#sandbox-enableweakernetworkisolation) auf `true`.

750* **`open`, `osascript` oder browserbasierte Authentifizierungsabläufe schlagen mit Fehler `-600` auf macOS fehl**: Die Sandbox blockiert Apple Events standardmäßig. Setzen Sie [`allowAppleEvents`](/docs/de/settings-reference#sandbox-allowappleevents) in Ihren Benutzer-, verwalteten oder CLI-Einstellungen auf `true`, um diese zuzulassen. Projekteinstellungen werden für diesen Schlüssel ignoriert. Das Aktivieren entfernt die Code-Ausführungsisolation, da sandboxed-Befehle dann andere Anwendungen ohne Sandbox ohne Benutzereingabeaufforderung starten können und AppleScript-Befehle an laufende Anwendungen senden können, unterliegen jedoch der macOS-Automatisierungszustimmungsaufforderung (TCC). Alternativ können Sie den Befehl zu [`excludedCommands`](/docs/de/settings-reference#sandbox-excludedcommands) hinzufügen.973* **`open`, `osascript` oder browserbasierte Authentifizierungsabläufe schlagen mit Fehler `-600` auf macOS fehl**: Die Sandbox blockiert Apple Events standardmäßig. Setzen Sie [`allowAppleEvents`](/docs/de/settings-reference#sandbox-allowappleevents) in Ihren Benutzer-, verwalteten oder CLI-Einstellungen auf `true`, um diese zuzulassen. Projekteinstellungen werden für diesen Schlüssel ignoriert. Das Aktivieren hebt die Isolation der Codeausführung auf, da in der Sandbox ausgeführte Befehle dann ohne Benutzerabfrage andere Anwendungen außerhalb der Sandbox starten und AppleScript-Befehle an laufende Anwendungen senden können, vorbehaltlich der macOS-Abfrage zur Automatisierungszustimmung (TCC). Alternativ können Sie ein Muster wie `open *` zu [`excludedCommands`](#run-commands-outside-the-sandbox-with-excludedcommands) hinzufügen. Jeder `open`-Aufruf durchläuft dann den Berechtigungsablauf, und `open` kann jede Datei oder App starten, auch eine, die Claude geschrieben hat.

751* **`docker`-Befehle schlagen fehl**: `docker` ist nicht kompatibel mit der Sandbox. Fügen Sie `docker *` zu [`excludedCommands`](/docs/de/settings-reference#sandbox-excludedcommands) hinzu.974* **`docker`-Befehle schlagen fehl**: `docker` ist nicht kompatibel mit der Sandbox. Nehmen Sie die benötigten `docker`-Befehle mit einem [`excludedCommands`](#run-commands-outside-the-sandbox-with-excludedcommands)-Muster wie `docker compose *` aus der Sandbox heraus. Dieser Abschnitt erklärt, was ein ausgeschlossener `docker`-Befehl erreichen kann. Ein engeres Muster nimmt weniger Befehle aus der Sandbox heraus.

752* **`pbcopy`, `xclip` oder `wl-copy` aktualisiert die Zwischenablage nicht**: Diese Zwischenablage-Dienstprogramme können aus der Sandbox heraus die Systemzwischenablage nicht erreichen, in welchem Fall der Text, der an sie weitergeleitet wird, nicht ankommt.975* **`pbcopy`, `xclip` oder `wl-copy` aktualisiert die Zwischenablage nicht**: Diese Zwischenablage-Dienstprogramme können aus der Sandbox heraus die Systemzwischenablage möglicherweise nicht erreichen, in welchem Fall der Text, der an sie weitergeleitet wird, nicht ankommt.

753 976 

754 Um Claudes Ausgabe in Ihre Zwischenablage zu kopieren, bitten Sie Claude, sie in seiner Antwort auszudrucken, und führen Sie dann [`/copy`](/docs/de/commands) aus. `/copy` schreibt aus dem Claude Code-Prozess in die Zwischenablage, nicht aus einem sandboxed-Befehl.977 Um Claudes Ausgabe in Ihre Zwischenablage zu kopieren, bitten Sie Claude, sie in seiner Antwort auszugeben, und führen Sie dann [`/copy`](/docs/de/commands) aus. `/copy` schreibt aus dem Claude Code-Prozess in die Zwischenablage, nicht aus einem in der Sandbox ausgeführten Befehl.

755 978 

756 Wenn Claude Text an eines dieser Tools weiterleitet, führt das Hinzufügen des Tools zu [`excludedCommands`](/docs/de/settings-reference#sandbox-excludedcommands) diesen Aufruf nicht automatisch aus der Sandbox heraus.979 Wenn Claude Text an eines dieser Tools weiterleitet, nimmt das Hinzufügen des Tools zu [`excludedCommands`](/docs/de/settings-reference#sandbox-excludedcommands) diesen Aufruf nicht von sich aus aus der Sandbox heraus.

757* **Ein git-Befehl schlägt mit `unable to unlink old` fehl**: `git merge`, `git checkout` und ähnliche Befehle schlagen auf diese Weise fehl, wenn sie eine Datei ersetzen müssen, in die die Sandbox Schreibvorgänge verweigert, unabhängig davon, ob sich diese Datei unter einem [geschützten Pfad](#protected-paths) wie `.claude/skills` befindet, unter einem Ihrer `denyWrite`-Einträge oder außerhalb der Verzeichnisse, in die die Sandbox Befehle überhaupt schreiben lässt. Unter Linux und WSL2 endet der Fehler mit `Read-only file system`.980* **Ein git-Befehl schlägt mit `unable to unlink old` fehl**: `git merge`, `git checkout` und ähnliche Befehle schlagen auf diese Weise fehl, wenn sie eine Datei ersetzen müssen, in die die Sandbox Schreibvorgänge verweigert, unabhängig davon, ob sich diese Datei unter einem [geschützten Pfad](#protected-paths) wie `.claude/skills` befindet, unter einem Ihrer `denyWrite`-Einträge oder außerhalb der Verzeichnisse, in die die Sandbox Befehle überhaupt schreiben lässt. Unter Linux und WSL2 endet der Fehler mit `Read-only file system`.

758 981 

759 Nach dem Fehler kann Claude [anbieten, den Befehl außerhalb der Sandbox erneut auszuführen](#the-unsandboxed-retry-escape-hatch); genehmigen Sie diesen erneuten Versuch, oder führen Sie den git-Befehl selbst in einem anderen Terminal aus. Wenn Sie `allowUnsandboxedCommands` auf `false` gesetzt haben, kann Claude den erneuten Versuch nicht anbieten, also führen Sie den Befehl selbst aus. Wenn derselbe git-Befehl häufig fehlschlägt, fügen Sie ihn zu [`excludedCommands`](/docs/de/settings-reference#sandbox-excludedcommands) hinzu.982 Nach dem Fehler kann Claude [anbieten, den Befehl außerhalb der Sandbox erneut auszuführen](#the-unsandboxed-retry-escape-hatch); genehmigen Sie diesen Wiederholungsversuch, oder führen Sie den git-Befehl selbst in einem anderen Terminal aus. Wenn Sie `allowUnsandboxedCommands` auf `false` gesetzt haben, kann Claude den Wiederholungsversuch nicht anbieten, also führen Sie den Befehl selbst aus.

760* **Bubblewrap schlägt fehl, um in einem Container zu starten**: In einem unprivilegierten Container kann bubblewrap kein neues `/proc`-Dateisystem bereitstellen, daher schlagen sandboxed-Befehle mit einem `bwrap`-Fehler wie `Can't mount proc on /newroot/proc: Operation not permitted` fehl. Setzen Sie [`enableWeakerNestedSandbox`](/docs/de/settings-reference#sandbox-enableweakernestedsandbox) auf `true`, damit die innere Sandbox das vorhandene `/proc` des Containers stattdessen bind-mounted. Verwenden Sie diese Einstellung nur, wenn der äußere Container bereits die Isolationsgrenze bietet, die Sie benötigen, da sie Prozessinformationen für sandboxed-Befehle verfügbar macht, die eine neue `/proc`-Bereitstellung verbergen würde.983* **Bubblewrap startet in einem Container nicht**: In einem unprivilegierten Container kann bubblewrap kein neues `/proc`-Dateisystem einhängen, daher schlagen in der Sandbox ausgeführte Befehle mit einem `bwrap`-Fehler wie `Can't mount proc on /newroot/proc: Operation not permitted` fehl. Setzen Sie [`enableWeakerNestedSandbox`](/docs/de/settings-reference#sandbox-enableweakernestedsandbox) auf `true`, damit die innere Sandbox stattdessen das vorhandene `/proc` des Containers per Bind-Mount einbindet. Verwenden Sie diese Einstellung nur, wenn der äußere Container bereits die Isolationsgrenze bietet, die Sie benötigen, da sie in der Sandbox ausgeführten Befehlen Prozessinformationen zugänglich macht, die ein neu eingehängtes `/proc` verbergen würde.

761* **0-Byte-Dateien mit Schreibschutz erscheinen in `.claude`-Einstellungspfaden, und „Ja, und nicht mehr fragen" wird nicht gespeichert**: Unter Linux und WSL2 hält die Sandbox einen Schreibverweigerung auf einer Datei, die noch nicht existiert, indem sie dort einen 0-Byte-Platzhalter mit Schreibschutz erstellt, während ein sandboxed-Befehl ausgeführt wird. Die Sandbox entfernt den Platzhalter danach. Wenn eine Sitzung vor dieser Bereinigung beendet wird, beispielsweise durch SIGKILL, bleiben die Platzhalter bestehen. Spätere Sitzungen binden sie bei jedem Start erneut schreibgeschützt, daher schlägt ein Einstellungsschreibvorgang wie das Speichern einer Berechtigungswahl fehl, wenn einer vorhanden ist.984* **Schreibgeschützte 0-Byte-Dateien erscheinen in `.claude`-Einstellungspfaden, und „Ja, und nicht mehr fragen" wird nicht gespeichert**: Unter Linux und WSL2 setzt die Sandbox eine Schreibsperre für eine noch nicht existierende Datei durch, indem sie dort einen schreibgeschützten 0-Byte-Platzhalter erstellt, während ein Befehl in der Sandbox ausgeführt wird. Die Sandbox entfernt den Platzhalter danach. Wenn eine Sitzung vor dieser Bereinigung beendet wird, beispielsweise durch SIGKILL, bleiben die Platzhalter bestehen. Spätere Sitzungen binden sie bei jedem Start erneut schreibgeschützt ein, daher schlägt ein Schreibvorgang in die Einstellungen, etwa das Speichern einer Berechtigungswahl, dort fehl, wo einer vorhanden ist.

762 985 

763 Führen Sie `claude doctor` aus, um die verbleibenden Platzhalter-Dateien aufzulisten. Die Warnung [`Stale sandbox mask files left by a killed session`](/docs/de/errors#stale-sandbox-mask-files-left-by-a-killed-session) nennt bis zu drei davon und zählt den Rest. Löschen Sie jede Datei mit `rm`, während keine andere Claude Code-Sitzung in diesem Projekt ausgeführt wird. Vor v2.1.257 ließ Claude Code dieselben Platzhalter ohne Kennzeichnung zurück.986 Führen Sie `claude doctor` aus, um die verbleibenden Platzhalter-Dateien aufzulisten. Die Warnung [`Stale sandbox mask files left by a killed session`](/docs/de/errors#stale-sandbox-mask-files-left-by-a-killed-session) nennt bis zu drei davon und zählt den Rest. Löschen Sie jede Datei mit `rm`, während keine andere Claude Code-Sitzung in diesem Projekt ausgeführt wird. Vor v2.1.257 ließ Claude Code dieselben Platzhalter ohne Kennzeichnung zurück.

764* **`--dangerously-skip-permissions` schlägt als root fehl**: Dieses Flag wird blockiert, wenn es als root oder über sudo unter Linux und macOS ausgeführt wird, da root-Zugriff kombiniert mit keinen Berechtigungsaufforderungen jede Datei oder jeden Dienst auf dem System ändern kann. Die Überprüfung wird automatisch in einer erkannten Sandbox übersprungen. Um autonom in einem Container zu laufen, verwenden Sie die [dev container](/docs/de/devcontainer)-Konfiguration, die Claude Code als Nicht-Root-Benutzer ausführt.987* **`--dangerously-skip-permissions` schlägt als root fehl**: Dieses Flag wird blockiert, wenn es als root oder über sudo unter Linux und macOS ausgeführt wird, da root-Zugriff in Kombination mit fehlenden Berechtigungsabfragen jede Datei und jeden Dienst auf dem System ändern kann. Die Überprüfung wird in einer erkannten Sandbox automatisch übersprungen. Um autonom in einem Container zu laufen, verwenden Sie die [Dev-Container](/docs/de/devcontainer)-Konfiguration, die Claude Code als Nicht-Root-Benutzer ausführt.

988 

989<h3 id="git-over-ssh-fails-with-the-sandbox-on">

990 `git` über SSH schlägt bei aktivierter Sandbox fehl

991</h3>

992 

993Unter macOS schlagen `git fetch`, `git pull` und `git push` gegen ein SSH-Remote in der Sandbox fehl, selbst wenn der Host zugelassen ist. Unter Linux und WSL2 funktionieren sie, sobald der Host zugelassen ist. Claude Code tunnelt die SSH-Verbindung von git durch den [Sandbox-Proxy](#network-isolation), und der macOS-Tunnel kann sich nicht bei diesem Proxy authentifizieren.

994 

995Prüfen Sie unter Linux und WSL2 Folgendes, wenn die Verbindung weiterhin fehlschlägt:

996 

997* **Der Host ist auf Port 22 zugelassen**: Ein `allowedDomains`-Eintrag ohne Port, etwa `"git.example.com"`, deckt dies ab

998* **Ihr Unternehmensproxy lässt Port 22 zu**: Wenn Ihr Netzwerk einen Upstream-Proxy erfordert, läuft auch der Tunnel darüber

999* **Der Schlüssel ist als Datei lesbar**: Die Sandbox kann den `ssh-agent`-Socket blockieren, und ein `denyRead`- oder `credentials`-Eintrag für `~/.ssh` verbirgt Ihre Schlüsseldateien

1000 

1001Stellen Sie unter macOS das Remote auf HTTPS um, wofür HTTPS-Anmeldedaten wie ein Personal Access Token erforderlich sind:

1002 

1003```bash theme={null}

1004git remote set-url origin https://git.example.com/example-org/example-repo.git

1005```

1006 

1007Wenn Sie das SSH-Remote beibehalten müssen, nehmen Sie die Netzwerkbefehle von git mit [`excludedCommands`](#run-commands-outside-the-sandbox-with-excludedcommands) aus der Sandbox heraus:

1008 

1009```json theme={null}

1010{

1011 "sandbox": {

1012 "excludedCommands": ["git fetch *", "git pull *", "git push *"]

1013 }

1014}

1015```

1016 

1017Diese Einträge treffen auf `git push origin main` zu. Ein Aufruf, der ein `cd` hinzufügt, `git -C` verwendet oder eine Befehlssubstitution enthält, bleibt in der Sandbox. Die ausgeschlossenen git-Befehle können jeden Host erreichen, nicht nur die in `allowedDomains`.

1018 

1019Einfaches `ssh`, `scp` und `rsync` über SSH schlagen aus dem Grund fehl, den [der Eintrag zu Datenbank-Clients](#a-database-client-or-other-non-http-tool-fails-to-reach-an-allowed-host) nennt.

1020 

1021<h3 id="a-database-client-or-other-non-http-tool-fails-to-reach-an-allowed-host">

1022 Ein Datenbank-Client oder ein anderes Nicht-HTTP-Tool erreicht einen zugelassenen Host nicht

1023</h3>

1024 

1025Ein Tool, das die Proxy-Umgebungsvariablen ignoriert, kann sich aus der Sandbox heraus nicht verbinden, nicht einmal mit einem Host in `allowedDomains`. Ein in der Sandbox ausgeführter Befehl hat [keinen direkten Weg ins Netzwerk](#network-isolation), daher schlägt ein Tool fehl, das seine eigene Verbindung öffnet. Die meisten Datenbanktreiber, einfaches `ssh` und Tools, die UDP verwenden, verhalten sich so.

1026 

1027Der Fehler sieht wie ein Netzwerk- oder Namensauflösungsfehler aus:

1028 

1029* **macOS**: `Operation not permitted` oder ein Namensauflösungsfehler wie `Could not resolve host`

1030* **Linux und WSL2**: `Network is unreachable` oder ein Namensauflösungsfehler wie `Temporary failure in name resolution`

1031 

1032Ein Tool, das den Proxy verwendet, schlägt anders fehl, wenn sein Host nicht zugelassen ist. Sie erhalten eine Netzwerkabfrage, oder das Tool erhält eine `403`-Antwort vom Proxy.

1033 

1034Damit sich das Tool verbinden kann, führen Sie den Befehl, der es benötigt, mit [`excludedCommands`](#run-commands-outside-the-sandbox-with-excludedcommands) außerhalb der Sandbox aus. Dieses Beispiel schließt ein Skript aus und fügt eine [Ask-Regel](/docs/de/permissions) hinzu, sodass Sie jede Ausführung genehmigen:

1035 

1036```json theme={null}

1037{

1038 "sandbox": {

1039 "excludedCommands": ["python scripts/load_orders.py *"]

1040 },

1041 "permissions": {

1042 "ask": ["Bash(python scripts/load_orders.py *)"]

1043 }

1044}

1045```

1046 

1047Das Skript läuft mit Ihrem vollen Zugriff, und Claude kann ein Skript bearbeiten, das sich in Ihrem Arbeitsverzeichnis befindet. Prüfen Sie es daher, wenn die Abfrage erscheint.

1048 

1049<h3 id="a-command-fails-to-reach-a-server-on-localhost">

1050 Ein Befehl erreicht einen Server auf localhost nicht

1051</h3>

1052 

1053Standardmäßig kann sich ein in der Sandbox ausgeführter Befehl nicht direkt mit einem Server verbinden, der auf Ihrem Rechner außerhalb der Sandbox läuft, etwa einem Dev-Server oder einer Datenbank in einem Container. Was Sie ändern können, hängt von Ihrer Plattform ab:

1054 

1055* **macOS**: Setzen Sie [`network.allowLocalBinding`](/docs/de/settings-reference#sandbox-network-allowlocalbinding) auf `true`. In der Sandbox ausgeführte Befehle können dann auf Netzwerkports lauschen und sich mit jedem Port auf localhost verbinden, was jeden anderen dort lauschenden Dienst einschließt. Ein localhost-Dienst, der keine Authentifizierung erfordert, etwa ein Debugger, kann dann für den Befehl außerhalb der Sandbox handeln, und ein Befehl, der auf einer Nicht-Loopback-Adresse lauscht, nimmt Verbindungen von anderen Rechnern an

1056* **Linux und WSL2**: Das `localhost` eines in der Sandbox ausgeführten Befehls ist privat für diesen Befehl. Der Befehl kann auf einem Port lauschen und Server erreichen, die er selbst gestartet hat. Eine direkte Verbindung zu `localhost` oder `127.0.0.1` erreicht keine Server auf dem Host, und `allowLocalBinding` hat keine Wirkung. Führen Sie den Befehl, der den Server des Hosts benötigt, mit [`excludedCommands`](#run-commands-outside-the-sandbox-with-excludedcommands) außerhalb der Sandbox aus, wo er keinen Dateisystem- oder Netzwerkbeschränkungen unterliegt. Für Verbindungen, die über den Sandbox-Proxy laufen, siehe [Hostnamen, die zu lokalen Adressen aufgelöst werden](#hostnames-that-resolve-to-local-addresses)

1057 

1058Dieses Beispiel aktiviert die Einstellung für macOS:

1059 

1060```json theme={null}

1061{

1062 "sandbox": {

1063 "network": {

1064 "allowLocalBinding": true

1065 }

1066 }

1067}

1068```

1069 

1070Ein `allowedDomains`-Eintrag für `localhost` gilt für Verbindungen, die über den Proxy laufen, und ändert daher keine direkte Verbindung. Claude Code setzt `NO_PROXY` für in der Sandbox ausgeführte Befehle, damit sie sich direkt statt über den Proxy mit `localhost` verbinden. Der Eintrag macht außerdem jeden Port auf dem localhost Ihres Rechners für einen Befehl zugänglich, der den Proxy tatsächlich verwendet. Für einen Entwicklungs-Hostnamen, der auf `127.0.0.1` zeigt, siehe [Ein zugelassener Hostname wird mit `resolved to a loopback address` abgelehnt](#an-allowed-hostname-is-refused-with-resolved-to-a-loopback-address).

1071 

1072<h3 id="an-allowed-hostname-is-refused-with-resolved-to-a-loopback-address">

1073 Ein zugelassener Hostname wird mit `resolved to a loopback address` abgelehnt

1074</h3>

1075 

1076Der Sandbox-Proxy lehnt einen zugelassenen Hostnamen ab, der [zu einer lokalen Adresse aufgelöst wird](#hostnames-that-resolve-to-local-addresses). Das betrifft Entwicklungsnamen wie `myapp.test`, die auf `127.0.0.1` zeigen. Der Befehl erhält eine `403`-Antwort, deren Response-Body die Art der Adresse nennt, etwa `Connection to myapp.test blocked: resolved to a loopback address`.

1077 

1078Fügen Sie die IP-Adresse, zu der der Name aufgelöst wird, zusammen mit dem Hostnamen zu `allowedDomains` hinzu, jeweils mit dem Port, auf dem Ihr Server lauscht:

1079 

1080```json theme={null}

1081{

1082 "sandbox": {

1083 "network": {

1084 "allowedDomains": ["myapp.test:3000", "127.0.0.1:3000"]

1085 }

1086 }

1087}

1088```

1089 

1090Ein IP-Adress-Eintrag ohne Port ermöglicht in der Sandbox ausgeführten Befehlen, jeden Dienst zu erreichen, der auf dieser Adresse lauscht.

1091 

1092Vor v2.1.284 verband sich der Proxy mit der Adresse, zu der ein zugelassener Hostname aufgelöst wurde, ganz gleich, welche es war.

1093 

1094<h3 id="/sandbox-fails-with-sandbox-settings-are-overridden-by-a-higher-priority-configuration">

1095 `/sandbox` schlägt mit `Sandbox settings are overridden by a higher-priority configuration` fehl

1096</h3>

1097 

1098`/sandbox` gibt `Error: Sandbox settings are overridden by a higher-priority configuration and cannot be changed locally.` aus, statt sein Panel zu öffnen, wenn eine höhere [Einstellungsebene](/docs/de/settings#settings-precedence) `sandbox.enabled`, `sandbox.autoAllowBashIfSandboxed` oder `sandbox.allowUnsandboxedCommands` setzt. Das Panel speichert Ihre Auswahl in `.claude/settings.local.json`, und ein dort gespeicherter Wert kann diese Ebenen nicht überschreiben.

1099 

1100Verwaltete Einstellungen und `--settings` haben Vorrang vor lokalen Einstellungen. Um zu sehen, welche davon diese Sitzung geladen hat, führen Sie `/status` aus und lesen Sie die Zeile `Setting sources`:

1101 

1102* **`Command line arguments`**: Wenn Sie Claude Code mit [`--settings`](/docs/de/settings#change-a-setting-for-one-session) gestartet haben, prüfen Sie, ob die übergebene Datei oder das übergebene JSON einen dieser Schlüssel setzt. Falls ja, ändern Sie den Wert dort, oder starten Sie Claude Code erneut ohne diese Schlüssel.

1103* **`Enterprise managed settings`**: Die verwalteten Einstellungen Ihrer Organisation sind geladen. Wenn sie einen dieser Schlüssel setzen, können Sie diesen Schlüssel weder über `/sandbox` noch über eine von Ihnen kontrollierte Einstellungsdatei ändern. Wenden Sie sich in diesem Fall an Ihren Administrator.

765 1104 

766<h2 id="limitations">1105<h2 id="limitations">

767 Einschränkungen1106 Einschränkungen


776* **Netzwerk-Filterung**: Die Sandbox schränkt ein, mit welchen Domains Prozesse sich verbinden können. Standardmäßig beendet oder inspiziert der integrierte Proxy TLS auf ausgehenden Datenverkehr nicht, daher werden die Inhalte verschlüsselter Verbindungen nicht untersucht. Die experimentelle Einstellung [`network.tlsTerminate`](/docs/de/settings-reference#sandbox-network-tlsterminate) beendet TLS am Proxy für [`mask`-Anmeldedaten-Substitution](#mask-credentials), fügt aber keine Inhaltsfilterung hinzu. Sie sind verantwortlich dafür, dass nur vertrauenswürdige Domains in Ihrer Richtlinie zulässig sind.1115* **Netzwerk-Filterung**: Die Sandbox schränkt ein, mit welchen Domains Prozesse sich verbinden können. Standardmäßig beendet oder inspiziert der integrierte Proxy TLS auf ausgehenden Datenverkehr nicht, daher werden die Inhalte verschlüsselter Verbindungen nicht untersucht. Die experimentelle Einstellung [`network.tlsTerminate`](/docs/de/settings-reference#sandbox-network-tlsterminate) beendet TLS am Proxy für [`mask`-Anmeldedaten-Substitution](#mask-credentials), fügt aber keine Inhaltsfilterung hinzu. Sie sind verantwortlich dafür, dass nur vertrauenswürdige Domains in Ihrer Richtlinie zulässig sind.

777 1116 

778<Warning>1117<Warning>

779 Das Zulassen breiter Domains wie `github.com` kann Pfade für Datenexfiltration schaffen. Da der Proxy seine Zulassungsentscheidung vom Client-bereitgestellten Hostnamen trifft, ohne TLS zu inspizieren, kann Code, der in der Sandbox ausgeführt wird, möglicherweise [Domain Fronting](https://en.wikipedia.org/wiki/Domain_fronting) oder ähnliche Techniken verwenden, um Hosts außerhalb der Zulassungsliste zu erreichen. Wenn Ihr Bedrohungsmodell stärkere Garantien erfordert, konfigurieren Sie einen [benutzerdefinierten Proxy](#custom-proxy-configuration), der TLS beendet und Datenverkehr inspiziert, und installieren Sie sein CA-Zertifikat in der Sandbox. Stärkere TLS-bewusste Netzwerk-Isolation ist ein aktives Entwicklungsgebiet.1118 Das Zulassen breiter Domains wie `github.com` kann Pfade für Datenexfiltration schaffen. Da der Proxy seine Zulassungsentscheidung vom Client-bereitgestellten Hostnamen trifft, ohne TLS zu inspizieren, kann Code, der in der Sandbox ausgeführt wird, möglicherweise [Domain Fronting](https://en.wikipedia.org/wiki/Domain_fronting) oder ähnliche Techniken verwenden, um Hosts außerhalb der Allowlist zu erreichen. Wenn Ihr Bedrohungsmodell stärkere Garantien erfordert, konfigurieren Sie einen [benutzerdefinierten Proxy](#custom-proxy-configuration), der TLS beendet und Datenverkehr inspiziert, und installieren Sie sein CA-Zertifikat in der Sandbox. Stärkere TLS-bewusste Netzwerk-Isolation ist ein aktives Entwicklungsgebiet.

780</Warning>1119</Warning>

781 1120 

782* **Privilege Escalation über Unix-Sockets**: Die Konfiguration `allowUnixSockets` kann versehentlich Zugriff auf System-Services gewähren, die zu Sandbox-Umgehungen führen könnten. Wenn Sie beispielsweise Zugriff auf `/var/run/docker.sock` zulassen, würde dies effektiv Zugriff auf das Host-System durch den Docker-Socket gewähren. Überdenken Sie sorgfältig alle Unix-Sockets, die Sie durch die Sandbox zulassen.1121* **Privilege Escalation über Unix-Sockets**: Die Konfiguration `allowUnixSockets` kann versehentlich Zugriff auf System-Services gewähren, die zu Sandbox-Umgehungen führen könnten. Wenn Sie beispielsweise Zugriff auf `/var/run/docker.sock` zulassen, würde dies effektiv Zugriff auf das Host-System durch den Docker-Socket gewähren. Überdenken Sie sorgfältig alle Unix-Sockets, die Sie durch die Sandbox zulassen.

783* **Dateisystem-Genehmigungseskalation**: Übermäßig breite Dateisystem-Schreibgenehmigungen können Privilege-Escalation-Angriffe ermöglichen. Das Zulassen von Schreibvorgängen zu Verzeichnissen, die ausführbare Dateien in `$PATH`, System-Konfigurationsverzeichnisse oder Benutzer-Shell-Konfigurationsdateien wie `.bashrc` oder `.zshrc` enthalten, kann zu Code-Ausführung in verschiedenen Sicherheitskontexten führen, wenn andere Benutzer oder System-Prozesse auf diese Dateien zugreifen.1122* **Dateisystem-Berechtigungseskalation**: Übermäßig breite Dateisystem-Schreibberechtigungen können Privilege-Escalation-Angriffe ermöglichen. Das Zulassen von Schreibvorgängen zu Verzeichnissen, die ausführbare Dateien in `$PATH`, System-Konfigurationsverzeichnisse oder Benutzer-Shell-Konfigurationsdateien wie `.bashrc` oder `.zshrc` enthalten, kann zu Code-Ausführung in verschiedenen Sicherheitskontexten führen, wenn andere Benutzer oder System-Prozesse auf diese Dateien zugreifen.

784* **Linux-Sandbox-Stärke**: Die Linux-Implementierung bietet starke Dateisystem- und Netzwerk-Isolation, enthält aber einen `enableWeakerNestedSandbox`-Modus, der es ermöglicht, in Docker-Umgebungen ohne privilegierte Namespaces zu funktionieren, oder auf Linux-Hosts, wo unprivilegierte Benutzer-Namespaces durch sysctl deaktiviert sind. Diese Option schwächt die Sicherheit erheblich ab und sollte nur verwendet werden, wenn zusätzliche Isolation anderweitig durchgesetzt wird.1123* **Linux-Sandbox-Stärke**: Die Linux-Implementierung bietet starke Dateisystem- und Netzwerk-Isolation, enthält aber einen `enableWeakerNestedSandbox`-Modus, der es ermöglicht, in Docker-Umgebungen ohne privilegierte Namespaces zu funktionieren. Diese Option schwächt die Sicherheit erheblich ab und sollte nur verwendet werden, wenn zusätzliche Isolation anderweitig durchgesetzt wird.

785* **Apple Events auf macOS**: Die macOS-Sandbox blockiert Apple Events standardmäßig. Die Einstellung `allowAppleEvents` hebt diese Einschränkung auf, damit Tools wie `open` und `osascript` funktionieren, aber es entfernt Code-Ausführungs-Isolation: Sandbox-Befehle können andere Anwendungen ohne Sandbox ohne Benutzer-Eingabeaufforderung starten und können AppleScript-Befehle an laufende Anwendungen senden, vorbehaltlich der Pro-App-macOS-Automatisierungs-Zustimmungsaufforderung (TCC). Es wird nur von Benutzer-, verwalteten oder CLI-Einstellungen berücksichtigt. Projekteinstellungen können es nicht aktivieren.1124* **Apple Events auf macOS**: Die macOS-Sandbox blockiert Apple Events standardmäßig. Die Einstellung `allowAppleEvents` hebt diese Einschränkung auf, damit Tools wie `open` und `osascript` funktionieren, aber es entfernt Code-Ausführungs-Isolation: In der Sandbox ausgeführte Befehle können andere Anwendungen ohne Sandbox und ohne Rückfrage beim Benutzer starten und können AppleScript-Befehle an laufende Anwendungen senden, vorbehaltlich der macOS-Zustimmungsabfrage für Automatisierung pro App (TCC). Es wird nur von Benutzer-, verwalteten oder CLI-Einstellungen berücksichtigt. Projekteinstellungen können es nicht aktivieren.

786 1125 

787<h3 id="platform-and-tool-compatibility">1126<h3 id="platform-and-tool-compatibility">

788 Plattform- und Tool-Kompatibilität1127 Plattform- und Tool-Kompatibilität


796 Umfang1135 Umfang

797</h3>1136</h3>

798 1137 

799Die Sandbox isoliert Bash-Subprozesse. Andere Tools funktionieren unter verschiedenen Grenzen:1138Die Sandbox isoliert Shell-Befehle und deren untergeordnete Prozesse. [Was außerhalb der Sandbox ausgeführt wird](#what-runs-outside-the-sandbox) listet die Tools und Hilfsprozesse auf, die sie nicht abdeckt. Computer-Nutzung und Subagenten verhalten sich in Bezug auf die Sandbox wie folgt:

800 1139 

801* **Integrierte Datei-Tools**: Read, Edit und Write verwenden das Genehmigungssystem direkt, anstatt durch die Sandbox zu laufen. Siehe [Genehmigungen](/docs/de/permissions).1140* **Computer-Nutzung**: Wenn Claude Apps öffnet und Ihren Bildschirm steuert, läuft es auf Ihrem tatsächlichen Desktop, anstatt in einer isolierten Umgebung. Berechtigungsabfragen pro App kontrollieren jede Anwendung. Siehe [Computer-Nutzung in der CLI](/docs/de/computer-use) oder [Computer-Nutzung auf Desktop](/docs/de/desktop#let-claude-use-your-computer).

802* **Computer-Nutzung**: Wenn Claude Apps öffnet und Ihren Bildschirm steuert, läuft es auf Ihrem tatsächlichen Desktop, anstatt in einer isolierten Umgebung. Pro-App-Genehmigungseingaben kontrollieren jede Anwendung. Siehe [Computer-Nutzung in der CLI](/docs/de/computer-use) oder [Computer-Nutzung auf Desktop](/docs/de/desktop#let-claude-use-your-computer).

803* **Umgebungsvariablen**: Sandbox-Bash-Befehle erben die Umgebung des übergeordneten Prozesses standardmäßig, einschließlich aller dort gesetzten Anmeldedaten. Verwenden Sie [`sandbox.credentials`](#protect-credentials), um spezifische Variablen für Sandbox-Befehle zu deaktivieren oder zu maskieren, oder setzen Sie [`CLAUDE_CODE_SUBPROCESS_ENV_SCRUB`](/docs/de/env-vars), um Anmeldedaten aus allen Subprozessen zu entfernen.

804* **Subagenten**: [Subagenten](/docs/de/sub-agents) laufen im gleichen Prozess wie die übergeordnete Sitzung und verwenden die gleiche Sandbox-Konfiguration. Bash-Befehle in einem Subagenten werden in der Sandbox ausgeführt, wenn Sandboxing in der übergeordneten Sitzung aktiviert ist.1141* **Subagenten**: [Subagenten](/docs/de/sub-agents) laufen im gleichen Prozess wie die übergeordnete Sitzung und verwenden die gleiche Sandbox-Konfiguration. Bash-Befehle in einem Subagenten werden in der Sandbox ausgeführt, wenn Sandboxing in der übergeordneten Sitzung aktiviert ist.

1142* **Mods**: Ein [Mod](/docs/de/plugins/mods/overview) ist ein Plugin, das seinen eigenen Code innerhalb von Claude Code ausführt, und ein Prozess, den ein Mod startet, läuft außerhalb der Sandbox. Siehe [Was ein Mod erreichen kann](/docs/de/plugins/mods/overview#what-a-mod-can-reach).

805 1143 

806<Warning>1144<Warning>

807 Effektives Sandboxing erfordert sowohl Dateisystem- als auch Netzwerk-Isolation. Ohne Netzwerk-Isolation könnte ein kompromittierter Agent sensible Dateien wie SSH-Schlüssel exfiltrieren. Ohne Dateisystem-Isolation, ob durch eine permissive Richtlinie oder durch [Deaktivierung der Dateisystem-Schicht](#disable-filesystem-isolation), könnte ein kompromittierter Agent System-Ressourcen manipulieren, um Netzwerkzugriff zu erlangen. Wenn Sie die Standardwerte erweitern, überprüfen Sie, dass ein `allowWrite`-Pfad, ein breiter `allowedDomains`-Eintrag oder eine `excludedCommands`-Ausnahme keine Einschränkung auf der anderen Seite rückgängig macht.1145 Effektives Sandboxing erfordert sowohl Dateisystem- als auch Netzwerk-Isolation. Ohne Netzwerk-Isolation könnte ein kompromittierter Agent sensible Dateien wie SSH-Schlüssel exfiltrieren. Ohne Dateisystem-Isolation, ob durch eine permissive Richtlinie oder durch [Deaktivierung der Dateisystem-Schicht](#disable-filesystem-isolation), könnte ein kompromittierter Agent System-Ressourcen manipulieren, um Netzwerkzugriff zu erlangen. Wenn Sie die Standardwerte erweitern, überprüfen Sie, dass ein `allowWrite`-Pfad, ein breiter `allowedDomains`-Eintrag oder eine `excludedCommands`-Ausnahme keine Einschränkung auf der anderen Seite rückgängig macht.

security.md +14 −18

Details

20 Berechtigungsbasierte Architektur20 Berechtigungsbasierte Architektur

21</h3>21</h3>

22 22 

23Im manuellen Modus startet Claude Code mit Nur-Lesen-Berechtigungen. Wenn Claude Code Dateien bearbeiten, Tests ausführen oder Befehle ausführen muss, fragt es Sie zuerst, und Sie entscheiden, ob Sie die Aktion einmalig genehmigen oder von nun an zulassen möchten.23Der Berechtigungsmodus einer Sitzung legt fest, welche Aktionen Claude ausführen kann, ohne Sie vorher zu fragen. Der Auto-Modus ist der integrierte anfängliche Berechtigungsmodus für interaktive Terminal- und VS Code-Sitzungen. [Mit welchem Modus eine Sitzung startet](/docs/de/permission-modes#which-mode-a-session-starts-in) behandelt frühere Versionen, andere Oberflächen und die Einstellungen, die den anfänglichen Berechtigungsmodus ändern.

24 24 

25Im manuellen Modus fragt Claude Code auch vor der Ausführung von Bash-Befehlen, die Ihr System ändern können. Es führt einen integrierten Satz von [Nur-Lesen-Befehlen](/docs/de/permissions#read-only-commands) wie `ls`, `cat` und `git status` ohne Aufforderung aus. Sie und Ihre Organisation konfigurieren diese Berechtigungen direkt.25* **Auto-Modus**: Ein separates Klassifikatormodell überprüft Aktionen anstelle von Ihnen und blockiert diejenigen, die es als unsicher einstuft. [Wie der Klassifikator Aktionen bewertet](/docs/de/permission-modes#how-the-classifier-evaluates-actions) listet auf, welche Aktionen Claude Code direkt genehmigt, welche es an den Klassifikator sendet und bei welchen Claude Code Sie weiterhin fragt. Ihre expliziten Nachfrage- und Ablehnungsregeln gelten weiterhin, und Ihre Organisation kann [den Auto-Modus deaktivieren](/docs/de/permission-modes#eliminate-prompts-with-auto-mode)

26* **Manueller Modus**: Claude Code startet mit reinen Leseberechtigungen. Wenn es Dateien bearbeiten, Tests ausführen oder Befehle ausführen muss, fragt es Sie zuerst, und Sie entscheiden, ob Sie die Aktion einmalig genehmigen oder von nun an zulassen möchten. Es führt einen integrierten Satz [nur lesender Befehle](/docs/de/permissions#read-only-commands) wie `ls`, `cat` und `git status` aus, ohne nachzufragen

26 27 

27Im [automatischen Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) überprüft ein separates Klassifizierungsmodell Aktionen anstelle von Ihnen und blockiert diejenigen, die es als unsicher einstuft. [Wie der Klassifizierer Aktionen bewertet](/docs/de/permission-modes#how-the-classifier-evaluates-actions) listet auf, welche Aktionen Claude Code direkt genehmigt, welche es an den Klassifizierer sendet, und welche Claude Code Sie noch fragt. Ihre expliziten Zulassungs- und Ablehnungsregeln gelten weiterhin, und Ihre Organisation kann [den automatischen Modus deaktivieren](/docs/de/permission-modes#eliminate-prompts-with-auto-mode).28Sie und Ihre Organisation konfigurieren diese Berechtigungen direkt. Für detaillierte Berechtigungskonfiguration siehe [Berechtigungen](/docs/de/permissions).

28 

29Welcher Berechtigungsmodus eine Sitzung startet, hängt von Ihrem Plan, der Oberfläche, von der Sie sie starten, und Ihren Einstellungen und denen Ihrer Organisation ab; siehe [Berechtigungsmodi](/docs/de/permission-modes#which-mode-a-session-starts-in).

30 

31Für detaillierte Berechtigungskonfiguration siehe [Berechtigungen](/docs/de/permissions).

32 29 

33<h3 id="built-in-protections">30<h3 id="built-in-protections">

34 Integrierte Schutzmaßnahmen31 Integrierte Schutzmaßnahmen


37Um Risiken in agentengestützten Systemen zu mindern:34Um Risiken in agentengestützten Systemen zu mindern:

38 35 

39* **Sandbox-Bash-Tool**: [Sandbox](/docs/de/sandboxing) Bash-Befehle mit Dateisystem- und Netzwerkisolation, wodurch Berechtigungsaufforderungen reduziert werden, während die Sicherheit gewährleistet bleibt. Konfigurieren Sie mit `/sandbox`, um Grenzen zu definieren, in denen Claude Code autonom arbeiten kann36* **Sandbox-Bash-Tool**: [Sandbox](/docs/de/sandboxing) Bash-Befehle mit Dateisystem- und Netzwerkisolation, wodurch Berechtigungsaufforderungen reduziert werden, während die Sicherheit gewährleistet bleibt. Konfigurieren Sie mit `/sandbox`, um Grenzen zu definieren, in denen Claude Code autonom arbeiten kann

40* **Arbeitsverzeichnis-Grenze**: Im manuellen Modus kann Claude Code nur in den Ordner schreiben, in dem es gestartet wurde, und in dessen Unterordner, und kann Dateien in übergeordneten Verzeichnissen nicht ohne explizite Genehmigung ändern. Im manuellen Modus fragt Claude Code Sie auch, bevor es Pfade außerhalb dieser Grenze mit den Tools Read, Grep und Glob liest. Erweitern Sie die Grenze mit [zusätzlichen Verzeichnissen](/docs/de/permissions#working-directories), um die Aufforderung zu überspringen, oder beschränken Sie den breiteren Lesezugriff, der für Nur-Lesen-Bash-Befehle verfügbar ist, mit [Sandbox-`denyRead`-Regeln](/docs/de/sandboxing#filesystem-isolation), die nur gelten, wenn Sandboxing aktiviert ist37* **Arbeitsverzeichnis-Grenze**: Im manuellen Modus fragt Claude Code Sie, bevor seine Datei-Tools außerhalb des Ordners, in dem es gestartet wurde, und dessen Unterordnern lesen oder schreiben. Die Grenze ist eine Berechtigungsabfrage, sodass ein von Ihnen genehmigter Bash-Befehl weiterhin überall dort schreiben kann, wo Ihr Benutzerkonto Schreibrechte hat

38 * Um einen Ordner ohne Abfrage zu lesen, fügen Sie ihn als [zusätzliches Verzeichnis](/docs/de/permissions#working-directories) hinzu

39 * Um Bash-Befehle auf Betriebssystemebene einzuschränken, aktivieren Sie [Sandboxing](/docs/de/sandboxing#filesystem-isolation)

41* **Minderung von Genehmigungsmüdigkeit**: Unterstützung für das Zulassen häufig verwendeter sicherer Befehle pro Benutzer, pro Codebasis oder pro Organisation40* **Minderung von Genehmigungsmüdigkeit**: Unterstützung für das Zulassen häufig verwendeter sicherer Befehle pro Benutzer, pro Codebasis oder pro Organisation

42* **Accept Edits-Modus**: Genehmigt automatisch Dateibearbeitungen und einen festen Satz von Dateisystem-Bash-Befehlen wie `mkdir`, `touch`, `rm`, `mv`, `cp` und `sed` für Pfade im Arbeitsverzeichnis. Andere Bash-Befehle und Pfade außerhalb des Umfangs werden weiterhin angefordert41* **Accept Edits-Modus**: Genehmigt automatisch Dateibearbeitungen und einen festen Satz von Dateisystem-Bash-Befehlen wie `mkdir`, `touch`, `rm`, `mv`, `cp` und `sed` für Pfade im Arbeitsverzeichnis. Andere Bash-Befehle und Pfade außerhalb des Umfangs werden weiterhin angefordert

43 42 


45 Benutzerverantwortung44 Benutzerverantwortung

46</h3>45</h3>

47 46 

48Claude Code hat nur die Berechtigungen, die Sie ihm gewähren. Sie sind verantwortlich für die Überprüfung vorgeschlagener Code und Befehle auf Sicherheit vor der Genehmigung.47Sie sind verantwortlich für die Überprüfung vorgeschlagener Code und Befehle auf Sicherheit vor der Genehmigung.

49 48 

50<h2 id="protect-against-prompt-injection">49<h2 id="protect-against-prompt-injection">

51 Schutz vor Prompt-Injection50 Schutz vor Prompt-Injection


58</h3>57</h3>

59 58 

60* **Berechtigungssystem**: Im Manual-Modus erfordern sensible Operationen explizite Genehmigung59* **Berechtigungssystem**: Im Manual-Modus erfordern sensible Operationen explizite Genehmigung

61* **Kontextbewusste Analyse**: Erkennt potenziell schädliche Anweisungen durch Analyse der vollständigen Anfrage

62* **Eingabebereinigung**: Verhindert Befehlsinjektionen durch Verarbeitung von Benutzereingaben

63* **Genehmigung von Netzwerkbefehlen**: Befehle, die Inhalte aus dem Web abrufen, wie `curl` und `wget`, werden standardmäßig nicht automatisch genehmigt. Im Manual-Modus werden sie wie jeder andere nicht-schreibgeschützte Bash-Befehl behandelt, sodass Sie diese trotzdem genehmigen oder eine explizite Zulassungsregel wie `Bash(curl *)` hinzufügen können. Um sie vollständig zu blockieren, fügen Sie sie zu [`permissions.deny`](/docs/de/permissions#tool-specific-permission-rules) hinzu. Eine Deny-Regel entspricht dem Befehl [wie geschrieben](/docs/de/permissions#bash-rule-limits); für Netzwerkdurchsetzung, die nicht vom Befehlstext abhängt, siehe [Sandbox-Netzwerkisolation](/docs/de/sandboxing#network-isolation)60* **Genehmigung von Netzwerkbefehlen**: Befehle, die Inhalte aus dem Web abrufen, wie `curl` und `wget`, werden standardmäßig nicht automatisch genehmigt. Im Manual-Modus werden sie wie jeder andere nicht-schreibgeschützte Bash-Befehl behandelt, sodass Sie diese trotzdem genehmigen oder eine explizite Zulassungsregel wie `Bash(curl *)` hinzufügen können. Um sie vollständig zu blockieren, fügen Sie sie zu [`permissions.deny`](/docs/de/permissions#tool-specific-permission-rules) hinzu. Eine Deny-Regel entspricht dem Befehl [wie geschrieben](/docs/de/permissions#bash-rule-limits); für Netzwerkdurchsetzung, die nicht vom Befehlstext abhängt, siehe [Sandbox-Netzwerkisolation](/docs/de/sandboxing#network-isolation)

64 61 

65<h3 id="privacy-safeguards">62<h3 id="privacy-safeguards">


79</h3>76</h3>

80 77 

81* **Genehmigung von Netzwerkanfragen**: Im Manual-Modus erfordern die meisten Tools, die Netzwerkanfragen stellen, standardmäßig Benutzergenehmigung78* **Genehmigung von Netzwerkanfragen**: Im Manual-Modus erfordern die meisten Tools, die Netzwerkanfragen stellen, standardmäßig Benutzergenehmigung

82* **Isolierte Kontextfenster**: Web Fetch verwendet ein separates Kontextfenster, um die Injection potenziell bösartiger Prompts zu vermeiden79* **Zusammenfassungen von Webseiten**: Bei den meisten Abrufen führt WebFetch einen separaten Modellaufruf über die Seite aus, und Claude erhält die Antwort dieses Aufrufs anstelle der unverarbeiteten Seite. Siehe [Verhalten des WebFetch-Tools](/docs/de/tools-reference#webfetch-tool-behavior)

83* **Vertrauensüberprüfung**: Erste Codebasis-Ausführungen und neue MCP-Server erfordern Vertrauensüberprüfung80* **Vertrauensüberprüfung**: In einer interaktiven Sitzung zeigt Claude Code den Vertrauensdialog für den Workspace an, wenn Sie es in einem Ordner starten, dem Sie noch nicht vertraut haben. Server in der `.mcp.json` eines Projekts haben eine eigene Genehmigungsabfrage, und unter [Projekt-Geltungsbereich](/docs/de/mcp#project-scope) sind die Sitzungen aufgeführt, die diese überspringen

84 * Hinweis: Vertrauensüberprüfung ist deaktiviert, wenn nicht-interaktiv mit dem `-p`-Flag ausgeführt wird81 * Hinweis: Eine `-p`-Sitzung zeigt keine der beiden Abfragen an. [Was ausgeführt wird, bevor Sie einem Ordner vertrauen](/docs/de/permissions#what-runs-before-you-trust-a-folder) listet auf, was die Dateien eines Repositorys dort ausführen können

85 * Hinweis: Wenn Sie Claude Code direkt in Ihrem Home-Verzeichnis starten, wird die Vertrauensannahme nur für die aktuelle Sitzung beibehalten und nicht auf die Festplatte geschrieben, sodass die Eingabeaufforderung bei jedem Start erneut angezeigt wird. Es gibt keine Einstellung, um sie beizubehalten. Starten Sie Claude Code stattdessen aus einem Projektunterverzeichnis, in dem die Vertrauensannahme pro Verzeichnis gespeichert wird82 * Hinweis: Wenn Sie Claude Code direkt in Ihrem Home-Verzeichnis starten, wird die Vertrauensannahme nur für die aktuelle Sitzung beibehalten und nicht auf die Festplatte geschrieben, sodass die Eingabeaufforderung bei jedem Start erneut angezeigt wird. Es gibt keine Einstellung, um sie beizubehalten. Starten Sie Claude Code stattdessen aus einem Projektunterverzeichnis, in dem die Vertrauensannahme pro Verzeichnis gespeichert wird

86* **Erkennung von Befehlsinjektionen**: Im Manual-Modus erfordern verdächtige Bash-Befehle manuelle Genehmigung, auch wenn sie zuvor auf die Zulassungsliste gesetzt wurden83* **Erkennung von Befehlsinjektionen**: Im Manual-Modus fragt Claude Code nach, bevor ein Bash-Befehl ausgeführt wird, den es nicht vollständig analysieren kann. Eine Zulassungsregel für einen Teil eines Befehls, etwa `Bash(git *)`, überspringt diese Abfrage nicht. [In einer Sandbox ausgeführte Befehle](/docs/de/permissions#how-permissions-interact-with-sandboxing) können ohne sie ausgeführt werden

87* **Fail-Closed-Matching**: Im Manual-Modus erfordern nicht übereinstimmende Befehle standardmäßig Genehmigung84* **Fail-Closed-Matching**: Im Manual-Modus erfordern nicht übereinstimmende Befehle standardmäßig Genehmigung

88* **Beschreibungen in natürlicher Sprache**: Komplexe Bash-Befehle enthalten Erklärungen zum Verständnis des Benutzers85* **Sichere Anmeldedatenspeicherung**: API-Schlüssel und Token werden im macOS Keychain gespeichert, wenn verfügbar. Unter Linux werden sie in einer Datei mit dem Modus `0600` gespeichert, unter Windows in einer Datei, die die Zugriffssteuerungen Ihres Benutzerprofilverzeichnisses erbt. Siehe [Credential Management](/docs/de/authentication#credential-management)

89* **Sichere Anmeldedatenspeicherung**: API-Schlüssel und Token werden im macOS Keychain gespeichert, wenn verfügbar, und durch Dateiberechtigungen unter Windows und Linux geschützt. Siehe [Credential Management](/docs/de/authentication#credential-management)

90 86 

91<Warning>87<Warning>

92 **Windows WebDAV-Sicherheitsrisiko**: Wenn Sie Claude Code unter Windows ausführen, empfehlen wir, WebDAV nicht zu aktivieren oder Claude Code keinen Zugriff auf Pfade wie `\\*` zu gewähren, die WebDAV-Unterverzeichnisse enthalten können. [WebDAV wurde von Microsoft als veraltet eingestuft](https://learn.microsoft.com/en-us/windows/whats-new/deprecated-features#:~:text=The%20Webclient%20\(WebDAV\)%20service%20is%20deprecated) aufgrund von Sicherheitsrisiken. Das Aktivieren von WebDAV kann Claude Code ermöglichen, Netzwerkanfragen an Remote-Hosts auszulösen und das Berechtigungssystem zu umgehen.88 **Windows WebDAV-Sicherheitsrisiko**: Wenn Sie Claude Code unter Windows ausführen, empfehlen wir, WebDAV nicht zu aktivieren oder Claude Code keinen Zugriff auf Pfade wie `\\*` zu gewähren, die WebDAV-Unterverzeichnisse enthalten können. [WebDAV wurde von Microsoft als veraltet eingestuft](https://learn.microsoft.com/en-us/windows/whats-new/deprecated-features#:~:text=The%20Webclient%20\(WebDAV\)%20service%20is%20deprecated) aufgrund von Sicherheitsrisiken. Das Aktivieren von WebDAV kann Claude Code ermöglichen, Netzwerkanfragen an Remote-Hosts auszulösen und das Berechtigungssystem zu umgehen.


110 MCP-Sicherheit106 MCP-Sicherheit

111</h2>107</h2>

112 108 

113Claude Code ermöglicht es Benutzern, Model Context Protocol (MCP)-Server zu konfigurieren. Die Liste der zulässigen MCP-Server wird in Ihrem Quellcode konfiguriert, als Teil der Claude Code-Einstellungen, die Ingenieure in die Versionskontrolle einchecken.109Sie können Claude Code mit Model Context Protocol (MCP)-Servern verbinden. Server mit Projekt-Geltungsbereich werden in `.mcp.json` definiert, die Sie in die Versionskontrolle einchecken können. Server mit [anderen Geltungsbereichen](/docs/de/mcp#mcp-installation-scopes) und [claude.ai-Konnektoren](/docs/de/mcp#how-connectors-reach-claude-code) werden außerhalb des Repositorys konfiguriert, und auch Plugins können Server hinzufügen. Eine Überprüfung von `.mcp.json` zeigt daher nicht jeden Server, den eine Sitzung laden kann. Informationen dazu, wie Sie einschränken, welche Server in Ihrer Organisation ausgeführt werden, finden Sie unter [Verwaltete MCP-Konfiguration](/docs/de/managed-mcp).

114 110 

115Wir ermutigen Sie, entweder Ihre eigenen MCP-Server zu schreiben oder MCP-Server von Anbietern zu verwenden, denen Sie vertrauen. Sie können Claude Code-Berechtigungen für MCP-Server konfigurieren. Anthropic überprüft Konnektoren anhand seiner [Auflistungskriterien](https://claude.com/docs/connectors/building/review-criteria), bevor sie zum [Anthropic-Verzeichnis](https://claude.ai/directory) hinzugefügt werden, führt jedoch keine Sicherheitsprüfung durch und verwaltet keinen MCP-Server.111Wir ermutigen Sie, entweder Ihre eigenen MCP-Server zu schreiben oder MCP-Server von Anbietern zu verwenden, denen Sie vertrauen. Sie können Claude Code-Berechtigungen für MCP-Server konfigurieren. Anthropic überprüft Konnektoren anhand seiner [Auflistungskriterien](https://claude.com/docs/connectors/building/review-criteria), bevor sie zum [Anthropic-Verzeichnis](https://claude.ai/directory) hinzugefügt werden, führt jedoch keine Sicherheitsprüfung durch und verwaltet keinen MCP-Server.

116 112 

Details

61 61 

62Schließen oder verwenden Sie Dateideskriptor 3 im Wrapper nicht erneut. Das Umleiten von stdout und stderr des Kindes ist in Ordnung.62Schließen oder verwenden Sie Dateideskriptor 3 im Wrapper nicht erneut. Das Umleiten von stdout und stderr des Kindes ist in Ordnung.

63 63 

64<h3 id="pass-the-system-prompt-flags-through">

65 System-Prompt-Flags durchreichen

66</h3>

67 

68Der System-Prompt und der angehängte System-Prompt, die die Kontrollebene von Anthropic für eine Sitzung sendet, erreichen Ihren Wrapper als Dateipfade, nicht als Inline-Text. Der Runner schreibt jeden Prompt in eine Datei im Konfigurationsverzeichnis der Sitzung, `CLAUDE_CONFIG_DIR`, und übergibt deren Pfad in den Argumenten, die Ihr Wrapper erhält, als [`--system-prompt-file <path>` oder `--append-system-prompt-file <path>`](/docs/de/cli-reference#system-prompt-flags).

69 

70Runner ab Claude Code v2.1.281 liefern die Prompts als Dateien. Vor v2.1.281 übergab der Runner sie als `--system-prompt <text>` und `--append-system-prompt <text>`.

71 

72Behandeln Sie diese Flags in Ihrem Wrapper-Skript oder [`command`-Hook](#command) wie folgt:

73 

74* **Reichen Sie sie durch**: Beenden Sie den Wrapper mit `exec "$CLAUDE_RUNNER_CLAUDE_BIN" "$@"`, wodurch die Datei-Flags zusammen mit allen anderen Argumenten weitergeleitet werden. Entfernen oder ändern Sie sie nicht. Wenn einer Sitzung ein Prompt-Datei-Flag verloren geht, läuft sie ohne die Anweisungen, die die Kontrollebene für sie gesendet hat.

75* **Auf einem Runner ab v2.1.281 ersetzt ein von Ihnen angehängtes Datei-Flag das des Servers, statt es zu ergänzen**: Jedes Prompt-Datei-Flag nimmt einen einzelnen Wert an, und Claude Code behält das letzte Vorkommen. Wenn Sie also `--append-system-prompt-file <path>` nach `"$@"` anhängen, ersetzt der Inhalt Ihrer Datei die angehängten Anweisungen des Servers. Um Anweisungen zusätzlich zu denen des Servers hinzuzufügen, legen Sie sie in der `CLAUDE.md` des Runner-Images ab, die der Runner [in die Konfiguration auf Benutzerebene jeder Sitzung einspielt](#how-each-session’s-config-is-assembled).

76 

64<h3 id="provision-credentials-scoped-to-the-session-creator">77<h3 id="provision-credentials-scoped-to-the-session-creator">

65 Anmeldedaten mit Bereich auf den Sitzungsersteller bereitstellen78 Anmeldedaten mit Bereich auf den Sitzungsersteller bereitstellen

66</h3>79</h3>


416 Berechtigungen und Tool-Genehmigung429 Berechtigungen und Tool-Genehmigung

417</h2>430</h2>

418 431 

419Eine selbstgehostete Sitzung hat kein angehängtes Terminal, daher stellt eine unbeantwortete Berechtigungsaufforderung die Runde stall, bis der Benutzer in der UI antwortet. Anthropics Kontrolleben sendet die Tool-Liste und Berechtigungsregeln jeder Sitzung mit der Workload; die Standardkonfiguration genehmigt Routine-Tool-Aufrufe vor, einschließlich `Bash`, und Cloud-Sitzungen [genehmigen Datei-Edits unabhängig vom Modus vor](/docs/de/permission-modes#switch-permission-modes). Ein Aufruf, den nichts genehmigt, fordert durch die Sitzungs-UI auf.432Eine selbstgehostete Sitzung hat kein angeschlossenes Terminal, daher blockiert eine unbeantwortete Berechtigungsabfrage den Turn, bis der Benutzer in der UI antwortet. Die Steuerungsebene von Anthropic sendet die Tool-Liste und die Berechtigungsregeln jeder Sitzung mit der Arbeits-Payload; die Standardkonfiguration genehmigt alltägliche Tool-Aufrufe vorab, einschließlich `Bash`, und Cloud-Sitzungen [genehmigen Dateibearbeitungen unabhängig vom Modus vorab](/docs/de/permission-modes#switch-permission-modes). Bei einem Aufruf, den nichts vorab genehmigt, wird über die Sitzungs-UI nachgefragt.

420 433 

421<Note>434<Note>

422 Pinnen Sie nur Auto-Modus auf einer Umgebung, deren Sitzungs-Container mit [Standard-Deny-Netzwerk-Egress](/docs/de/self-hosted-environments-deploy#default-deny-egress) und dem Rest des [Härtungsabschnitts](/docs/de/self-hosted-environments-deploy#harden-your-deployment) laufen. Routine-Tool-Aufrufe, einschließlich `Bash`-Netzwerk-Anfragen, werden ohne einen Menschen in der Schleife sowohl auf dem Standard-Pre-Approved-Tool-Set als auch im Auto-Modus ausgeführt, daher ist die Netzwerk-Grenze das, was begrenzt, wo diese Aufrufe erreichen können.435 Legen Sie den Auto-Modus nur für eine Umgebung fest, deren Sitzungscontainer mit [standardmäßig gesperrtem ausgehendem Netzwerkverkehr](/docs/de/self-hosted-environments-deploy#default-deny-egress) und den übrigen Maßnahmen aus dem [Abschnitt zur Härtung](/docs/de/self-hosted-environments-deploy#harden-your-deployment) laufen. Alltägliche Tool-Aufrufe, einschließlich `Bash`-Netzwerkanfragen, werden sowohl mit dem standardmäßig vorab genehmigten Tool-Set als auch im Auto-Modus ohne menschliche Kontrolle ausgeführt, daher ist die Netzwerkgrenze das, was einschränkt, wohin diese Aufrufe gelangen können.

423</Note>436</Note>

424 437 

425Um Aufforderungen unabhängig davon, was die Kontrolleben sendet, auf ein Minimum zu halten, pinnen Sie [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) von Ihrem Wrapper-Skript oder [`command`-Hook](#command). Auto-Modus lässt Sitzungen ohne Routine-Berechtigungsaufforderungen ausgeführt werden: Ein separates Klassifizierungsmodell überprüft Aktionen, bevor sie ausgeführt werden, und blockiert die, die es ablehnt, und explizite Ask-Regeln erzwingen immer noch eine Aufforderung; die Berechtigungsmodi-Seite behandelt, was der Klassifizierer überprüft. Der Runner hängt serverseitig berechnete Flags an, bevor er den Wrapper aufruft, und für Single-Value-Flags wie `--permission-mode` ehrt der Parser das letzte Vorkommen, daher überschreibt ein Flag, das Sie nach `"$@"` anhängen, den serverseitig gesendeten Wert:438Um Berechtigungsabfragen unabhängig davon, was die Steuerungsebene sendet, auf ein Minimum zu reduzieren, legen Sie den [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) in Ihrem Wrapper-Skript oder [`command`-Hook](#command) fest. Im Auto-Modus laufen Sitzungen ohne alltägliche Berechtigungsabfragen: Ein separates Klassifikatormodell prüft Aktionen, bevor sie ausgeführt werden, und blockiert diejenigen, die es ablehnt, und explizite ask-Regeln erzwingen weiterhin eine Abfrage; die Seite zu den Berechtigungsmodi beschreibt, was der Klassifikator prüft. Der Runner hängt serverseitig berechnete Flags an, bevor er den Wrapper aufruft, und bei Flags mit einem einzelnen Wert wie `--permission-mode` berücksichtigt der Parser das letzte Vorkommen, sodass ein Flag, das Sie nach `"$@"` anhängen, den vom Server gesendeten Wert überschreibt:

426 439 

427```bash theme={null}440```bash theme={null}

428#!/bin/bash441#!/bin/bash

429exec "$CLAUDE_RUNNER_CLAUDE_BIN" "$@" --permission-mode auto442exec "$CLAUDE_RUNNER_CLAUDE_BIN" "$@" --permission-mode auto

430```443```

431 444 

432Um stattdessen spezifische Tools vorab zu genehmigen, hängen Sie `--allowed-tools` mit Ihren Regeln an, zum Beispiel `--allowed-tools "Bash(bazel *) Bash(yarn *) mcp__internal__*"`. Listen-Flags wie `--allowed-tools` und `--disallowed-tools` sammeln sich über Vorkommen an, anstatt zu überschreiben, daher gelten Ihre Regeln zusätzlich zu allen Regeln, die die Kontrolleben sendet. Um zu verengen, hängen Sie `--disallowed-tools` an, das Tools verweigert, auch wenn eine andere Regel sie zulässt.445Um stattdessen bestimmte Tools vorab zu genehmigen, hängen Sie `--allowed-tools` mit Ihren Regeln an, zum Beispiel `--allowed-tools "Bash(bazel *) Bash(yarn *) mcp__internal__*"`. Listen-Flags wie `--allowed-tools` und `--disallowed-tools` werden über mehrere Vorkommen hinweg kumuliert, statt sich zu überschreiben, sodass Ihre Regeln zusätzlich zu allen Regeln gelten, die die Steuerungsebene sendet. Zum Einschränken hängen Sie `--disallowed-tools` an, das Tools verweigert, auch wenn eine andere Regel sie zulässt.

433 446 

434<h3 id="how-each-session’s-config-is-assembled">447<h3 id="how-each-session’s-config-is-assembled">

435 Wie die Konfiguration jeder Sitzung zusammengestellt wird448 Wie die Konfiguration jeder Sitzung zusammengestellt wird

436</h3>449</h3>

437 450 

438Der Runner gibt jeder Sitzung sein eigenes Konfigurationsverzeichnis, gekeimed aus einem Snapshot von `~/.claude/` des Hosts, den der Runner einmal beim Startup erfasst: `settings.json`, `CLAUDE.md`, Hooks, Agenten, Befehle und Skills in Ihrem Runner-Image gelten für jede Sitzung als Benutzer-Ebenen-Baseline. Wenn Sie die Konfiguration auf einem laufenden Host ändern, wird die Änderung erst nach einem Runner-Neustart wirksam. Setzen Sie `SELF_HOSTED_RUNNER_HOST_CONFIG_DIR`, um von einem anderen Pfad zu keimen, oder zeigen Sie auf ein leeres Verzeichnis, um das Keimen zu deaktivieren.451Der Runner gibt jeder Sitzung ein eigenes Konfigurationsverzeichnis, das aus einem Snapshot des `~/.claude/` des Hosts befüllt wird, den der Runner einmalig beim Start erstellt: `settings.json`, `CLAUDE.md`, Hooks, Agenten, Befehle und Skills in Ihrem Runner-Image gelten für jede Sitzung als Basis auf Benutzerebene. Wenn Sie die Konfiguration auf einem laufenden Host ändern, wird die Änderung erst wirksam, nachdem Sie den Runner neu gestartet haben.

452 

453Setzen 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.

454 

455Eine 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).

456 

457Wenn 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.

439 458 

440Repository-committete `.claude/settings.json` schichtet sich als Projekt-Einstellungen oben auf. Sitzungen lesen auch [`managed-settings.json`](/docs/de/settings#where-settings-live) vom Standard-Systempfad in Ihrem Runner-Image. Ob seine Schlüssel neben [serverseitig verwalteten Einstellungen](/docs/de/server-managed-settings) gelten, folgt [wie Claude Code verwaltete Quellen kombiniert](/docs/de/managed-settings#how-claude-code-combines-managed-sources): Standardmäßig ignorieren Sitzungen, wenn Ihre Organisation serverseitig verwaltete Schlüssel liefert, die Runner-Image-Datei, abgesehen von den [Schlüsseln, die Claude Code von jeder Admin-Quelle liest](/docs/de/managed-settings#keys-read-from-every-admin-source), wie der `env`-Block, die Sandbox-Sperren, die Sandbox-Binärpfade und `forceRemoteSettingsRefresh`. Siehe [Einstellungs-Vorrang](/docs/de/settings#settings-precedence).459* **Wo sie abgelegt werden**: Der Runner schreibt jedes bereitgestellte Hook-Skript in ein reserviertes Unterverzeichnis `hooks/.ccr-launcher/` des Konfigurationsverzeichnisses der Sitzung und registriert die Skripte in einer separaten Einstellungsdatei, die er der Sitzung mit `--settings` übergibt; die befüllte `settings.json` und Ihre eigenen Skripte unter `hooks/<name>` bleiben dabei unberührt. Der Runner erstellt das reservierte Unterverzeichnis für jede Sitzung neu und übernimmt keine Host-Inhalte unter `~/.claude/hooks/.ccr-launcher/` in Sitzungen.

460* **Wer sie erstellt**: Die Steuerungsebene füllt die Skripte aus festen Konstanten in ihrem eigenen Deployment, niemals aus sitzungsspezifischen Eingaben oder Eingaben von Drittanbietern.

461* **Was weiterhin für sie gilt**: Hooks, die über `--settings` bereitgestellt werden, gehen in die gewöhnliche zusammengeführte Hook-Konfiguration ein, nicht in die verwaltete Ebene, sodass Ihre verwalteten Einstellungen weiterhin gelten. `disableAllHooks` deaktiviert sie, und sie gehören nicht zu den Kategorien, die [`allowManagedHooksOnly`](/docs/de/settings-reference#allowmanagedhooksonly) geladen lässt.

441 462 

442Wenn Anthropics Kontrolleben eine Sitzung mit [Claude Code-Hooks](/docs/de/hooks) versorgt, installiert der Runner sie neben, nicht über, Ihrer eigenen Konfiguration. Erfordert Claude Code v2.1.229 oder später.463Außerhalb von [Claude Tag](https://claude.com/docs/claude-tag/overview)-Sitzungen läuft eine Sitzung in einer selbstgehosteten Umgebung standardmäßig mit ausgeschaltetem [Auto-Memory](/docs/de/memory#auto-memory). Für Anweisungen, die über Sitzungen hinweg erhalten bleiben sollen, verwenden Sie die `CLAUDE.md` in Ihrem Runner-Image oder im Repository.

443 464 

444* **Wo sie landen**: Der Runner schreibt jedes bereitgestellte Hook-Skript in ein reserviertes `hooks/.ccr-launcher/`-Unterverzeichnis des Konfigurationsverzeichnisses der Sitzung und registriert die Skripte in einer separaten Einstellungsdatei, die er mit `--settings` an die Sitzung übergibt, wobei die gekeimte `settings.json` und Ihre eigenen Skripte bei `hooks/<name>` unberührt bleiben. Der Runner erstellt das reservierte Unterverzeichnis für jede Sitzung neu und keimed keinen Host-Inhalt bei `~/.claude/hooks/.ccr-launcher/` in Sitzungen.465Der 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.

445* **Wer sie verfasst**: Die Kontrolleben füllt die Skripte aus festen Konstanten in ihrer eigenen Bereitstellung, niemals aus Pro-Sitzungs- oder Drittanbieter-Input.

446* **Was sie immer noch regiert**: Hooks, die durch `--settings` bereitgestellt werden, treten in die gewöhnliche zusammengeführte Hook-Konfiguration ein, nicht in die verwaltete Ebene, daher gelten Ihre verwalteten Einstellungen immer noch. `disableAllHooks` deaktiviert sie, und sie gehören nicht zu den Kategorien, die [`allowManagedHooksOnly`](/docs/de/settings-reference#allowmanagedhooksonly) geladen hält.

447 466 

448<h3 id="repository-committed-permission-rules">467<h3 id="repository-committed-permission-rules">

449 Repository-committete Berechtigungsregeln468 Im Repository committete Berechtigungsregeln

450</h3>469</h3>

451 470 

452Legen Sie keinen bloßen `"Edit"`-, `"Write"`- oder `"NotebookEdit"`-Eintrag in eine Repository-committete `permissions.allow`. Eine bloße Datei-Tool-Regel passt das Tool unabhängig vom Pfad, gewährt Schreibvorgänge überall auf dem Host anstelle nur des Arbeitsbereichs, daher flaggt der Schreib-Bereich-Confine-Guard des Runners die Sitzung; mit [`--confine-repo-settings enforce`](/docs/de/self-hosted-environments-reference#runner-cli-flags) weigert er sich, die Sitzung zu spawnen, anstatt zu protokollieren und fortzufahren. Siehe den [Härtungsabschnitt](/docs/de/self-hosted-environments-deploy#harden-your-deployment).471Tragen Sie keinen bloßen `"Edit"`-, `"Write"`- oder `"NotebookEdit"`-Eintrag in eine im Repository committete `permissions.allow` ein. Eine bloße Datei-Tool-Regel greift für das Tool unabhängig vom Pfad und erlaubt Schreibzugriffe überall auf dem Host statt nur im Arbeitsbereich, daher kennzeichnet der Schutzmechanismus des Runners zur Beschränkung des Schreibbereichs die Sitzung; mit [`--confine-repo-settings enforce`](/docs/de/self-hosted-environments-reference#runner-cli-flags) verweigert er den Start der Sitzung, statt nur zu protokollieren und fortzufahren. Siehe den [Abschnitt zur Härtung](/docs/de/self-hosted-environments-deploy#harden-your-deployment).

453 472 

454Ein Repository benötigt überhaupt keine Datei-Tool-Regel: Cloud-Sitzungen [genehmigen Datei-Edits unabhängig vom Modus vor](/docs/de/permission-modes#switch-permission-modes). Wenn Sie eine Regel committen, beschränken Sie sie auf den Arbeitsbereich, wie `"Edit(/**)"`; ein einzelner führender Schrägstrich ist relativ zum Projekt-Root, das der Arbeitsbereich der Sitzung ist. Bloße Datei-Tool-Regeln sind in der Operator-Host-Ebenen-`settings.json` in Ordnung, da diese Datei nicht Repository-committiert ist.473Ein Repository benötigt überhaupt keine Datei-Tool-Regel: Cloud-Sitzungen [genehmigen Dateibearbeitungen unabhängig vom Modus vorab](/docs/de/permission-modes#switch-permission-modes). Wenn Sie dennoch eine Regel committen, beschränken Sie sie auf den Arbeitsbereich, etwa `"Edit(/**)"`; ein einzelner führender Schrägstrich ist relativ zum Projektstammverzeichnis, das der Arbeitsbereich der Sitzung ist. Bloße Datei-Tool-Regeln sind in der `settings.json` auf Host-Ebene des Betreibers unproblematisch, da diese Datei nicht im Repository committet ist.

455 474 

456Ein `defaultMode` von `auto` wird nur aus der Image-weiten oder Benutzer-Ebenen-Einstellungsdatei geehrt, daher kann ein ausgechecktes Repository sich nicht selbst Auto-Modus gewähren. Für welche Modi Cloud-Sitzungen akzeptieren und die vollständige Regel-Syntax, siehe [Berechtigungsmodi](/docs/de/permission-modes).475Ein `defaultMode` von `auto` wird nur aus der imageweiten Einstellungsdatei oder der Einstellungsdatei auf Benutzerebene berücksichtigt, sodass sich ein ausgechecktes Repository nicht selbst den Auto-Modus gewähren kann. Welche Modi Cloud-Sitzungen akzeptieren und die vollständige Regelsyntax finden Sie unter [Berechtigungsmodi](/docs/de/permission-modes).

457 476 

458<h2 id="what’s-next">477<h2 id="what’s-next">

459 Nächste Schritte478 Nächste Schritte

Details

203 }203 }

204 ]204 ]

205 },205 },

206 // Das Plugin-Marketplace des Teams bei jedem Klon registrieren206 // Den Plugin-Marketplace des Teams bei jedem Klon registrieren

207 "extraKnownMarketplaces": {207 "extraKnownMarketplaces": {

208 "acme-tools": {208 "acme-tools": {

209 "source": {209 "source": {


216 "enabledPlugins": {216 "enabledPlugins": {

217 "code-formatter@acme-tools": true217 "code-formatter@acme-tools": true

218 },218 },

219 // Sandbox-Befehle: beschreibbares Build-Verzeichnis; npm und example.com vorab erlaubt, andere Hosts fordern weiterhin auf219 // Befehle in der Sandbox: beschreibbares Build-Verzeichnis; npm und example.com vorab erlaubt

220 "sandbox": {220 "sandbox": {

221 "enabled": true,221 "enabled": true,

222 "filesystem": {222 "filesystem": {


250* [`allowManagedPermissionRulesOnly`](/docs/de/settings-reference#allowmanagedpermissionrulesonly) und [`allowManagedMcpServersOnly`](/docs/de/settings-reference#allowmanagedmcpserversonly) machen die verwaltete Berechtigung und MCP-Zulassungslisten zu den einzigen, die gelten250* [`allowManagedPermissionRulesOnly`](/docs/de/settings-reference#allowmanagedpermissionrulesonly) und [`allowManagedMcpServersOnly`](/docs/de/settings-reference#allowmanagedmcpserversonly) machen die verwaltete Berechtigung und MCP-Zulassungslisten zu den einzigen, die gelten

251* `allowedMcpServers` fixiert den MCP-Server nach URL251* `allowedMcpServers` fixiert den MCP-Server nach URL

252* `strictKnownMarketplaces` erlaubt einen Plugin-Marketplace252* `strictKnownMarketplaces` erlaubt einen Plugin-Marketplace

253* `sandbox` sandboxed Befehle mit einer festen Netzwerk-Zulassungsliste und keinem unsandboxed Retry253* `sandbox` führt Befehle in einer Sandbox mit einer festen Netzwerk-Allowlist und ohne Wiederholungsversuch außerhalb der Sandbox aus. Sein Schlüssel `failIfUnavailable` [verhindert, dass Claude Code dort startet, wo die Sandbox nicht ausgeführt werden kann](/docs/de/sandboxing#enforce-sandboxing-with-managed-settings)

254* `requiredMinimumVersion` setzt eine Mindestversion für Claude Code254* `requiredMinimumVersion` setzt eine Mindestversion für Claude Code

255* `cleanupPeriodDays` verkürzt die Aufbewahrung von Sitzungstranskripten und anderen lokalen Daten auf sieben Tage255* `cleanupPeriodDays` verkürzt die Aufbewahrung von Sitzungstranskripten und anderen lokalen Daten auf sieben Tage

256* `companyAnnouncements` zeigt eine Nachricht beim Start256* `companyAnnouncements` zeigt eine Nachricht beim Start

settings-reference.md +1163 −823

Details

577 Einstellungsindex577 Einstellungsindex

578</h2>578</h2>

579 579 

580Jeder Schlüssel unten verlinkt zu seinem Eintrag. Der Bereich listet die [Dateien](/docs/de/settings#settings-files-and-who-they-affect) auf, in denen er verwendet werden kann: `User` ist `~/.claude/settings.json`, `Project` ist `.claude/settings.json`, `Local` ist `.claude/settings.local.json`, und `Managed` ist [das, was Ihre Organisation bereitstellt](/docs/de/managed-settings). `Any file` bedeutet alle vier, und `Global config` bedeutet [`~/.claude.json`](#global-config-settings).580Jeder Schlüssel unten verlinkt zu seinem Eintrag. Der Geltungsbereich listet die [Dateien](/docs/de/settings#settings-files-and-who-they-affect) auf, in denen er verwendet werden kann: `User` ist `~/.claude/settings.json`, `Project` ist `.claude/settings.json`, `Local` ist `.claude/settings.local.json`, und `Managed` ist [das, was Ihre Organisation bereitstellt](/docs/de/managed-settings). `Any file` bedeutet alle vier, und `Global config` bedeutet [`~/.claude.json`](#global-config-settings).

581 581 

582<ReferenceFilter582<ReferenceFilter

583 noun="settings"583 noun="settings"


595| [`agent`](#agent) | Starten Sie jede Sitzung als benannter [Subagent](/docs/de/sub-agents) mit seinem Prompt, seinen Tools und seinem Modell | Agents, sessions, and worktrees | Any file |595| [`agent`](#agent) | Starten Sie jede Sitzung als benannter [Subagent](/docs/de/sub-agents) mit seinem Prompt, seinen Tools und seinem Modell | Agents, sessions, and worktrees | Any file |

596| [`agentPushNotifEnabled`](#agentpushnotifenabled) | Lassen Sie Claude eine [Push-Benachrichtigung an Ihr Telefon](/docs/de/remote-control#mobile-push-notifications) senden, wenn es sich dafür entscheidet | Remote, desktop, and notifications | Any file |596| [`agentPushNotifEnabled`](#agentpushnotifenabled) | Lassen Sie Claude eine [Push-Benachrichtigung an Ihr Telefon](/docs/de/remote-control#mobile-push-notifications) senden, wenn es sich dafür entscheidet | Remote, desktop, and notifications | Any file |

597| [`allowAllClaudeAiMcps`](#allowallclaudeaimcps) | Laden Sie die [claude.ai-Konnektoren](/docs/de/mcp), die Claude Code selbst abruft, zusammen mit einem bereitgestellten [`managed-mcp.json`](/docs/de/managed-mcp#exclusive-control-with-managed-mcp-json) | MCP | Managed |597| [`allowAllClaudeAiMcps`](#allowallclaudeaimcps) | Laden Sie die [claude.ai-Konnektoren](/docs/de/mcp), die Claude Code selbst abruft, zusammen mit einem bereitgestellten [`managed-mcp.json`](/docs/de/managed-mcp#exclusive-control-with-managed-mcp-json) | MCP | Managed |

598| [`allowedChannelPlugins`](#allowedchannelplugins) | Ersetzen Sie die Standard-Zulassungsliste der [Channel-Plugins](/docs/de/channels#restrict-which-channel-plugins-can-run), die Nachrichten pushen können | Plugins and skills | Managed |598| [`allowClaudeInChromeWithManagedMcp`](#allowclaudeinchromewithmanagedmcp) | Lassen Sie den integrierten [Claude in Chrome](/docs/de/chrome)-Server zusammen mit einem bereitgestellten [`managed-mcp.json`](/docs/de/managed-mcp#exclusive-control-with-managed-mcp-json) laufen | MCP | Managed |

599| [`allowedChannelPlugins`](#allowedchannelplugins) | Ersetzen Sie die Standard-Allowlist der [Channel-Plugins](/docs/de/channels#restrict-which-channel-plugins-can-run), die Nachrichten pushen können | Plugins and skills | Managed |

599| [`allowedHttpHookUrls`](#allowedhttphookurls) | Begrenzen Sie, welche URLs [HTTP-Hooks](/docs/de/hooks) ansteuern können | Hooks and automation | Any file |600| [`allowedHttpHookUrls`](#allowedhttphookurls) | Begrenzen Sie, welche URLs [HTTP-Hooks](/docs/de/hooks) ansteuern können | Hooks and automation | Any file |

600| [`allowedMcpServers`](#allowedmcpservers) | Zulassungsliste, welche [MCP-Server](/docs/de/mcp) Benutzer hinzufügen können | MCP | Any file |601| [`allowedMcpServers`](#allowedmcpservers) | Allowlist, welche [MCP-Server](/docs/de/mcp) Benutzer hinzufügen können | MCP | Any file |

602| [`allowedProviders`](#allowedproviders) | Begrenzen Sie, welche [API-Anbieter](/docs/de/third-party-integrations) ein Computer verwenden darf | Authentication and providers | Managed |

601| [`allowManagedHooksOnly`](#allowmanagedhooksonly) | Führen Sie nur die [Hooks](/docs/de/hooks) aus, die Ihre Organisation bereitstellt | Hooks and automation | Managed |603| [`allowManagedHooksOnly`](#allowmanagedhooksonly) | Führen Sie nur die [Hooks](/docs/de/hooks) aus, die Ihre Organisation bereitstellt | Hooks and automation | Managed |

602| [`allowManagedMcpServersOnly`](#allowmanagedmcpserversonly) | Machen Sie die verwaltete [MCP](/docs/de/mcp)-Zulassungsliste zur einzigen, die gilt | MCP | Managed |604| [`allowManagedMcpServersOnly`](#allowmanagedmcpserversonly) | Machen Sie die verwaltete [MCP](/docs/de/mcp)-Allowlist zur einzigen, die gilt | MCP | Managed |

603| [`allowManagedPermissionRulesOnly`](#allowmanagedpermissionrulesonly) | Machen Sie [verwaltete Einstellungen](/docs/de/managed-settings) zur einzigen Einstellungsquelle für [Berechtigungsregeln](/docs/de/permissions#managed-settings) | Permission settings | Managed |605| [`allowManagedPermissionRulesOnly`](#allowmanagedpermissionrulesonly) | Machen Sie [verwaltete Einstellungen](/docs/de/managed-settings) zur einzigen Einstellungsquelle für [Berechtigungsregeln](/docs/de/permissions#managed-settings) | Permission settings | Managed |

604| [`alwaysThinkingEnabled`](#alwaysthinkingenabled) | Schalten Sie [erweitertes Denken](/docs/de/model-config#extended-thinking) für jede Sitzung aus | Model and responses | Any file |606| [`alwaysThinkingEnabled`](#alwaysthinkingenabled) | Schalten Sie [Extended Thinking](/docs/de/model-config#extended-thinking) für jede Sitzung aus | Model and responses | Any file |

605| [`apiKeyHelper`](#apikeyhelper) | Generieren Sie die [API-Anmeldedaten](/docs/de/authentication#credential-management) mit Ihrem eigenen Befehl | Authentication and providers | Any file |607| [`apiKeyHelper`](#apikeyhelper) | Generieren Sie die [API-Anmeldedaten](/docs/de/authentication#credential-management) mit Ihrem eigenen Befehl | Authentication and providers | Any file |

606| [`askUserQuestionTimeout`](#askuserquestiontimeout) | Lassen Sie eine unbeantwortete Frage [automatisch fortfahren](/docs/de/tools-reference#question-auto-continue-timeout) nach Leerlaufzeit | Interface and terminal | User or managed |608| [`askUserQuestionTimeout`](#askuserquestiontimeout) | Lassen Sie eine unbeantwortete Frage [automatisch fortfahren](/docs/de/tools-reference#question-auto-continue-timeout) nach Leerlaufzeit | Interface and terminal | User or managed |

609| [`appendPlugins`](#appendplugins) | Führen Sie die [Mods](/docs/de/plugins/mods/admin) Ihrer Organisation nach jedem Mod aus, den ein Benutzer installiert | Plugins and skills | User or managed |

607| [`attribution`](#attribution) | Passen Sie die Zuschreibung an, die Claude Code zu Commits und Pull Requests hinzufügt | Git and attribution | Any file |610| [`attribution`](#attribution) | Passen Sie die Zuschreibung an, die Claude Code zu Commits und Pull Requests hinzufügt | Git and attribution | Any file |

608| [`attribution.commit`](#attribution-commit) | Ändern oder verbergen Sie den Trailer, den Claude Code zu Commits hinzufügt | Git and attribution | Any file |611| [`attribution.commit`](#attribution-commit) | Ändern oder verbergen Sie den Trailer, den Claude Code zu Commits hinzufügt | Git and attribution | Any file |

609| [`attribution.pr`](#attribution-pr) | Ändern oder verbergen Sie die Zuschreibungszeile in Pull-Request-Beschreibungen | Git and attribution | Any file |612| [`attribution.pr`](#attribution-pr) | Ändern oder verbergen Sie die Zuschreibungszeile in Pull-Request-Beschreibungen | Git and attribution | Any file |


613| [`autoConnectIde`](#autoconnectide) | Verbinden Sie sich automatisch mit einer laufenden [VS Code](/docs/de/vs-code)- oder [JetBrains](/docs/de/jetbrains#from-external-terminals)-IDE von einem externen Terminal aus | Global config settings | Global config |616| [`autoConnectIde`](#autoconnectide) | Verbinden Sie sich automatisch mit einer laufenden [VS Code](/docs/de/vs-code)- oder [JetBrains](/docs/de/jetbrains#from-external-terminals)-IDE von einem externen Terminal aus | Global config settings | Global config |

614| [`autoContinueAtUsageLimit`](#autocontinueatusagelimit) | Warten Sie in der offenen Sitzung und [fahren Sie die Aufgabe automatisch fort](/docs/de/interactive-mode#wait-for-a-usage-limit-to-reset), nachdem ein claude.ai-Nutzungslimit zurückgesetzt wird | Interface and terminal | User or managed |617| [`autoContinueAtUsageLimit`](#autocontinueatusagelimit) | Warten Sie in der offenen Sitzung und [fahren Sie die Aufgabe automatisch fort](/docs/de/interactive-mode#wait-for-a-usage-limit-to-reset), nachdem ein claude.ai-Nutzungslimit zurückgesetzt wird | Interface and terminal | User or managed |

615| [`autoInstallIdeExtension`](#autoinstallideextension) | Schalten Sie die automatische Installation der [IDE-Erweiterung](/docs/de/vs-code#install-the-extension) von einem VS Code-Terminal aus | Global config settings | Global config |618| [`autoInstallIdeExtension`](#autoinstallideextension) | Schalten Sie die automatische Installation der [IDE-Erweiterung](/docs/de/vs-code#install-the-extension) von einem VS Code-Terminal aus | Global config settings | Global config |

616| [`autoMemoryDirectory`](#automemorydirectory) | Speichern Sie [automatisches Gedächtnis](/docs/de/memory#auto-memory) in einem Verzeichnis Ihrer Wahl | Memory and context | Any file |619| [`autoMemoryDirectory`](#automemorydirectory) | Speichern Sie [Auto-Memory](/docs/de/memory#auto-memory) in einem Verzeichnis Ihrer Wahl | Memory and context | Any file |

617| [`autoMemoryEnabled`](#automemoryenabled) | Schalten Sie [automatisches Gedächtnis](/docs/de/memory#auto-memory) aus oder ein | Memory and context | Any file |620| [`autoMemoryEnabled`](#automemoryenabled) | Schalten Sie [Auto-Memory](/docs/de/memory#auto-memory) aus oder ein | Memory and context | Any file |

618| [`autoMode`](#automode) | Fügen Sie Ihre eigenen Allow- und Deny-Regeln zum [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode)-Klassifizierer hinzu | Permission settings | User or managed |621| [`autoMode`](#automode) | Fügen Sie Ihre eigenen Allow- und Deny-Regeln zum [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode)-Klassifikator hinzu | Permission settings | User or managed |

619| [`autoMode.classifyAllShell`](#automode-classifyallshell) | Senden Sie jeden Shell-Befehl durch den [Auto-Modus-Klassifizierer](/docs/de/permission-modes#what-the-classifier-blocks-by-default), auch solche, die eine enge Allow-Regel erfüllen | Permission settings | User or managed |622| [`autoMode.classifyAllShell`](#automode-classifyallshell) | Senden Sie jeden Shell-Befehl durch den [Auto-Modus-Klassifikator](/docs/de/permission-modes#what-the-classifier-blocks-by-default), auch solche, die eine enge Allow-Regel erfüllen | Permission settings | User or managed |

620| [`autoScrollEnabled`](#autoscrollenabled) | [Folgen Sie neuer Ausgabe](/docs/de/fullscreen#auto-follow) zum unteren Ende beim Vollbild-Rendering | Interface and terminal | Any file |623| [`autoScrollEnabled`](#autoscrollenabled) | [Folgen Sie neuer Ausgabe](/docs/de/fullscreen#auto-follow) zum unteren Ende beim Vollbild-Rendering | Interface and terminal | Any file |

621| [`autoUpdatesChannel`](#autoupdateschannel) | Folgen Sie dem stabilen [Release-Kanal](/docs/de/setup#configure-release-channel) statt dem neuesten | Updates and versioning | Any file |624| [`autoUpdatesChannel`](#autoupdateschannel) | Folgen Sie dem stabilen [Release-Kanal](/docs/de/setup#configure-release-channel) statt dem neuesten | Updates and versioning | Any file |

622| [`availableModels`](#availablemodels) | [Beschränken Sie, welche Modelle](/docs/de/model-config#restrict-model-selection) Personen auswählen können | Model and responses | Any file |625| [`availableModels`](#availablemodels) | [Beschränken Sie, welche Modelle](/docs/de/model-config#restrict-model-selection) Personen auswählen können | Model and responses | Any file |

626| [`availableModelsMatch`](#availablemodelsmatch) | Sorgen Sie dafür, dass jeder Modell-ID-Eintrag in `availableModels` [nur die darin genannte Version zulässt](/docs/de/model-config#block-specific-models-or-versions) | Model and responses | Managed |

623| [`awaySummaryEnabled`](#awaysummaryenabled) | Schalten Sie die [Sitzungszusammenfassung](/docs/de/interactive-mode#session-recap) aus, die angezeigt wird, wenn Sie zum Terminal zurückkehren | Remote, desktop, and notifications | Any file |627| [`awaySummaryEnabled`](#awaysummaryenabled) | Schalten Sie die [Sitzungszusammenfassung](/docs/de/interactive-mode#session-recap) aus, die angezeigt wird, wenn Sie zum Terminal zurückkehren | Remote, desktop, and notifications | Any file |

624| [`awsAuthRefresh`](#awsauthrefresh) | Aktualisieren Sie abgelaufene [Bedrock-Anmeldedaten](/docs/de/amazon-bedrock#advanced-credential-configuration) in `.aws` mit Ihrem eigenen Befehl | Authentication and providers | Any file |628| [`awsAuthRefresh`](#awsauthrefresh) | Aktualisieren Sie abgelaufene [Bedrock-Anmeldedaten](/docs/de/amazon-bedrock#advanced-credential-configuration) in `.aws` mit Ihrem eigenen Befehl | Authentication and providers | Any file |

625| [`awsCredentialExport`](#awscredentialexport) | Stellen Sie [Bedrock-Anmeldedaten](/docs/de/amazon-bedrock#advanced-credential-configuration) als JSON aus Ihrem eigenen Befehl bereit | Authentication and providers | Any file |629| [`awsCredentialExport`](#awscredentialexport) | Stellen Sie [Bedrock-Anmeldedaten](/docs/de/amazon-bedrock#advanced-credential-configuration) als JSON aus Ihrem eigenen Befehl bereit | Authentication and providers | Any file |


628| [`bashOutputMaxChars`](#bashoutputmaxchars) | Legen Sie fest, wie viel der [Ausgabe](/docs/de/tools-reference#output-limits) eines erfolgreichen Befehls Claude inline erhält | Memory and context | Any file |632| [`bashOutputMaxChars`](#bashoutputmaxchars) | Legen Sie fest, wie viel der [Ausgabe](/docs/de/tools-reference#output-limits) eines erfolgreichen Befehls Claude inline erhält | Memory and context | Any file |

629| [`blockedMarketplaces`](#blockedmarketplaces) | Blockieren Sie [Plugin-Marketplace](/docs/de/plugins/overview)-Quellen für Ihre Organisation | Plugins and skills | Managed |633| [`blockedMarketplaces`](#blockedmarketplaces) | Blockieren Sie [Plugin-Marketplace](/docs/de/plugins/overview)-Quellen für Ihre Organisation | Plugins and skills | Managed |

630| [`browserExternalPageTools`](#browserexternalpagetools) | Halten Sie Claudes Tools auf externen Seiten im [Desktop](/docs/de/desktop)-Browser-Bereich aus | Tools | Managed |634| [`browserExternalPageTools`](#browserexternalpagetools) | Halten Sie Claudes Tools auf externen Seiten im [Desktop](/docs/de/desktop)-Browser-Bereich aus | Tools | Managed |

631| [`channelsEnabled`](#channelsenabled) | Ermöglichen Sie [Kanäle](/docs/de/channels#enable-channels-for-your-organization) für Ihre Organisation | Plugins and skills | Managed |635| [`channelsEnabled`](#channelsenabled) | Ermöglichen Sie [Channels](/docs/de/channels#enable-channels-for-your-organization) für Ihre Organisation | Plugins and skills | Managed |

636| [`claudeInChromeDefaultEnabled`](#claudeinchromedefaultenabled) | Schalten Sie die [Chrome-Integration](/docs/de/chrome) in jeder interaktiven CLI-Sitzung ein, ohne `--chrome` zu übergeben | Global config settings | Global config |

632| [`claudeMd`](#claudemd) | Injizieren Sie organisationsweite [CLAUDE.md](/docs/de/memory#deploy-organization-wide-claude-md)-Anweisungen aus verwalteten Einstellungen | Memory and context | Managed |637| [`claudeMd`](#claudemd) | Injizieren Sie organisationsweite [CLAUDE.md](/docs/de/memory#deploy-organization-wide-claude-md)-Anweisungen aus verwalteten Einstellungen | Memory and context | Managed |

633| [`claudeMdExcludes`](#claudemdexcludes) | Überspringen Sie spezifische [CLAUDE.md](/docs/de/memory#exclude-specific-claude-md-files)-Dateien beim Laden des Gedächtnisses | Memory and context | Any file |638| [`claudeMdExcludes`](#claudemdexcludes) | Überspringen Sie spezifische [CLAUDE.md](/docs/de/memory#exclude-specific-claude-md-files)-Dateien beim Laden des Gedächtnisses | Memory and context | Any file |

634| [`cleanupPeriodDays`](#cleanupperioddays) | Wählen Sie, wie viele Tage Claude Code [Transkripte](/docs/de/data-usage#data-retention) behält, bevor sie gelöscht werden | Privacy and telemetry | Any file |639| [`cleanupPeriodDays`](#cleanupperioddays) | Wählen Sie, wie viele Tage Claude Code [Transkripte](/docs/de/data-usage#data-retention) behält, bevor sie gelöscht werden | Privacy and telemetry | Any file |

635| [`companyAnnouncements`](#companyannouncements) | Zeigen Sie die Ankündigungen Ihrer Organisation beim Start an | Interface and terminal | Any file |640| [`companyAnnouncements`](#companyannouncements) | Zeigen Sie die Ankündigungen Ihrer Organisation beim Start an | Interface and terminal | Any file |

641| [`copyFullResponse`](#copyfullresponse) | Lassen Sie [`/copy`](/docs/de/commands) die vollständige Antwort kopieren, ohne die Codeblock-Auswahl anzuzeigen | Global config settings | Global config |

636| [`copyOnSelect`](#copyonselect) | Schalten Sie das automatische Kopieren von Text aus, den Sie mit der Maus im [Vollbild-Rendering](/docs/de/fullscreen#use-the-mouse) und in der Agent-Ansicht auswählen | Global config settings | Global config |642| [`copyOnSelect`](#copyonselect) | Schalten Sie das automatische Kopieren von Text aus, den Sie mit der Maus im [Vollbild-Rendering](/docs/de/fullscreen#use-the-mouse) und in der Agent-Ansicht auswählen | Global config settings | Global config |

637| [`crossSessionInbound`](#crosssessioninbound) | Wählen Sie, ob Claude Code [Nachrichten von Ihren anderen Sitzungen](/docs/de/cross-session-messaging#control-inbound-messages) liefert, einen Hinweis anzeigt, ohne sie zu liefern, oder sie ablehnt | Agents, sessions, and worktrees | Any file |643| [`crossSessionInbound`](#crosssessioninbound) | Wählen Sie, ob Claude Code [Nachrichten von Ihren anderen Sitzungen](/docs/de/cross-session-messaging#control-inbound-messages) liefert, einen Hinweis anzeigt, ohne sie zu liefern, oder sie ablehnt | Agents, sessions, and worktrees | Any file |

638| [`defaultShell`](#defaultshell) | Wählen Sie, ob Bash oder PowerShell die Shell-Befehle ausführt, die Sie mit dem [`!`-Präfix](/docs/de/interactive-mode#shell-mode-with-prefix) eingeben | Interface and terminal | Any file |644| [`defaultShell`](#defaultshell) | Wählen Sie, ob Bash oder PowerShell die Shell-Befehle ausführt, die Sie mit dem [`!`-Präfix](/docs/de/interactive-mode#shell-mode-with-prefix) eingeben | Interface and terminal | Any file |

645| [`defaultToAgentsView`](#defaulttoagentsview) | Öffnen Sie die [Agent-Ansicht](/docs/de/agent-view) statt einer neuen Konversation, wenn Sie `claude` ohne Argumente ausführen | Global config settings | Global config |

639| [`deniedMcpServers`](#deniedmcpservers) | Blockieren Sie spezifische [MCP-Server](/docs/de/mcp) nach URL, Befehl oder Name | MCP | Any file |646| [`deniedMcpServers`](#deniedmcpservers) | Blockieren Sie spezifische [MCP-Server](/docs/de/mcp) nach URL, Befehl oder Name | MCP | Any file |

647| [`deniedModels`](#deniedmodels) | [Blockieren Sie bestimmte Modelle](/docs/de/model-config#block-specific-models-or-versions), auch solche, die `availableModels` zulässt | Model and responses | Managed |

640| [`desktopSessionCleanupPeriodDays`](#desktopsessioncleanupperioddays) | Legen Sie ein Alterslimit in Tagen für [Claude Desktop- und Cowork-Transkripte](/docs/de/claude-directory#cleaned-up-automatically) fest | Privacy and telemetry | User or managed |648| [`desktopSessionCleanupPeriodDays`](#desktopsessioncleanupperioddays) | Legen Sie ein Alterslimit in Tagen für [Claude Desktop- und Cowork-Transkripte](/docs/de/claude-directory#cleaned-up-automatically) fest | Privacy and telemetry | User or managed |

641| [`dialogExpiry`](#dialogexpiry) | Legen Sie fest, wie lange Claude Code auf eine Antwort von [Remote Control](/docs/de/remote-control) oder einem SDK-Host auf einen weitergeleitet Dialog wartet, bevor der Dialog abgebrochen wird | Interface and terminal | User or managed |649| [`dialogExpiry`](#dialogexpiry) | Legen Sie fest, wie lange Claude Code auf eine Antwort von [Remote Control](/docs/de/remote-control) oder einem SDK-Host auf einen weitergeleiteten Dialog wartet, bevor der Dialog abgebrochen wird | Interface and terminal | User or managed |

642| [`diffTool`](#difftool) | Wählen Sie, ob Claudes vorgeschlagene Dateiänderungen im [VS Code](/docs/de/vs-code)- oder [JetBrains](/docs/de/jetbrains#features)-Diff-Viewer geöffnet werden oder im Terminal bleiben | Global config settings | Global config |650| [`diffTool`](#difftool) | Wählen Sie, ob Claudes vorgeschlagene Dateiänderungen im [VS Code](/docs/de/vs-code)- oder [JetBrains](/docs/de/jetbrains#features)-Diff-Viewer geöffnet werden oder im Terminal bleiben | Global config settings | Global config |

643| [`disableAgentView`](#disableagentview) | Schalten Sie Hintergrund-Agenten und [Agent-Ansicht](/docs/de/agent-view) aus | Agents, sessions, and worktrees | Any file |651| [`disableAgentView`](#disableagentview) | Schalten Sie Hintergrund-Agenten und [Agent-Ansicht](/docs/de/agent-view) aus | Agents, sessions, and worktrees | Any file |

644| [`disableAllHooks`](#disableallhooks) | Schalten Sie [Hooks](/docs/de/hooks), eine benutzerdefinierte [Statuszeile](/docs/de/statusline) und einen benutzerdefinierten [`@`-Dateivorschlag](/docs/de/interactive-mode#quick-commands)-Befehl auf einmal aus | Hooks and automation | Any file |652| [`disableAllHooks`](#disableallhooks) | Schalten Sie [Hooks](/docs/de/hooks), eine benutzerdefinierte [Statuszeile](/docs/de/statusline) und einen benutzerdefinierten [`@`-Dateivorschlag](/docs/de/interactive-mode#quick-commands)-Befehl auf einmal aus | Hooks and automation | Any file |


657| [`disableSkillShellExecution`](#disableskillshellexecution) | Verhindern Sie, dass [Skills](/docs/de/skills) und benutzerdefinierte Befehle Inline-Shell ausführen | Plugins and skills | Any file |665| [`disableSkillShellExecution`](#disableskillshellexecution) | Verhindern Sie, dass [Skills](/docs/de/skills) und benutzerdefinierte Befehle Inline-Shell ausführen | Plugins and skills | Any file |

658| [`disableWorkflows`](#disableworkflows) | Schalten Sie [dynamische Workflows](/docs/de/workflows) für alle aus; verwenden Sie `enableWorkflows` für sich selbst | Hooks and automation | Any file |666| [`disableWorkflows`](#disableworkflows) | Schalten Sie [dynamische Workflows](/docs/de/workflows) für alle aus; verwenden Sie `enableWorkflows` für sich selbst | Hooks and automation | Any file |

659| [`editorMode`](#editormode) | Verwenden Sie [vim-Tastenbindungen](/docs/de/interactive-mode#vim-editor-mode) in der Eingabeaufforderung | Interface and terminal | Any file |667| [`editorMode`](#editormode) | Verwenden Sie [vim-Tastenbindungen](/docs/de/interactive-mode#vim-editor-mode) in der Eingabeaufforderung | Interface and terminal | Any file |

660| [`effortLevel`](#effortlevel) | Legen Sie eine Standard-[Anstrengungsstufe](/docs/de/model-config#adjust-effort-level) für Modelle ohne eine gespeicherte Stufe fest | Model and responses | Any file |668| [`effortLevel`](#effortlevel) | Legen Sie eine Standard-[Effort-Stufe](/docs/de/model-config#adjust-effort-level) für Modelle ohne eine eigene gespeicherte Stufe fest | Model and responses | Any file |

661| [`emojiCompletionEnabled`](#emojicompletionenabled) | Schalten Sie [`:shortcode:`-Emoji-Vorschläge und -Ersetzung](/docs/de/interactive-mode#emoji-shortcodes) in der Eingabeaufforderung aus | Interface and terminal | Any file |669| [`emojiCompletionEnabled`](#emojicompletionenabled) | Schalten Sie [`:shortcode:`-Emoji-Vorschläge und -Ersetzung](/docs/de/interactive-mode#emoji-shortcodes) in der Eingabeaufforderung aus | Interface and terminal | Any file |

662| [`enableAllProjectMcpServers`](#enableallprojectmcpservers) | Genehmigen Sie jeden Server in Projekt-[`.mcp.json`](/docs/de/mcp#project-server-approvals-and-workspace-trust)-Dateien ohne Aufforderung | MCP | Any file |670| [`enableAllProjectMcpServers`](#enableallprojectmcpservers) | Genehmigen Sie jeden Server in Projekt-[`.mcp.json`](/docs/de/mcp#project-server-approvals-and-workspace-trust)-Dateien ohne Rückfrage | MCP | Any file |

663| [`enableArtifact`](#enableartifact) | Schalten Sie das [Artifact-Tool](/docs/de/artifacts) mit einem `false` in einer beliebigen Datei aus; keine Datei kann es wieder einschalten | Remote, desktop, and notifications | Any file |671| [`enableArtifact`](#enableartifact) | Schalten Sie das [Artifact-Tool](/docs/de/artifacts) mit einem `false` in einer beliebigen Datei aus; keine Datei kann es wieder einschalten | Remote, desktop, and notifications | Any file |

664| [`enabledMcpjsonServers`](#enabledmcpjsonservers) | Genehmigen Sie spezifische Server aus der [`.mcp.json`](/docs/de/mcp#project-server-approvals-and-workspace-trust) eines Projekts | MCP | Any file |672| [`enabledMcpjsonServers`](#enabledmcpjsonservers) | Genehmigen Sie spezifische Server aus der [`.mcp.json`](/docs/de/mcp#project-server-approvals-and-workspace-trust) eines Projekts | MCP | Any file |

665| [`enabledPlugins`](#enabledplugins) | Schalten Sie einzelne [Plugins](/docs/de/plugins/overview) pro Bereich ein oder aus | Plugins and skills | Any file |673| [`enabledPlugins`](#enabledplugins) | Schalten Sie einzelne [Plugins](/docs/de/plugins/overview) pro Geltungsbereich ein oder aus | Plugins and skills | Any file |

666| [`enableWorkflows`](#enableworkflows) | Schalten Sie [dynamische Workflows](/docs/de/workflows) gegen den Standard Ihres Plans ein oder aus | Hooks and automation | Any file |674| [`enableWorkflows`](#enableworkflows) | Schalten Sie [dynamische Workflows](/docs/de/workflows) gegen den Standard Ihres Plans ein oder aus | Hooks and automation | Any file |

667| [`enforceAvailableModels`](#enforceavailablemodels) | Halten Sie die [`/model`-Standardauswahl](/docs/de/model-config#enforce-the-allowlist-for-the-default-model) innerhalb Ihrer `availableModels`-Zulassungsliste | Model and responses | Any file |675| [`enforceAvailableModels`](#enforceavailablemodels) | Halten Sie die [`/model`-Standardauswahl](/docs/de/model-config#enforce-the-allowlist-for-the-default-model) innerhalb Ihrer `availableModels`-Allowlist | Model and responses | Any file |

668| [`env`](#env) | Legen Sie [Umgebungsvariablen](/docs/de/env-vars#in-settings-files) für jede Sitzung und ihre Unterprozesse fest | Memory and context | Any file |676| [`env`](#env) | Legen Sie [Umgebungsvariablen](/docs/de/env-vars#in-settings-files) für jede Sitzung und ihre Unterprozesse fest | Memory and context | Any file |

669| [`externalEditorContext`](#externaleditorcontext) | Zeigen Sie Claudes letzte Antwort als Kommentare an, wenn Sie [Strg+G](/docs/de/interactive-mode#general-controls) drücken, um zu bearbeiten | Global config settings | Global config |677| [`externalEditorContext`](#externaleditorcontext) | Zeigen Sie Claudes letzte Antwort als Kommentare an, wenn Sie [Strg+G](/docs/de/interactive-mode#general-controls) drücken, um zu bearbeiten | Global config settings | Global config |

670| [`extraKnownMarketplaces`](#extraknownmarketplaces) | Registrieren Sie [Marketplaces](/docs/de/plugins/overview) für ein Repository oder eine Organisation | Plugins and skills | Any file |678| [`extraKnownMarketplaces`](#extraknownmarketplaces) | Registrieren Sie [Marketplaces](/docs/de/plugins/overview) für ein Repository oder eine Organisation | Plugins and skills | Any file |


690| [`isolatePeerMachines`](#isolatepeermachines) | Fragen Sie, bevor Claude [eine Ihrer Sitzungen auf einem anderen Computer](/docs/de/cross-session-messaging#require-approval-for-cross-machine-messages) benachrichtigt | Agents, sessions, and worktrees | Any file |698| [`isolatePeerMachines`](#isolatepeermachines) | Fragen Sie, bevor Claude [eine Ihrer Sitzungen auf einem anderen Computer](/docs/de/cross-session-messaging#require-approval-for-cross-machine-messages) benachrichtigt | Agents, sessions, and worktrees | Any file |

691| [`keybindingFlavor`](#keybindingflavor) | Veraltet und hat keine Auswirkung; die Wort-Bearbeitungs-Tastenkombinationen folgen immer [readline-Konventionen](/docs/de/interactive-mode#make-ctrl-w-delete-back-to-whitespace) | Interface and terminal | Any file |699| [`keybindingFlavor`](#keybindingflavor) | Veraltet und hat keine Auswirkung; die Wort-Bearbeitungs-Tastenkombinationen folgen immer [readline-Konventionen](/docs/de/interactive-mode#make-ctrl-w-delete-back-to-whitespace) | Interface and terminal | Any file |

692| [`language`](#language) | Lassen Sie Claude in einer anderen Sprache als Englisch antworten | Model and responses | Any file |700| [`language`](#language) | Lassen Sie Claude in einer anderen Sprache als Englisch antworten | Model and responses | Any file |

701| [`leftArrowOpensAgents`](#leftarrowopensagents) | Schalten Sie die Tastenkombination `←` aus, die [die Sitzung in den Hintergrund verschiebt und die Agent-Ansicht öffnet](/docs/de/agent-view#switch-sessions-without-leaving-the-terminal) | Global config settings | Global config |

693| [`managedMcpServers`](#managedmcpservers) | Stellen Sie Remote-[MCP-Server](/docs/de/managed-mcp#provide-servers-through-managed-settings) für jeden Benutzer zusammen mit den von ihm hinzugefügten bereit | MCP | Managed |702| [`managedMcpServers`](#managedmcpservers) | Stellen Sie Remote-[MCP-Server](/docs/de/managed-mcp#provide-servers-through-managed-settings) für jeden Benutzer zusammen mit den von ihm hinzugefügten bereit | MCP | Managed |

694| [`managedSourcesBehavior`](#managedsourcesbehavior) | Kombinieren Sie jede [verwaltete Quelle](/docs/de/managed-settings#how-claude-code-combines-managed-sources), die Sie bereitstellen, anstatt nur die mit der höchsten Priorität zu verwenden | Enterprise and managed settings | Managed |703| [`managedSourcesBehavior`](#managedsourcesbehavior) | Kombinieren Sie jede [verwaltete Quelle](/docs/de/managed-settings#how-claude-code-combines-managed-sources), die Sie bereitstellen, anstatt nur die mit der höchsten Priorität zu verwenden | Enterprise and managed settings | Managed |

695| [`maxEffortLevel`](#maxeffortlevel) | Begrenzen Sie die [Anstrengungsstufe](/docs/de/model-config#adjust-effort-level) für jedes Modell oder pro Modell auf jedem Anbieter | Model and responses | Any file |704| [`maxEffortLevel`](#maxeffortlevel) | Begrenzen Sie die [Effort-Stufe](/docs/de/model-config#adjust-effort-level) für jedes Modell oder pro Modell auf jedem Anbieter | Model and responses | Any file |

696| [`maxProseWidth`](#maxprosewidth) | Begrenzen Sie, wie breit die Prosa in Claudes Antworten in einem breiten Terminal läuft | Interface and terminal | Any file |705| [`maxProseWidth`](#maxprosewidth) | Begrenzen Sie, wie breit die Prosa in Claudes Antworten in einem breiten Terminal läuft | Interface and terminal | Any file |

697| [`minimumVersion`](#minimumversion) | Halten Sie [Auto-Updates](/docs/de/setup#pin-a-minimum-version) davon ab, etwas unter einer Version zu installieren | Updates and versioning | Any file |706| [`minimumVersion`](#minimumversion) | Halten Sie [Auto-Updates](/docs/de/setup#pin-a-minimum-version) davon ab, etwas unter einer Version zu installieren | Updates and versioning | Any file |

698| [`model`](#model) | Ändern Sie das [Modell](/docs/de/model-config#set-a-default-model-for-new-sessions), mit dem Claude Code startet | Model and responses | Any file |707| [`model`](#model) | Ändern Sie das [Modell](/docs/de/model-config#set-a-default-model-for-new-sessions), mit dem Claude Code startet | Model and responses | Any file |

699| [`modelOverrides`](#modeloverrides) | [Ordnen Sie Modell-IDs](/docs/de/model-config#override-model-ids-per-version) den IDs Ihres Anbieters zu, wie z. B. Bedrock-ARNs | Model and responses | Any file |708| [`modelOverrides`](#modeloverrides) | [Ordnen Sie Modell-IDs](/docs/de/model-config#override-model-ids-per-version) den IDs Ihres Anbieters zu, wie z. B. Bedrock-ARNs | Model and responses | Any file |

700| [`modelPicker`](#modelpicker) | Wählen Sie, welche Modelle der [`/model`-Picker](/docs/de/model-config#available-models) auflistet, in Ihrer eigenen Reihenfolge und mit Ihren eigenen Labels | Model and responses | User or managed |709| [`modelPicker`](#modelpicker) | Wählen Sie, welche Modelle der [`/model`-Picker](/docs/de/model-config#available-models) auflistet, in Ihrer eigenen Reihenfolge und mit Ihren eigenen Labels | Model and responses | User or managed |

701| [`modelPricing`](#modelpricing) | Melden Sie Ausgaben zu den vertraglich vereinbarten Sätzen Ihrer Organisation statt zum Listenpreis | Model and responses | Managed |710| [`modelPricing`](#modelpricing) | Melden Sie Ausgaben zu den vertraglich vereinbarten Sätzen Ihrer Organisation statt zum Listenpreis | Model and responses | Managed |

702| [`modelSettings`](#modelsettings) | Behalten Sie eine gespeicherte [Anstrengungsstufe](/docs/de/model-config#adjust-effort-level) pro Modell bei, oder begrenzen Sie die Anstrengung eines Modells | Model and responses | Any file |711| [`modelSettings`](#modelsettings) | Behalten Sie eine gespeicherte [Effort-Stufe](/docs/de/model-config#adjust-effort-level) pro Modell bei, oder begrenzen Sie den Effort eines Modells | Model and responses | Any file |

703| [`otelHeadersHelper`](#otelheadershelper) | Generieren Sie rotierende [OpenTelemetry](/docs/de/monitoring-usage#dynamic-headers)-Header mit Ihrem eigenen Befehl | Authentication and providers | Any file |712| [`otelHeadersHelper`](#otelheadershelper) | Generieren Sie rotierende [OpenTelemetry](/docs/de/monitoring-usage#dynamic-headers)-Header mit Ihrem eigenen Befehl | Authentication and providers | Any file |

704| [`outputStyle`](#outputstyle) | Ändern Sie Claudes Rolle, Ton und Ausgabeformat mit einem [Ausgabestil](/docs/de/output-styles) | Model and responses | Any file |713| [`outputStyle`](#outputstyle) | Ändern Sie Claudes Rolle, Ton und Ausgabeformat mit einem [Ausgabestil](/docs/de/output-styles) | Model and responses | Any file |

705| [`parentSettingsBehavior`](#parentsettingsbehavior) | Wenden Sie Einschränkungen an oder verwerfen Sie sie, die ein [SDK- oder IDE-Host](/docs/de/managed-settings#let-an-embedding-host-add-policy) übergibt, wenn Sie [verwaltete Einstellungen](/docs/de/managed-settings) bereitstellen | Enterprise and managed settings | Managed |714| [`parentSettingsBehavior`](#parentsettingsbehavior) | Wenden Sie Einschränkungen an oder verwerfen Sie sie, die ein [SDK- oder IDE-Host](/docs/de/managed-settings#let-an-embedding-host-add-policy) übergibt, wenn Sie [verwaltete Einstellungen](/docs/de/managed-settings) bereitstellen | Enterprise and managed settings | Managed |

706| [`permissionExplainerEnabled`](#permissionexplainerenabled) | Entfernt in v2.1.257, zusammen mit der `Strg+E`-Befehlserklärung auf Shell-Berechtigungsaufforderungen | Global config settings | Global config |715| [`permissionExplainerEnabled`](#permissionexplainerenabled) | Entfernt in v2.1.257, zusammen mit der `Strg+E`-Befehlserklärung bei Shell-Berechtigungsabfragen | Global config settings | Global config |

707| [`permissions`](#permissions) | Legen Sie Allow-, Ask- und Deny-Regeln sowie den Start-[Berechtigungsmodus](/docs/de/permission-modes) fest | Permission settings | Any file |716| [`permissions`](#permissions) | Legen Sie Allow-, Ask- und Deny-Regeln sowie den Start-[Berechtigungsmodus](/docs/de/permission-modes) fest | Permission settings | Any file |

708| [`permissions.additionalDirectories`](#permissions-additionaldirectories) | Geben Sie Claude Dateizugriff auf [Verzeichnisse außerhalb des aktuellen](/docs/de/permissions#working-directories) | Permission settings | Any file |717| [`permissions.additionalDirectories`](#permissions-additionaldirectories) | Geben Sie Claude Dateizugriff auf [Verzeichnisse außerhalb des aktuellen](/docs/de/permissions#working-directories) | Permission settings | Any file |

709| [`permissions.allow`](#permissions-allow) | Genehmigen Sie aufgelistete [Tool-Verwendungen](/docs/de/permissions#permission-rule-syntax) ohne Aufforderung | Permission settings | Any file |718| [`permissions.allow`](#permissions-allow) | Genehmigen Sie aufgelistete [Tool-Verwendungen](/docs/de/permissions#permission-rule-syntax) ohne Rückfrage | Permission settings | Any file |

710| [`permissions.ask`](#permissions-ask) | Fragen Sie immer vor aufgelisteten [Tool-Verwendungen](/docs/de/permissions#permission-rule-syntax) | Permission settings | Any file |719| [`permissions.ask`](#permissions-ask) | Fragen Sie immer vor aufgelisteten [Tool-Verwendungen](/docs/de/permissions#permission-rule-syntax) | Permission settings | Any file |

711| [`permissions.blockReadsOutsideWorkingDirectories`](#permissions-blockreadsoutsideworkingdirectories) | Machen Sie die Datei-Tools, um Lesevorgänge außerhalb der [Arbeitsverzeichnisse](/docs/de/permissions#working-directories) in jedem Berechtigungsmodus zu verweigern | Permission settings | Any file |720| [`permissions.blockReadsOutsideWorkingDirectories`](#permissions-blockreadsoutsideworkingdirectories) | Lassen Sie die Datei-Tools Lesevorgänge außerhalb der [Arbeitsverzeichnisse](/docs/de/permissions#working-directories) in jedem Berechtigungsmodus verweigern | Permission settings | Any file |

712| [`permissions.defaultMode`](#permissions-defaultmode) | Legen Sie den [Berechtigungsmodus](/docs/de/permission-modes#which-mode-a-session-starts-in) fest, in dem neue Sitzungen starten | Permission settings | Any file |721| [`permissions.defaultMode`](#permissions-defaultmode) | Legen Sie den [Berechtigungsmodus](/docs/de/permission-modes#which-mode-a-session-starts-in) fest, in dem neue Sitzungen starten | Permission settings | Any file |

713| [`permissions.deny`](#permissions-deny) | Blockieren Sie aufgelistete [Tool-Verwendungen](/docs/de/permissions#permission-rule-syntax), einschließlich Lesevorgänge von Dateien, die Geheimnisse enthalten | Permission settings | Any file |722| [`permissions.deny`](#permissions-deny) | Blockieren Sie aufgelistete [Tool-Verwendungen](/docs/de/permissions#permission-rule-syntax), einschließlich Lesevorgänge von Dateien, die Geheimnisse enthalten | Permission settings | Any file |

714| [`permissions.disableBypassPermissionsMode`](#permissions-disablebypasspermissionsmode) | Verhindern Sie, dass jemand den [bypassPermissions-Modus](/docs/de/permission-modes#skip-all-checks-with-bypasspermissions-mode) betritt | Permission settings | Any file |723| [`permissions.disableBypassPermissionsMode`](#permissions-disablebypasspermissionsmode) | Verhindern Sie, dass jemand den [bypassPermissions-Modus](/docs/de/permission-modes#skip-all-checks-with-bypasspermissions-mode) betritt | Permission settings | Any file |

715| [`plansDirectory`](#plansdirectory) | Wählen Sie, wo [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode) Plan-Dateien schreibt | Memory and context | Any file |724| [`plansDirectory`](#plansdirectory) | Wählen Sie, wo [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode) Plan-Dateien schreibt | Memory and context | Any file |

716| [`pluginConfigs`](#pluginconfigs) | Speichern Sie die Antworten, die Sie dem Konfigurationsdialog eines [Plugins](/docs/de/plugins/overview) gegeben haben | Plugins and skills | User or managed |725| [`pluginConfigs`](#pluginconfigs) | Speichern Sie die Antworten, die Sie dem Konfigurationsdialog eines [Plugins](/docs/de/plugins/overview) gegeben haben | Plugins and skills | User or managed |

717| [`pluginSuggestionMarketplaces`](#pluginsuggestionmarketplaces) | Wählen Sie, welche [Marketplaces](/docs/de/plugins/overview) Plugin-Installationsvorschläge in `/plugin` anzeigen können | Plugins and skills | Managed |726| [`pluginSuggestionMarketplaces`](#pluginsuggestionmarketplaces) | Wählen Sie, welche [Marketplaces](/docs/de/plugins/org#restrict-what-users-can-install) Plugin-Installationsvorschläge in `/plugin` anzeigen können | Plugins and skills | Managed |

718| [`pluginTrustMessage`](#plugintrustmessage) | Fügen Sie Ihren eigenen Text zur [Plugin](/docs/de/plugins/overview)-Vertrauenswarnung hinzu | Plugins and skills | Managed |727| [`pluginTrustMessage`](#plugintrustmessage) | Fügen Sie Ihren eigenen Text zur [Plugin](/docs/de/plugins/overview)-Vertrauenswarnung hinzu | Plugins and skills | Managed |

719| [`policyHelper`](#policyhelper) | Führen Sie eine ausführbare Datei aus, die [verwaltete Einstellungen](/docs/de/managed-settings#compute-the-policy-with-a-helper-program) beim Start berechnet | Enterprise and managed settings | Managed |728| [`policyHelper`](#policyhelper) | Führen Sie eine ausführbare Datei aus, die [verwaltete Einstellungen](/docs/de/managed-settings#compute-the-policy-with-a-helper-program) beim Start berechnet | Enterprise and managed settings | Managed |

720| [`policyHelper.path`](#policyhelper-path) | Benennen Sie die [Helper-Ausführungsdatei](/docs/de/managed-settings#compute-the-policy-with-a-helper-program), die Claude Code ausführt | Enterprise and managed settings | Managed |729| [`policyHelper.path`](#policyhelper-path) | Benennen Sie die [Helper-Ausführungsdatei](/docs/de/managed-settings#compute-the-policy-with-a-helper-program), die Claude Code ausführt | Enterprise and managed settings | Managed |


722| [`policyHelper.timeoutMs`](#policyhelper-timeoutms) | Legen Sie fest, wie lange Claude Code auf den [Helper](/docs/de/managed-settings#compute-the-policy-with-a-helper-program) wartet | Enterprise and managed settings | Managed |731| [`policyHelper.timeoutMs`](#policyhelper-timeoutms) | Legen Sie fest, wie lange Claude Code auf den [Helper](/docs/de/managed-settings#compute-the-policy-with-a-helper-program) wartet | Enterprise and managed settings | Managed |

723| [`preferredNotifChannel`](#preferrednotifchannel) | Wählen Sie einen [Terminal-Gong oder Desktop-Benachrichtigung](/docs/de/terminal-config#get-a-terminal-bell-or-notification) für die Aufgabenvollendung | Remote, desktop, and notifications | Any file |732| [`preferredNotifChannel`](#preferrednotifchannel) | Wählen Sie einen [Terminal-Gong oder Desktop-Benachrichtigung](/docs/de/terminal-config#get-a-terminal-bell-or-notification) für die Aufgabenvollendung | Remote, desktop, and notifications | Any file |

724| [`prefersReducedMotion`](#prefersreducedmotion) | [Reduzieren oder schalten Sie](/docs/de/accessibility#accessibility-settings) Spinner-, Shimmer- und Flash-Animationen aus | Interface and terminal | Any file |733| [`prefersReducedMotion`](#prefersreducedmotion) | [Reduzieren oder schalten Sie](/docs/de/accessibility#accessibility-settings) Spinner-, Shimmer- und Flash-Animationen aus | Interface and terminal | Any file |

734| [`prependPlugins`](#prependplugins) | Führen Sie die [Mods](/docs/de/plugins/mods/admin) Ihrer Organisation vor jedem Mod aus, den ein Benutzer installiert | Plugins and skills | User or managed |

725| [`processWrapper`](#processwrapper) | Führen Sie die Hintergrundprozesse von Claude Code durch einen [Corporate Launcher](/docs/de/corporate-launcher) auf macOS und Linux aus | Agents, sessions, and worktrees | User or managed |735| [`processWrapper`](#processwrapper) | Führen Sie die Hintergrundprozesse von Claude Code durch einen [Corporate Launcher](/docs/de/corporate-launcher) auf macOS und Linux aus | Agents, sessions, and worktrees | User or managed |

726| [`promptCacheTtl`](#promptcachettl) | Wählen Sie die [Prompt-Cache-Lebensdauer](/docs/de/prompt-caching#cache-lifetime) für die Hauptkonversation | Model and responses | Any file |736| [`promptCacheTtl`](#promptcachettl) | Wählen Sie die [Prompt-Cache-Lebensdauer](/docs/de/prompt-caching#cache-lifetime) für die Hauptkonversation | Model and responses | Any file |

727| [`promptSuggestionEnabled`](#promptsuggestionenabled) | Verbergen Sie die ausgegraut [Prompt-Vorschläge](/docs/de/interactive-mode#prompt-suggestions) im Eingabefeld | Interface and terminal | Any file |737| [`promptSuggestionEnabled`](#promptsuggestionenabled) | Verbergen Sie die ausgegrauten [Prompt-Vorschläge](/docs/de/interactive-mode#prompt-suggestions) im Eingabefeld | Interface and terminal | Any file |

738| [`prStatusFooterEnabled`](#prstatusfooterenabled) | Schalten Sie das Badge für den [PR-Review-Status](/docs/de/interactive-mode#pr-review-status) in der Prompt-Fußzeile und die dahinterliegende Pull-Request-Prüfung aus | Global config settings | Global config |

728| [`prUrlTemplate`](#prurltemplate) | Zeigen Sie PR-Links auf ein internes Code-Review-Tool statt auf github.com | Git and attribution | Any file |739| [`prUrlTemplate`](#prurltemplate) | Zeigen Sie PR-Links auf ein internes Code-Review-Tool statt auf github.com | Git and attribution | Any file |

729| [`remote.defaultEnvironmentId`](#remote-defaultenvironmentid) | Wählen Sie die Standard-[Cloud-Umgebung](/docs/de/cloud-environments) für `claude --cloud`; eine selbstgehostete `ccpool_`-ID wird nur aus Benutzer- und verwalteten Einstellungen und `--settings` gelesen | Remote, desktop, and notifications | Any file |740| [`remote.defaultEnvironmentId`](#remote-defaultenvironmentid) | Wählen Sie die Standard-[Cloud-Umgebung](/docs/de/cloud-environments) für `claude --cloud`; eine selbstgehostete `ccpool_`-ID wird nur aus Benutzer- und verwalteten Einstellungen und `--settings` gelesen | Remote, desktop, and notifications | Any file |

730| [`remoteControlAtStartup`](#remotecontrolatstartup) | Verbinden Sie [Remote Control](/docs/de/remote-control#enable-remote-control-for-all-sessions) automatisch, wenn eine Sitzung startet | Remote, desktop, and notifications | Any file |741| [`remoteControlAtStartup`](#remotecontrolatstartup) | Verbinden Sie [Remote Control](/docs/de/remote-control#enable-remote-control-for-all-sessions) automatisch, wenn eine Sitzung startet | Remote, desktop, and notifications | Any file |

731| [`requiredMaximumVersion`](#requiredmaximumversion) | [Weigern Sie sich zu starten](/docs/de/setup#pin-a-minimum-version) auf einer Version, die Ihre Organisation nicht zulässt | Updates and versioning | Managed |742| [`requiredMaximumVersion`](#requiredmaximumversion) | [Weigern Sie sich zu starten](/docs/de/setup#pin-a-minimum-version) auf einer Version, die neuer ist, als Ihre Organisation zulässt | Updates and versioning | Managed |

732| [`requiredMinimumVersion`](#requiredminimumversion) | [Weigern Sie sich zu starten](/docs/de/setup#pin-a-minimum-version) auf einer Version, die älter ist als Ihre Organisation erfordert | Updates and versioning | Managed |743| [`requiredMinimumVersion`](#requiredminimumversion) | [Weigern Sie sich zu starten](/docs/de/setup#pin-a-minimum-version) auf einer Version, die älter ist als Ihre Organisation erfordert | Updates and versioning | Managed |

733| [`respectGitignore`](#respectgitignore) | Halten Sie ignorierte Dateien aus dem [`@`-Datei-Picker](/docs/de/interactive-mode#quick-commands) | Interface and terminal | Any file |744| [`respectGitignore`](#respectgitignore) | Halten Sie ignorierte Dateien aus dem [`@`-Datei-Picker](/docs/de/interactive-mode#quick-commands) | Interface and terminal | Any file |

734| [`respondToBashCommands`](#respondtobashcommands) | Verhindern Sie, dass Claude nach einem [`!`-Shell-Befehl](/docs/de/interactive-mode#shell-mode-with-prefix) antwortet | Interface and terminal | Any file |745| [`respondToBashCommands`](#respondtobashcommands) | Verhindern Sie, dass Claude nach einem [`!`-Shell-Befehl](/docs/de/interactive-mode#shell-mode-with-prefix) antwortet | Interface and terminal | Any file |

735| [`sandbox`](#sandbox) | [Isolieren Sie Bash-Befehle](/docs/de/sandboxing) von Ihrem Dateisystem und Netzwerk auf macOS, Linux und WSL2 | Sandbox settings | Any file |746| [`sandbox`](#sandbox) | [Isolieren Sie Bash-Befehle](/docs/de/sandboxing) von Ihrem Dateisystem und Netzwerk auf macOS, Linux und WSL2 | Sandbox settings | Any file |

736| [`sandbox.allowAppleEvents`](#sandbox-allowappleevents) | Lassen Sie [sandboxed](/docs/de/sandboxing)-Befehle Apple Events auf macOS senden | Sandbox settings | User or managed |747| [`sandbox.allowAppleEvents`](#sandbox-allowappleevents) | Lassen Sie [in der Sandbox](/docs/de/sandboxing) ausgeführte Befehle Apple Events auf macOS senden | Sandbox settings | User or managed |

737| [`sandbox.allowUnsandboxedCommands`](#sandbox-allowunsandboxedcommands) | Lassen Sie Claude einen blockierten Befehl außerhalb der [Sandbox](/docs/de/sandboxing#the-unsandboxed-retry-escape-hatch) erneut versuchen, oder verbieten Sie ihn | Sandbox settings | Any file |748| [`sandbox.allowUnsandboxedCommands`](#sandbox-allowunsandboxedcommands) | Lassen Sie Claude einen blockierten Befehl außerhalb der [Sandbox](/docs/de/sandboxing#the-unsandboxed-retry-escape-hatch) erneut versuchen, oder verbieten Sie es | Sandbox settings | Any file |

738| [`sandbox.autoAllowBashIfSandboxed`](#sandbox-autoallowbashifsandboxed) | Führen Sie [sandboxed](/docs/de/sandboxing#auto-allow-mode)-Befehle ohne Berechtigungsaufforderung aus | Sandbox settings | Any file |749| [`sandbox.autoAllowBashIfSandboxed`](#sandbox-autoallowbashifsandboxed) | Führen Sie Befehle [in der Sandbox](/docs/de/sandboxing#auto-allow-mode) ohne Berechtigungsabfrage aus | Sandbox settings | Any file |

739| [`sandbox.bwrapPath`](#sandbox-bwrappath) | Zeigen Sie die [Sandbox](/docs/de/sandboxing) auf eine Bubblewrap-Binärdatei außerhalb von `PATH` | Sandbox settings | Managed |750| [`sandbox.bwrapPath`](#sandbox-bwrappath) | Zeigen Sie die [Sandbox](/docs/de/sandboxing) auf eine Bubblewrap-Binärdatei außerhalb von `PATH` | Sandbox settings | Managed |

740| [`sandbox.credentials`](#sandbox-credentials) | Verbergen oder maskieren Sie Anmeldedatei- und Variablen in der [Sandbox](/docs/de/sandboxing#protect-credentials) | Sandbox settings | Any file |751| [`sandbox.credentials`](#sandbox-credentials) | Verbergen oder maskieren Sie Dateien und Variablen mit Anmeldedaten in der [Sandbox](/docs/de/sandboxing#protect-credentials) | Sandbox settings | Any file |

741| [`sandbox.credentials.allowPlaintextInject`](#sandbox-credentials-allowplaintextinject) | Lassen Sie [maskierte Anmeldedaten](/docs/de/sandboxing#mask-credentials) Plain-HTTP-Dienste auf vertrauenswürdigen Test-Netzwerken erreichen | Sandbox settings | User or managed |752| [`sandbox.credentials.allowPlaintextInject`](#sandbox-credentials-allowplaintextinject) | Lassen Sie [maskierte Anmeldedaten](/docs/de/sandboxing#mask-credentials) Plain-HTTP-Dienste auf vertrauenswürdigen Test-Netzwerken erreichen | Sandbox settings | User or managed |

742| [`sandbox.credentials.awsPairs`](#sandbox-credentials-awspairs) | Verknüpfen Sie benutzerdefiniert benannte AWS-Schlüsselvariablen in eine Anmeldedaten für [Neusignierung](/docs/de/sandboxing#re-sign-aws-requests) | Sandbox settings | User or managed |753| [`sandbox.credentials.awsPairs`](#sandbox-credentials-awspairs) | Verknüpfen Sie benutzerdefiniert benannte AWS-Schlüsselvariablen zu einem Satz Anmeldedaten für die [Neusignierung](/docs/de/sandboxing#re-sign-aws-requests) | Sandbox settings | User or managed |

743| [`sandbox.credentials.envVars`](#sandbox-credentials-envvars) | Heben Sie die Einstellung auf oder maskieren Sie eine Umgebungsvariable in der [Sandbox](/docs/de/sandboxing#mask-environment-variables) | Sandbox settings | Any file |754| [`sandbox.credentials.envVars`](#sandbox-credentials-envvars) | Heben Sie die Einstellung auf oder maskieren Sie eine Umgebungsvariable in der [Sandbox](/docs/de/sandboxing#mask-environment-variables) | Sandbox settings | Any file |

744| [`sandbox.credentials.files`](#sandbox-credentials-files) | Blockieren oder maskieren Sie Lesevorgänge einer Anmeldedatei in der [Sandbox](/docs/de/sandboxing#mask-credential-files) | Sandbox settings | Any file |755| [`sandbox.credentials.files`](#sandbox-credentials-files) | Blockieren oder maskieren Sie Lesevorgänge einer Anmeldedatei in der [Sandbox](/docs/de/sandboxing#mask-credential-files) | Sandbox settings | Any file |

745| [`sandbox.credentials.sigv4`](#sandbox-credentials-sigv4) | Wählen Sie, ob Streaming-, Presigned- oder [SigV4A-AWS-Anfragen](/docs/de/sandboxing#re-sign-aws-requests) fehlschlagen oder durchgehen | Sandbox settings | User or managed |756| [`sandbox.credentials.sigv4`](#sandbox-credentials-sigv4) | Wählen Sie, ob Streaming-, Presigned- oder [SigV4A-AWS-Anfragen](/docs/de/sandboxing#re-sign-aws-requests) fehlschlagen oder durchgehen | Sandbox settings | User or managed |


747| [`sandbox.enableWeakerNestedSandbox`](#sandbox-enableweakernestedsandbox) | Führen Sie die Linux-[Sandbox](/docs/de/sandboxing) in einem unprivilegierten Container aus | Sandbox settings | Any file |758| [`sandbox.enableWeakerNestedSandbox`](#sandbox-enableweakernestedsandbox) | Führen Sie die Linux-[Sandbox](/docs/de/sandboxing) in einem unprivilegierten Container aus | Sandbox settings | Any file |

748| [`sandbox.enableWeakerNetworkIsolation`](#sandbox-enableweakernetworkisolation) | Lassen Sie `gh`, `gcloud` und `terraform` TLS hinter einem MITM-Proxy in der [Sandbox](/docs/de/sandboxing#troubleshooting) auf macOS überprüfen | Sandbox settings | Any file |759| [`sandbox.enableWeakerNetworkIsolation`](#sandbox-enableweakernetworkisolation) | Lassen Sie `gh`, `gcloud` und `terraform` TLS hinter einem MITM-Proxy in der [Sandbox](/docs/de/sandboxing#troubleshooting) auf macOS überprüfen | Sandbox settings | Any file |

749| [`sandbox.excludedCommands`](#sandbox-excludedcommands) | Benennen Sie Befehle, die Claude Code außerhalb der [Sandbox](/docs/de/sandboxing) ausführen kann | Sandbox settings | Any file |760| [`sandbox.excludedCommands`](#sandbox-excludedcommands) | Benennen Sie Befehle, die Claude Code außerhalb der [Sandbox](/docs/de/sandboxing) ausführen kann | Sandbox settings | Any file |

750| [`sandbox.failIfUnavailable`](#sandbox-failifunavailable) | Weigern Sie sich zu starten, wenn die [Sandbox](/docs/de/sandboxing) nicht kann, anstatt unsandboxed auszuführen | Sandbox settings | Any file |761| [`sandbox.failIfUnavailable`](#sandbox-failifunavailable) | Weigern Sie sich zu starten, wenn die [Sandbox](/docs/de/sandboxing) nicht starten kann, anstatt ohne Sandbox auszuführen | Sandbox settings | Any file |

751| [`sandbox.filesystem`](#sandbox-filesystem) | Kontrollieren Sie, welche Pfade [sandboxed](/docs/de/sandboxing#filesystem-isolation)-Befehle lesen und schreiben können | Sandbox settings | Any file |762| [`sandbox.filesystem`](#sandbox-filesystem) | Kontrollieren Sie, welche Pfade [in der Sandbox](/docs/de/sandboxing#filesystem-isolation) ausgeführte Befehle lesen und schreiben können | Sandbox settings | Any file |

752| [`sandbox.filesystem.allowManagedReadPathsOnly`](#sandbox-filesystem-allowmanagedreadpathsonly) | Verhindern Sie, dass Entwickler [Lesepfade, die Ihre Organisation blockiert hat,](/docs/de/sandboxing#keep-developers-from-widening-the-policy) erneut öffnen | Sandbox settings | Managed |763| [`sandbox.filesystem.allowManagedReadPathsOnly`](#sandbox-filesystem-allowmanagedreadpathsonly) | Verhindern Sie, dass Entwickler [Lesepfade, die Ihre Organisation blockiert hat,](/docs/de/sandboxing#keep-developers-from-widening-the-policy) erneut öffnen | Sandbox settings | Managed |

753| [`sandbox.filesystem.allowRead`](#sandbox-filesystem-allowread) | Öffnen Sie das Lesen erneut in einem Bereich, den [`denyRead`](#sandbox-filesystem-denyread) blockiert | Sandbox settings | Any file |764| [`sandbox.filesystem.allowRead`](#sandbox-filesystem-allowread) | Öffnen Sie das Lesen erneut in einem Bereich, den [`denyRead`](#sandbox-filesystem-denyread) blockiert | Sandbox settings | Any file |

754| [`sandbox.filesystem.allowWrite`](#sandbox-filesystem-allowwrite) | Fügen Sie Pfade hinzu, in die [sandboxed](/docs/de/sandboxing)-Befehle schreiben können | Sandbox settings | Any file |765| [`sandbox.filesystem.allowWrite`](#sandbox-filesystem-allowwrite) | Fügen Sie Pfade hinzu, in die [in der Sandbox](/docs/de/sandboxing) ausgeführte Befehle schreiben können | Sandbox settings | Any file |

755| [`sandbox.filesystem.denyRead`](#sandbox-filesystem-denyread) | Blockieren Sie [sandboxed](/docs/de/sandboxing)-Befehle vom Lesen spezifischer Pfade | Sandbox settings | Any file |766| [`sandbox.filesystem.denyRead`](#sandbox-filesystem-denyread) | Hindern Sie [in der Sandbox](/docs/de/sandboxing) ausgeführte Befehle daran, spezifische Pfade zu lesen | Sandbox settings | Any file |

756| [`sandbox.filesystem.denyWrite`](#sandbox-filesystem-denywrite) | Blockieren Sie [sandboxed](/docs/de/sandboxing)-Befehle vom Schreiben in spezifische Pfade | Sandbox settings | Any file |767| [`sandbox.filesystem.denyWrite`](#sandbox-filesystem-denywrite) | Hindern Sie [in der Sandbox](/docs/de/sandboxing) ausgeführte Befehle daran, in spezifische Pfade zu schreiben | Sandbox settings | Any file |

757| [`sandbox.filesystem.disabled`](#sandbox-filesystem-disabled) | [Schalten Sie die Dateisystem-Isolation aus](/docs/de/sandboxing#disable-filesystem-isolation), während Sie die Netzwerk-Isolation beibehalten | Sandbox settings | User or managed |768| [`sandbox.filesystem.disabled`](#sandbox-filesystem-disabled) | [Schalten Sie die Dateisystem-Isolation aus](/docs/de/sandboxing#disable-filesystem-isolation), während Sie die Netzwerk-Isolation beibehalten | Sandbox settings | User or managed |

758| [`sandbox.ignoreViolations`](#sandbox-ignoreviolations) | Stummschalten Sie Verletzungsberichte für Pfade, die ein Befehl voraussichtlich prüft | Sandbox settings | Any file |769| [`sandbox.ignoreViolations`](#sandbox-ignoreviolations) | Schalten Sie Verletzungsberichte für Pfade stumm, die ein Befehl voraussichtlich prüft | Sandbox settings | Any file |

759| [`sandbox.network`](#sandbox-network) | Kontrollieren Sie, welche Hosts, Ports und Sockets [sandboxed](/docs/de/sandboxing#network-isolation)-Befehle erreichen | Sandbox settings | Any file |770| [`sandbox.network`](#sandbox-network) | Kontrollieren Sie, welche Hosts, Ports und Sockets [in der Sandbox](/docs/de/sandboxing#network-isolation) ausgeführte Befehle erreichen | Sandbox settings | Any file |

760| [`sandbox.network.allowAllUnixSockets`](#sandbox-network-allowallunixsockets) | Lassen Sie [sandboxed](/docs/de/sandboxing)-Befehle sich mit jedem Unix-Socket verbinden | Sandbox settings | Any file |771| [`sandbox.network.allowAllUnixSockets`](#sandbox-network-allowallunixsockets) | Lassen Sie [in der Sandbox](/docs/de/sandboxing) ausgeführte Befehle sich mit jedem Unix-Socket verbinden | Sandbox settings | Any file |

761| [`sandbox.network.allowedDomains`](#sandbox-network-alloweddomains) | Genehmigen Sie Domänen im Voraus, damit [sandboxed](/docs/de/sandboxing)-Befehle nicht danach fragen | Sandbox settings | Any file |772| [`sandbox.network.allowedDomains`](#sandbox-network-alloweddomains) | Genehmigen Sie Domänen im Voraus, damit [in der Sandbox](/docs/de/sandboxing) ausgeführte Befehle nicht danach fragen | Sandbox settings | Any file |

762| [`sandbox.network.allowLocalBinding`](#sandbox-network-allowlocalbinding) | Lassen Sie [sandboxed](/docs/de/sandboxing)-Befehle sich an localhost-Ports auf macOS binden | Sandbox settings | Any file |773| [`sandbox.network.allowLocalBinding`](#sandbox-network-allowlocalbinding) | Lassen Sie [in der Sandbox](/docs/de/sandboxing) ausgeführte Befehle auf macOS an Netzwerk-Ports lauschen und sich mit localhost verbinden | Sandbox settings | Any file |

763| [`sandbox.network.allowMachLookup`](#sandbox-network-allowmachlookup) | Lassen Sie macOS-[sandboxed](/docs/de/sandboxing)-Tools wie den iOS Simulator oder Playwright ihre XPC-Dienste erreichen | Sandbox settings | Any file |774| [`sandbox.network.allowMachLookup`](#sandbox-network-allowmachlookup) | Lassen Sie macOS-Tools [in der Sandbox](/docs/de/sandboxing) wie den iOS Simulator oder Playwright ihre XPC-Dienste erreichen | Sandbox settings | Any file |

764| [`sandbox.network.allowManagedDomainsOnly`](#sandbox-network-allowmanageddomainsonly) | Sperren Sie die Netzwerk-Zulassungsliste auf [verwaltete Einstellungen](/docs/de/sandboxing#keep-developers-from-widening-the-policy) | Sandbox settings | Managed |775| [`sandbox.network.allowManagedDomainsOnly`](#sandbox-network-allowmanageddomainsonly) | Sperren Sie die Netzwerk-Allowlist auf [verwaltete Einstellungen](/docs/de/sandboxing#keep-developers-from-widening-the-policy) | Sandbox settings | Managed |

765| [`sandbox.network.allowUnixSockets`](#sandbox-network-allowunixsockets) | Listen Sie Unix-Socket-Pfade auf, die [sandboxed](/docs/de/sandboxing)-Befehle auf macOS verwenden können | Sandbox settings | Any file |776| [`sandbox.network.allowUnixSockets`](#sandbox-network-allowunixsockets) | Listen Sie Unix-Socket-Pfade auf, die [in der Sandbox](/docs/de/sandboxing) ausgeführte Befehle auf macOS verwenden können | Sandbox settings | Any file |

766| [`sandbox.network.deniedDomains`](#sandbox-network-denieddomains) | Blockieren Sie Domänen für [sandboxed](/docs/de/sandboxing)-Befehle, auch innerhalb eines zulässigen Wildcards | Sandbox settings | Any file |777| [`sandbox.network.deniedDomains`](#sandbox-network-denieddomains) | Blockieren Sie Domänen für [in der Sandbox](/docs/de/sandboxing) ausgeführte Befehle, auch innerhalb eines zulässigen Wildcards | Sandbox settings | Any file |

767| [`sandbox.network.httpProxyPort`](#sandbox-network-httpproxyport) | Leiten Sie [Sandbox](/docs/de/sandboxing#custom-proxy-configuration)-HTTP-Verkehr durch Ihren eigenen Proxy | Sandbox settings | Any file |778| [`sandbox.network.httpProxyPort`](#sandbox-network-httpproxyport) | Leiten Sie [Sandbox](/docs/de/sandboxing#custom-proxy-configuration)-HTTP-Verkehr durch Ihren eigenen Proxy | Sandbox settings | Any file |

768| [`sandbox.network.socksProxyPort`](#sandbox-network-socksproxyport) | Leiten Sie [Sandbox](/docs/de/sandboxing#custom-proxy-configuration)-SOCKS-Verkehr durch Ihren eigenen Proxy | Sandbox settings | Any file |779| [`sandbox.network.socksProxyPort`](#sandbox-network-socksproxyport) | Leiten Sie [Sandbox](/docs/de/sandboxing#custom-proxy-configuration)-SOCKS-Verkehr durch Ihren eigenen Proxy | Sandbox settings | Any file |

769| [`sandbox.network.strictAllowlist`](#sandbox-network-strictallowlist) | Lehnen Sie Hosts außerhalb der [Zulassungsliste](/docs/de/sandboxing#network-isolation) ab, anstatt zu fragen | Sandbox settings | User or managed |780| [`sandbox.network.strictAllowlist`](#sandbox-network-strictallowlist) | Lehnen Sie Hosts außerhalb der [Allowlist](/docs/de/sandboxing#network-isolation) ab, anstatt zu fragen | Sandbox settings | User or managed |

770| [`sandbox.network.tlsTerminate`](#sandbox-network-tlsterminate) | Lassen Sie die [Sandbox](/docs/de/sandboxing#network-isolation) TLS beenden, damit sie HTTPS-Anfragen lesen kann | Sandbox settings | User or managed |781| [`sandbox.network.tlsTerminate`](#sandbox-network-tlsterminate) | Lassen Sie den [Sandbox](/docs/de/sandboxing#network-isolation)-Proxy TLS terminieren, damit er HTTPS-Anfragen lesen kann | Sandbox settings | User or managed |

771| [`sandbox.ripgrep`](#sandbox-ripgrep) | Verwenden Sie Ihre eigene ripgrep-Binärdatei in der [Sandbox](/docs/de/sandboxing) | Sandbox settings | User or managed |782| [`sandbox.ripgrep`](#sandbox-ripgrep) | Verwenden Sie Ihre eigene ripgrep-Binärdatei in der [Sandbox](/docs/de/sandboxing) | Sandbox settings | User or managed |

772| [`sandbox.socatPath`](#sandbox-socatpath) | Zeigen Sie den [Sandbox](/docs/de/sandboxing)-Proxy auf eine `socat`-Binärdatei außerhalb von `PATH` | Sandbox settings | Managed |783| [`sandbox.socatPath`](#sandbox-socatpath) | Zeigen Sie den [Sandbox](/docs/de/sandboxing)-Proxy auf eine `socat`-Binärdatei außerhalb von `PATH` | Sandbox settings | Managed |

773| [`showClearContextOnPlanAccept`](#showclearcontextonplanaccept) | Zeigen Sie eine "Kontext löschen"-Option auf dem [Plan-Akzeptanzbildschirm](/docs/de/permission-modes#review-and-approve-a-plan) | Interface and terminal | Any file |784| [`showClearContextOnPlanAccept`](#showclearcontextonplanaccept) | Zeigen Sie eine "Kontext löschen"-Option auf dem [Plan-Akzeptanzbildschirm](/docs/de/permission-modes#review-and-approve-a-plan) | Interface and terminal | Any file |

774| [`showThinkingSummaries`](#showthinkingsummaries) | Sehen Sie Zusammenfassungen von Claudes [Denken](/docs/de/model-config#extended-thinking) statt eines zusammengeklappten Stubs | Model and responses | Any file |785| [`showThinkingSummaries`](#showthinkingsummaries) | Sehen Sie Zusammenfassungen von Claudes [Thinking](/docs/de/model-config#extended-thinking) statt eines zusammengeklappten Stubs | Model and responses | Any file |

775| [`showTurnDuration`](#showturnduration) | Verbergen Sie die "Gekocht für"-Dauer nach jeder Antwort | Interface and terminal | Any file |786| [`showTurnDuration`](#showturnduration) | Verbergen Sie die "Gekocht für"-Dauer nach jeder Antwort | Interface and terminal | Any file |

776| [`skillListingBudgetFraction`](#skilllistingbudgetfraction) | Reservieren Sie mehr oder weniger Kontext für die [Skill-Auflistung](/docs/de/skills#skill-descriptions-are-cut-short) | Memory and context | Any file |787| [`skillListingBudgetFraction`](#skilllistingbudgetfraction) | Reservieren Sie mehr oder weniger Kontext für die [Skill-Auflistung](/docs/de/skills#skill-descriptions-are-cut-short) | Memory and context | Any file |

777| [`skillListingMaxDescChars`](#skilllistingmaxdescchars) | Begrenzen Sie die Beschreibungslänge jedes Skills in der [Skill-Auflistung](/docs/de/skills#skill-descriptions-are-cut-short) | Memory and context | Any file |788| [`skillListingMaxDescChars`](#skilllistingmaxdescchars) | Begrenzen Sie die Beschreibungslänge jedes Skills in der [Skill-Auflistung](/docs/de/skills#skill-descriptions-are-cut-short) | Memory and context | Any file |


782| [`spellcheck`](#spellcheck) | Unterstreichen Sie falsch geschriebene Wörter in der Eingabeaufforderung mit einem [Rechtschreibprüfer](/docs/de/interactive-mode#check-spelling-as-you-type), den Sie installieren | Interface and terminal | User or managed |793| [`spellcheck`](#spellcheck) | Unterstreichen Sie falsch geschriebene Wörter in der Eingabeaufforderung mit einem [Rechtschreibprüfer](/docs/de/interactive-mode#check-spelling-as-you-type), den Sie installieren | Interface and terminal | User or managed |

783| [`spinnerTipsEnabled`](#spinnertipsenabled) | Verbergen Sie Tipps im Spinner, während Claude arbeitet | Interface and terminal | Any file |794| [`spinnerTipsEnabled`](#spinnertipsenabled) | Verbergen Sie Tipps im Spinner, während Claude arbeitet | Interface and terminal | Any file |

784| [`spinnerTipsOverride`](#spinnertipsoverride) | Fügen Sie Ihre eigenen Tipps zur Spinner-Rotation hinzu, oder ersetzen Sie die integrierten Tipps | Interface and terminal | Any file |795| [`spinnerTipsOverride`](#spinnertipsoverride) | Fügen Sie Ihre eigenen Tipps zur Spinner-Rotation hinzu, oder ersetzen Sie die integrierten Tipps | Interface and terminal | Any file |

785| [`spinnerVerbs`](#spinnerverbs) | Fügen Sie die Verben hinzu oder ersetzen Sie sie, die während einer Runde angezeigt werden | Interface and terminal | Any file |796| [`spinnerVerbs`](#spinnerverbs) | Fügen Sie die Verben hinzu oder ersetzen Sie sie, die während eines Turns angezeigt werden | Interface and terminal | Any file |

786| [`sshConfigs`](#sshconfigs) | Fügen Sie [SSH-Verbindungen](/docs/de/desktop#pre-configure-ssh-connections-for-your-team) zum Desktop-Umgebungs-Dropdown hinzu | Remote, desktop, and notifications | User or managed |797| [`sshConfigs`](#sshconfigs) | Fügen Sie [SSH-Verbindungen](/docs/de/desktop#pre-configure-ssh-connections-for-your-team) zum Desktop-Umgebungs-Dropdown hinzu | Remote, desktop, and notifications | User or managed |

787| [`sshHostAllowlist`](#sshhostallowlist) | Begrenzen Sie, welche Hosts [Desktop-SSH-Sitzungen](/docs/de/desktop#restrict-which-ssh-hosts-users-can-connect-to) erreichen können | Remote, desktop, and notifications | Managed |798| [`sshHostAllowlist`](#sshhostallowlist) | Begrenzen Sie, welche Hosts [Desktop-SSH-Sitzungen](/docs/de/desktop#restrict-which-ssh-hosts-users-can-connect-to) erreichen können | Remote, desktop, and notifications | Managed |

788| [`statusLine`](#statusline) | Führen Sie Ihren eigenen Befehl aus, um eine [Statuszeile](/docs/de/statusline) unter der Eingabeaufforderung zu rendern | Interface and terminal | Any file |799| [`statusLine`](#statusline) | Führen Sie Ihren eigenen Befehl aus, um eine [Statuszeile](/docs/de/statusline) unter der Eingabeaufforderung zu rendern | Interface and terminal | Any file |

789| [`strictKnownMarketplaces`](#strictknownmarketplaces) | Zulassungsliste der [Marketplace](/docs/de/plugins/overview)-Quellen, die Benutzer hinzufügen und installieren können | Plugins and skills | Managed |800| [`strictKnownMarketplaces`](#strictknownmarketplaces) | Allowlist der [Marketplace](/docs/de/plugins/overview)-Quellen, die Benutzer hinzufügen und aus denen sie installieren können | Plugins and skills | Managed |

790| [`strictPluginOnlyCustomization`](#strictpluginonlycustomization) | Blockieren Sie [Skills](/docs/de/skills), [Agenten](/docs/de/sub-agents), [Hooks](/docs/de/hooks) und [MCP-Server](/docs/de/mcp) aus Benutzer- und Projektquellen | Plugins and skills | Managed |801| [`strictPluginOnlyCustomization`](#strictpluginonlycustomization) | Blockieren Sie [Skills](/docs/de/skills), [Agenten](/docs/de/sub-agents), [Hooks](/docs/de/hooks) und [MCP-Server](/docs/de/mcp) aus Benutzer- und Projektquellen | Plugins and skills | Managed |

791| [`strictPluginOnlyCustomization.agents`](#strictpluginonlycustomization-agents) | Sperren Sie [Agenten](/docs/de/sub-agents) auf Plugin- und verwaltete Quellen | Plugins and skills | Managed |802| [`strictPluginOnlyCustomization.agents`](#strictpluginonlycustomization-agents) | Sperren Sie [Agenten](/docs/de/sub-agents) auf Plugin- und verwaltete Quellen | Plugins and skills | Managed |

792| [`strictPluginOnlyCustomization.hooks`](#strictpluginonlycustomization-hooks) | Sperren Sie [Hooks](/docs/de/hooks) auf Plugin- und verwaltete Quellen | Plugins and skills | Managed |803| [`strictPluginOnlyCustomization.hooks`](#strictpluginonlycustomization-hooks) | Sperren Sie [Hooks](/docs/de/hooks) auf Plugin- und verwaltete Quellen | Plugins and skills | Managed |


794| [`strictPluginOnlyCustomization.skills`](#strictpluginonlycustomization-skills) | Sperren Sie [Skills](/docs/de/skills) auf Plugin- und verwaltete Quellen | Plugins and skills | Managed |805| [`strictPluginOnlyCustomization.skills`](#strictpluginonlycustomization-skills) | Sperren Sie [Skills](/docs/de/skills) auf Plugin- und verwaltete Quellen | Plugins and skills | Managed |

795| [`subagentPromptCacheTtl`](#subagentpromptcachettl) | Wählen Sie die [Prompt-Cache-Lebensdauer](/docs/de/prompt-caching#cache-lifetime) für Subagenten und andere Anfragen außerhalb der Hauptkonversation | Model and responses | Any file |806| [`subagentPromptCacheTtl`](#subagentpromptcachettl) | Wählen Sie die [Prompt-Cache-Lebensdauer](/docs/de/prompt-caching#cache-lifetime) für Subagenten und andere Anfragen außerhalb der Hauptkonversation | Model and responses | Any file |

796| [`subagentStatusLine`](#subagentstatusline) | Schreiben Sie Zeilen in der [Subagenten](/docs/de/sub-agents)-Aufgabenanzeige mit Ihrem eigenen Befehl um | Interface and terminal | Any file |807| [`subagentStatusLine`](#subagentstatusline) | Schreiben Sie Zeilen in der [Subagenten](/docs/de/sub-agents)-Aufgabenanzeige mit Ihrem eigenen Befehl um | Interface and terminal | Any file |

797| [`switchModelsOnFlag`](#switchmodelsonflag) | Wechseln Sie Modelle automatisch oder pausieren Sie, wenn ein [Sicherheitsklassifizierer](/docs/de/model-config#ask-before-switching) eine Anfrage kennzeichnet | Model and responses | Any file |808| [`switchModelsOnFlag`](#switchmodelsonflag) | Wechseln Sie Modelle automatisch oder pausieren Sie, wenn ein [Sicherheitsklassifikator](/docs/de/model-config#ask-before-switching) eine Anfrage kennzeichnet | Model and responses | Any file |

798| [`syncClaudeAiPlugins`](#syncclaudeaiplugins) | Beenden Sie das Laden der [auf Ihrem claude.ai-Konto aktivierten Plugins](/docs/de/plugins/overview) und beenden Sie das Herunterladen neuer | Plugins and skills | User, local, or managed |809| [`syncClaudeAiPlugins`](#syncclaudeaiplugins) | Beenden Sie das Laden der [auf Ihrem claude.ai-Konto aktivierten Plugins](/docs/de/plugins/loading#synced-plugins) und beenden Sie das Herunterladen neuer | Plugins and skills | User, local, or managed |

799| [`syncClaudeAiSkills`](#syncclaudeaiskills) | Beenden Sie das Laden der [auf Ihrem claude.ai-Konto aktivierten Skills](/docs/de/skills#how-synced-skills-behave) und beenden Sie das Herunterladen neuer | Plugins and skills | User, local, or managed |810| [`syncClaudeAiSkills`](#syncclaudeaiskills) | Beenden Sie das Laden der [auf Ihrem claude.ai-Konto aktivierten Skills](/docs/de/skills#how-synced-skills-behave) und beenden Sie das Herunterladen neuer | Plugins and skills | User, local, or managed |

800| [`syntaxHighlightingDisabled`](#syntaxhighlightingdisabled) | Schalten Sie die Syntaxhervorhebung in Diffs und Code-Blöcken aus | Interface and terminal | Any file |811| [`syntaxHighlightingDisabled`](#syntaxhighlightingdisabled) | Schalten Sie die Syntaxhervorhebung in Diffs und Code-Blöcken aus | Interface and terminal | Any file |

801| [`taskOutputMaxChars`](#taskoutputmaxchars) | Entfernt in v2.1.277, zusammen mit dem `TaskOutput`-Tool, das es dimensioniert | Memory and context | Any file |812| [`taskOutputMaxChars`](#taskoutputmaxchars) | Entfernt in v2.1.277, zusammen mit dem `TaskOutput`-Tool, das es dimensioniert | Memory and context | Any file |


808| [`timeZone`](#timezone) | Zeigen Sie die Zeiten in der Benutzeroberfläche in einer Zeitzone an, die nicht die Ihres Systems ist | Interface and terminal | Any file |819| [`timeZone`](#timezone) | Zeigen Sie die Zeiten in der Benutzeroberfläche in einer Zeitzone an, die nicht die Ihres Systems ist | Interface and terminal | Any file |

809| [`tui`](#tui) | Wählen Sie den [Vollbild-](/docs/de/fullscreen) oder klassischen Terminal-Renderer | Interface and terminal | Any file |820| [`tui`](#tui) | Wählen Sie den [Vollbild-](/docs/de/fullscreen) oder klassischen Terminal-Renderer | Interface and terminal | Any file |

810| [`ultracode`](#ultracode) | Lassen Sie Claude einen [Workflow](/docs/de/workflows#let-claude-decide-with-ultracode) für jede wesentliche Aufgabe planen, ohne gefragt zu werden | Model and responses | Any file |821| [`ultracode`](#ultracode) | Lassen Sie Claude einen [Workflow](/docs/de/workflows#let-claude-decide-with-ultracode) für jede wesentliche Aufgabe planen, ohne gefragt zu werden | Model and responses | Any file |

811| [`useAutoModeDuringPlan`](#useautomodeduringplan) | Lassen Sie den [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode)-Klassifizierer Shell-Befehle im [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode) überprüfen; setzen Sie `false`, um stattdessen Aufforderungen zu erhalten | Permission settings | User, local, or managed |822| [`useAutoModeDuringPlan`](#useautomodeduringplan) | Lassen Sie den [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode)-Klassifikator Shell-Befehle im [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode) überprüfen; setzen Sie `false`, um stattdessen Berechtigungsabfragen zu erhalten | Permission settings | User, local, or managed |

812| [`verbose`](#verbose) | Zeigen Sie [vollständige Tool-Ausgabe](/docs/de/cli-reference#cli-flags) statt verkürzter Zusammenfassungen an; `viewMode` hat Vorrang, wenn beide gesetzt sind | Interface and terminal | Any file |823| [`verbose`](#verbose) | Zeigen Sie [vollständige Tool-Ausgabe](/docs/de/cli-reference#cli-flags) statt verkürzter Zusammenfassungen an; `viewMode` hat Vorrang, wenn beide gesetzt sind | Interface and terminal | Any file |

813| [`viewMode`](#viewmode) | Starten Sie jede Sitzung in [Standard-, Verbose- oder Focus-Ansicht](/docs/de/cli-reference#cli-flags) | Interface and terminal | Any file |824| [`viewMode`](#viewmode) | Starten Sie jede Sitzung in [Standard-, Verbose- oder Focus-Ansicht](/docs/de/cli-reference#cli-flags) | Interface and terminal | Any file |

814| [`vimInsertModeRemaps`](#viminsertmoderemaps) | Ordnen Sie eine zwei-Tasten-[INSERT-Modus-Sequenz](/docs/de/interactive-mode#remap-insert-mode-key-sequences) wie `jj` zu Escape | Interface and terminal | User or managed |825| [`vimInsertModeRemaps`](#viminsertmoderemaps) | Ordnen Sie eine zwei-Tasten-[INSERT-Modus-Sequenz](/docs/de/interactive-mode#remap-insert-mode-key-sequences) wie `jj` zu Escape | Interface and terminal | User or managed |

815| [`voice`](#voice) | Schalten Sie [Sprachdiktat](/docs/de/voice-dictation) ein und wählen Sie Halte- oder Tap-Modus | Interface and terminal | Any file |826| [`voice`](#voice) | Schalten Sie [Sprachdiktat](/docs/de/voice-dictation) ein und wählen Sie Halte- oder Tap-Modus | Interface and terminal | Any file |

816| [`voiceEnabled`](#voiceenabled) | Schalten Sie [Sprachdiktat](/docs/de/voice-dictation) mit der älteren Einzeltasten-Form ein | Interface and terminal | Any file |827| [`voiceEnabled`](#voiceenabled) | Schalten Sie [Sprachdiktat](/docs/de/voice-dictation) mit der älteren Einzeltasten-Form ein | Interface and terminal | Any file |

817| [`wheelScrollAccelerationEnabled`](#wheelscrollaccelerationenabled) | Schalten Sie die [Mausrad-Beschleunigung](/docs/de/fullscreen#mouse-wheel-scrolling) beim Vollbild-Rendering aus | Interface and terminal | Any file |828| [`wheelScrollAccelerationEnabled`](#wheelscrollaccelerationenabled) | Schalten Sie die [Mausrad-Beschleunigung](/docs/de/fullscreen#mouse-wheel-scrolling) beim Vollbild-Rendering aus | Interface and terminal | Any file |

818| [`workflowKeywordTriggerEnabled`](#workflowkeywordtriggerenabled) | Lassen Sie das Wort `ultracode` in einer Eingabeaufforderung einen [Workflow](/docs/de/workflows) starten; setzen Sie `false`, um es einzugeben, ohne einen zu starten | Hooks and automation | Any file |829| [`workflowKeywordTriggerEnabled`](#workflowkeywordtriggerenabled) | Lassen Sie das Wort `ultracode` in einem Prompt einen [Workflow](/docs/de/workflows) starten; setzen Sie `false`, um es einzugeben, ohne einen zu starten | Hooks and automation | Any file |

819| [`workflowSizeGuideline`](#workflowsizeguideline) | Legen Sie die Agent-Anzahl fest, auf die Claude in [dynamischen Workflows](/docs/de/workflows) abzielt | Hooks and automation | Any file |830| [`workflowSizeGuideline`](#workflowsizeguideline) | Legen Sie die Agent-Anzahl fest, auf die Claude in [dynamischen Workflows](/docs/de/workflows) abzielt | Hooks and automation | Any file |

820| [`worktree`](#worktree) | Konfigurieren Sie, wie Claude Code Git-[Worktrees](/docs/de/worktrees) erstellt | Agents, sessions, and worktrees | Any file |831| [`worktree`](#worktree) | Konfigurieren Sie, wie Claude Code Git-[Worktrees](/docs/de/worktrees) erstellt | Agents, sessions, and worktrees | Any file |

821| [`worktree.baseRef`](#worktree-baseref) | Verzweigen Sie neue [Worktrees](/docs/de/worktrees) vom Remote-Standard-Branch oder Ihrem lokalen HEAD | Agents, sessions, and worktrees | Any file |832| [`worktree.baseRef`](#worktree-baseref) | Verzweigen Sie neue [Worktrees](/docs/de/worktrees) vom Remote-Standard-Branch oder Ihrem lokalen HEAD | Agents, sessions, and worktrees | Any file |


834 `advisorModel`845 `advisorModel`

835</h3>846</h3>

836 847 

837Wählen Sie, welches Modell antwortet, wenn Claude das serverseitige [Advisor-Tool](/docs/de/advisor) aufruft. Deaktivieren Sie es, um den Advisor auszuschalten. Der Advisor muss mindestens so leistungsfähig sein wie Ihr Hauptmodell. Informationen zu akzeptierten Kombinationen und was passiert, wenn Sie eine nicht akzeptierte Kombination wählen, finden Sie unter [Wählen Sie ein Advisor-Modell](/docs/de/advisor#choose-an-advisor-model).848Wählen Sie, welches Modell antwortet, wenn Claude das serverseitige [Advisor-Tool](/docs/de/advisor) aufruft. Entfernen Sie den Wert, um den Advisor auszuschalten. Der Advisor muss mindestens so leistungsfähig sein wie Ihr Hauptmodell. Informationen zu akzeptierten Kombinationen und was passiert, wenn Sie eine nicht akzeptierte Kombination wählen, finden Sie unter [Wählen Sie ein Advisor-Modell](/docs/de/advisor#choose-an-advisor-model).

838 849 

839Sie bearbeiten diesen Schlüssel normalerweise nicht manuell. Führen Sie `/advisor` aus, um eine Auswahl zu öffnen, die die aktuelle Auswahl, die Modelle, die beraten können, und **Kein Advisor** anzeigt. Claude Code speichert Ihre Auswahl in diesem Schlüssel in `~/.claude/settings.json`. Wenn Sie aus einem [Remote Control](/docs/de/remote-control)-Client oder in einer Sitzung auswählen, die an einen Remote Worker angehängt ist, gilt die Auswahl nur für diese Sitzung und ändert diesen Schlüssel nicht.850Sie bearbeiten diesen Schlüssel normalerweise nicht manuell. Führen Sie `/advisor` aus, um eine Auswahl zu öffnen, die die aktuelle Auswahl, die Modelle, die beraten können, und **Kein Advisor** anzeigt. Claude Code speichert Ihre Auswahl in diesem Schlüssel in `~/.claude/settings.json`. Wenn Sie aus einem [Remote Control](/docs/de/remote-control)-Client oder in einer Sitzung auswählen, die an einen Remote Worker angehängt ist, gilt die Auswahl nur für diese Sitzung und ändert diesen Schlüssel nicht.

840 851 

841Wenn Ihr Konto die [Zustimmung zu Nutzungsguthaben](/docs/de/advisor#fable-advisor-and-usage-credits) erfordert, akzeptieren Sie diese zuerst, indem Sie `/model fable` ausführen. Bis dahin speichert die Auswahl von Fable in `/advisor` nichts und Claude Code teilt Ihnen mit, dass Sie zuerst `/model fable` ausführen sollen.852Wenn Ihr Konto die [Zustimmung zu Nutzungsguthaben](/docs/de/advisor#fable-advisor-and-usage-credits) erfordert, akzeptieren Sie diese zuerst, indem Sie `/model fable` ausführen. Bis dahin speichert die Auswahl von Fable in `/advisor` nichts und Claude Code teilt Ihnen mit, dass Sie zuerst `/model fable` ausführen sollen.

842 853 

843* **Bereich**: [`Beliebige Datei`](#scopes)854* **Geltungsbereich**: [`Beliebige Datei`](#scopes)

844* **Typ**: String, einer der Aliase `"fable"`, `"opus"` oder `"sonnet"`, die in die aktuelle Standardversion dieser Modellfamilie von Claude Code aufgelöst werden, oder eine vollständige Modell-ID wie `"claude-opus-5-5"`855* **Typ**: String, einer der Aliase `"fable"`, `"opus"` oder `"sonnet"`, die in die aktuelle Standardversion dieser Modellfamilie von Claude Code aufgelöst werden, oder eine vollständige Modell-ID wie `"claude-opus-5-5"`

845* **Standard**: nicht gesetzt, daher ist der Advisor ausgeschaltet856* **Standard**: nicht gesetzt, daher ist der Advisor ausgeschaltet

846* **Sitzungsübergreifende Außerkraftsetzungen**: `--advisor` hat Vorrang vor diesem Schlüssel für eine Sitzung. [`CLAUDE_CODE_DISABLE_ADVISOR_TOOL`](/docs/de/env-vars) schaltet den Advisor aus, und dieser Schlüssel kann ihn nicht wieder einschalten857* **Überschreibungen pro Sitzung**: `--advisor` hat für eine Sitzung Vorrang vor diesem Schlüssel. [`CLAUDE_CODE_DISABLE_ADVISOR_TOOL`](/docs/de/env-vars) schaltet den Advisor aus, und dieser Schlüssel kann ihn nicht wieder einschalten

847 858 

848```json settings.json theme={null}859```json settings.json theme={null}

849{860{


857 `alwaysThinkingEnabled`868 `alwaysThinkingEnabled`

858</h3>869</h3>

859 870 

860Deaktivieren Sie [erweitertes Denken](/docs/de/model-config#extended-thinking) für jede Sitzung, indem Sie dies auf `false` setzen. Das Denken ist standardmäßig aktiviert, daher ändert `true` nichts. Die meisten Benutzer stellen dies über `/config` ein, anstatt die Datei zu bearbeiten.871Deaktivieren Sie [Extended Thinking](/docs/de/model-config#extended-thinking) für jede Sitzung, indem Sie dies auf `false` setzen. Thinking ist standardmäßig aktiviert, daher ändert `true` nichts. Die meisten Benutzer stellen dies über `/config` ein, anstatt die Datei zu bearbeiten.

861 872 

862Bei Modellen, die immer denken, wie Opus 5.5 und die Fable-Modelle, hat `false` keine Auswirkung. Bei [Drittanbieter-Providern](/docs/de/third-party-integrations) lässt Claude Code den Parameter `thinking` weg, anstatt das Denken auszuschalten, daher können adaptive Reasoning-Modelle möglicherweise noch denken. Wenn das Denken auf der Anthropic API ausgeschaltet ist, sendet Claude Code stattdessen `high` Aufwand an Modelle, die [diese Kombination nicht akzeptieren](/docs/de/errors#effort-isnt-available-with-thinking-turned-off), wie Opus 5.873Bei Modellen, die immer nachdenken, wie Opus 5.5, Sonnet 5.5 und die Fable-Modelle, hat `false` keine Auswirkung. Bei [Drittanbieter-Providern](/docs/de/third-party-integrations) lässt Claude Code den Parameter `thinking` weg, anstatt Thinking auszuschalten, daher können Modelle mit adaptivem Reasoning möglicherweise trotzdem nachdenken. Wenn Thinking auf der Anthropic API ausgeschaltet ist, sendet Claude Code den Effort `high` statt einer höheren Stufe an Modelle, von denen es weiß, dass sie [diese Kombination nicht akzeptieren](/docs/de/errors#effort-isnt-available-with-thinking-turned-off), wie Opus 5.

863 874 

864* **Bereich**: [`Beliebige Datei`](#scopes)875* **Geltungsbereich**: [`Beliebige Datei`](#scopes)

865* **Typ**: Boolean876* **Typ**: Boolean

866 * `true`: keine Auswirkung; das Denken ist bereits aktiviert877 * `true`: keine Auswirkung; Thinking ist bereits aktiviert

867 * `false`: Claude Code deaktiviert erweitertes Denken für jede Sitzung878 * `false`: Claude Code deaktiviert Extended Thinking für jede Sitzung

868* **Standard**: nicht gesetzt, daher ist das Denken für Modelle aktiviert, die es unterstützen879* **Standard**: nicht gesetzt, daher ist Thinking für Modelle aktiviert, die es unterstützen

869* **Sitzungsübergreifende Außerkraftsetzungen**: [`MAX_THINKING_TOKENS`](/docs/de/env-vars) hat Vorrang vor diesem Schlüssel für eine Sitzung: `0` deaktiviert das Denken unter den gleichen Modell- und Provider-Einschränkungen wie `false`, und ein positiver Wert aktiviert das Denken auch wenn dieser Schlüssel `false` ist. Bei adaptive-reasoning-Modellen wird die Zahl selbst ignoriert880* **Überschreibungen pro Sitzung**: [`MAX_THINKING_TOKENS`](/docs/de/env-vars) hat für eine Sitzung Vorrang vor diesem Schlüssel: `0` deaktiviert Thinking unter den gleichen Modell- und Provider-Einschränkungen wie `false`, und ein positiver Wert aktiviert Thinking, auch wenn dieser Schlüssel `false` ist. Bei Modellen mit adaptivem Reasoning wird die Zahl selbst ignoriert

870 881 

871```json settings.json theme={null}882```json settings.json theme={null}

872{883{


878 `availableModels`889 `availableModels`

879</h3>890</h3>

880 891 

881Beschränken Sie, welche Modelle Personen für die Hauptsitzung, [Subagents](/docs/de/sub-agents), [Skills](/docs/de/skills) und den [Advisor](/docs/de/advisor) auswählen können. Eine verwaltete Liste beschränkt `/model`, `--model` und den Schlüssel `model` in den eigenen Dateien eines Entwicklers; ein Modell außerhalb davon kann nicht ausgewählt werden. Dies berührt die Option Standard nicht; kombinieren Sie es mit [`enforceAvailableModels`](#enforceavailablemodels), um das zu tun.892Beschränken Sie, welche Modelle Personen für die Hauptsitzung, [Subagenten](/docs/de/sub-agents), [Skills](/docs/de/skills) und den [Advisor](/docs/de/advisor) auswählen können. Eine verwaltete Liste beschränkt `/model`, `--model` und den Schlüssel `model` in den eigenen Dateien eines Entwicklers; ein Modell außerhalb davon kann nicht ausgewählt werden. Mit dem standardmäßigen Präfixabgleich berührt dies die Option Standard allein nicht; kombinieren Sie es dafür mit [`enforceAvailableModels`](#enforceavailablemodels).

882 893 

883* **Bereich**: [`Beliebige Datei`](#scopes). Stellen Sie es in verwalteten Einstellungen bereit, um es für eine Organisation durchzusetzen.894* **Geltungsbereich**: [`Beliebige Datei`](#scopes). Stellen Sie es in verwalteten Einstellungen bereit, um es für eine Organisation durchzusetzen.

884* **Typ**: Array von Modellaliasen oder IDs895* **Typ**: Array von Modellaliasen oder IDs

885* **Standard**: nicht gesetzt, daher sind alle Modelle verfügbar896* **Standard**: nicht gesetzt, daher sind alle Modelle verfügbar

886 897 


892}903}

893```904```

894 905 

895Siehe [Modellauswahl einschränken](/docs/de/model-config#restrict-model-selection).906Ein Modell-ID-Eintrag wie `"claude-opus-5"` erlaubt auch spätere Versionen, die ihn erweitern, wie Opus 5.5. Um eine dieser Versionen zu blockieren, verwenden Sie [`deniedModels`](#deniedmodels). Damit jeder Modell-ID-Eintrag nur die genannte Version erlaubt, verwenden Sie [`availableModelsMatch`](#availablemodelsmatch). Siehe [Modellauswahl einschränken](/docs/de/model-config#restrict-model-selection).

907 

908<h3 id="availablemodelsmatch">

909 `availableModelsMatch`

910</h3>

911 

912Legen Sie fest, wie Einträge in [`availableModels`](#availablemodels) mit Modell-IDs abgeglichen werden. Standardmäßig erlaubt ein Modell-ID-Eintrag auch spätere Versionen, die ihn erweitern, sodass `"claude-opus-5"` Opus 5.5 erlaubt. Mit `"exact"` erlaubt jeder Modell-ID-Eintrag nur die genannte Version, sodass eine neuere Version dieses Modells blockiert bleibt, bis Sie sie auflisten. Erfordert Claude Code v2.1.283 oder später.

913 

914* **Geltungsbereich**: [`Verwaltet`](#scopes). Claude Code ignoriert den Schlüssel in Benutzer-, Projekt- und lokalen Einstellungen sowie in `--settings` mit einer Warnung

915* **Typ**: String, einer von:

916 * `"prefix"`: ein Modell-ID-Eintrag erlaubt seine Version und jede Modell-ID, die ihn um ein weiteres Segment erweitert

917 * `"exact"`: ein Modell-ID-Eintrag erlaubt nur die genannte Version, einschließlich der datierten IDs dieser Version, sodass `"claude-opus-5"` Opus 5 erlaubt, aber nicht `claude-opus-5-5`. Ein Familienalias wie `"opus"` erlaubt weiterhin die gesamte Familie, und Einträge `best`, `opusplan` und `default` werden ignoriert

918* **Standard**: `"prefix"`

919 

920Dieses Beispiel erlaubt Opus 5 und Sonnet 5, aber keine spätere Version eines der beiden:

921 

922```json managed-settings.json theme={null}

923{

924 "availableModels": ["claude-opus-5", "claude-sonnet-5"],

925 "availableModelsMatch": "exact"

926}

927```

928 

929Mit `"exact"` ist auch die Option Standard auf die aufgelisteten Modelle beschränkt, sobald die Liste mindestens ein Modell oder eine Familie nennt. Siehe [Bestimmte Modelle oder Versionen blockieren](/docs/de/model-config#block-specific-models-or-versions).

930 

931<h3 id="deniedmodels">

932 `deniedModels`

933</h3>

934 

935Blockieren Sie bestimmte Modelle, mit oder ohne [`availableModels`](#availablemodels)-Allowlist und selbst dann, wenn diese Liste sie erlaubt. Claude Code blendet ein blockiertes Modell in der Auswahl `/model` aus, und das Modell kann nirgends ausgewählt werden, wo `availableModels` durchgesetzt wird. Eine Sitzung mit der Option Standard führt ein blockiertes Modell ebenfalls nicht aus, wie unter [Bestimmte Modelle oder Versionen blockieren](/docs/de/model-config#block-specific-models-or-versions) beschrieben. Erfordert Claude Code v2.1.283 oder später.

936 

937* **Geltungsbereich**: [`Verwaltet`](#scopes). Claude Code ignoriert den Schlüssel in Benutzer-, Projekt- und lokalen Einstellungen sowie in `--settings` mit einer Warnung

938* **Typ**: Array von Modellaliasen oder IDs

939 * Ein Familienalias wie `"opus"` blockiert jedes Modell dieser Familie

940 * Eine Modell-ID wie `"claude-opus-5-5"` blockiert diese Version in jeder Schreibweise, einschließlich datierter und providerspezifischer IDs

941 * Eine Modell-ID ohne Nebenversion, wie `"claude-opus-5"`, blockiert auch spätere Nebenversionen wie Opus 5.5. Schreiben Sie `"claude-opus-5-0"`, um nur Opus 5 zu blockieren

942 * Einträge `best`, `opusplan` und `default` werden ignoriert

943* **Standard**: nicht gesetzt, daher ist kein Modell blockiert

944 

945Dieses Beispiel erlaubt Opus- und Sonnet-Modelle und blockiert Opus 5.5:

946 

947```json managed-settings.json theme={null}

948{

949 "availableModels": ["opus", "sonnet"],

950 "deniedModels": ["claude-opus-5-5"]

951}

952```

953 

954Siehe [Bestimmte Modelle oder Versionen blockieren](/docs/de/model-config#block-specific-models-or-versions).

896 955 

897<h3 id="effortlevel">956<h3 id="effortlevel">

898 `effortLevel`957 `effortLevel`

899</h3>958</h3>

900 959 

901Legen Sie eine Standard-[Aufwandsebene](/docs/de/model-config#adjust-effort-level) für Modelle fest, für die Sie noch keine Ebene gespeichert haben. Niedrigere Ebenen sind schneller und günstiger bei einfachen Aufgaben, höhere Ebenen denken tiefer über komplexe Probleme nach.960Legen Sie eine Standard-[Effort-Stufe](/docs/de/model-config#adjust-effort-level) für Modelle fest, für die Sie noch keine Stufe gespeichert haben. Niedrigere Stufen sind bei einfachen Aufgaben schneller und günstiger, höhere Stufen denken bei komplexen Problemen gründlicher nach.

902 961 

903Wenn Sie `/effort low`, `medium`, `high` oder `xhigh` in einer interaktiven Sitzung auf Ihrem Computer ausführen, speichert Claude Code die Ebene für das aktive Modell unter [`modelSettings`](#modelsettings) anstatt diesen Schlüssel zu schreiben. Vor v2.1.251 schrieb `/effort` diesen Schlüssel.962Wenn Sie `/effort low`, `medium`, `high` oder `xhigh` in einer interaktiven Sitzung auf Ihrem Computer ausführen, speichert Claude Code die Stufe für das aktive Modell unter [`modelSettings`](#modelsettings), anstatt diesen Schlüssel zu schreiben. Vor v2.1.251 schrieb `/effort` diesen Schlüssel.

904 963 

905Innerhalb derselben Einstellungsdatei verwendet Claude Code die gespeicherte Ebene eines Modells anstatt dieses Schlüssels. [`modelSettings`](#modelsettings) gibt die dateiübergreifende Priorität an.964Innerhalb derselben Einstellungsdatei verwendet Claude Code die gespeicherte Stufe eines Modells anstelle dieses Schlüssels. [`modelSettings`](#modelsettings) beschreibt die dateiübergreifende Rangfolge.

906 965 

907In einer Sitzung, die an einen Remote Worker angehängt ist, in einem `-p`-Lauf und im Agent SDK gilt `/effort` nur für diese Sitzung. [Aufwandsebene anpassen](/docs/de/model-config#adjust-effort-level) listet die interaktiven Auswahlmöglichkeiten auf, die auch nur für diese Sitzung gelten. Die Nachricht, die `/effort` ausgibt, sagt, was passiert ist.966In einer Sitzung, die an einen Remote Worker angehängt ist, in einem `-p`-Lauf und im Agent SDK gilt `/effort` nur für diese Sitzung. [Effort-Stufe anpassen](/docs/de/model-config#adjust-effort-level) listet die interaktiven Auswahlmöglichkeiten auf, die ebenfalls nur für diese Sitzung gelten. Die Meldung, die `/effort` ausgibt, sagt, was passiert ist.

908 967 

909* **Bereich**: [`Beliebige Datei`](#scopes)968* **Geltungsbereich**: [`Beliebige Datei`](#scopes)

910* **Typ**: String, einer von:969* **Typ**: String, einer von:

911 * `"low"`: das geringste Denken, für kurze, begrenzte, latenzempfindliche Aufgaben, die nicht intelligenzempfindlich sind970 * `"low"`: das geringste Reasoning, für kurze, klar umrissene, latenzempfindliche Aufgaben, die keine hohe Intelligenz erfordern

912 * `"medium"`: reduziert die Token-Nutzung für kostensensitive Arbeiten, die etwas Intelligenz opfern können971 * `"medium"`: reduziert die Token-Nutzung für kostensensitive Arbeiten, die etwas Intelligenz opfern können

913 * `"high"`: balanciert Token-Nutzung und Intelligenz972 * `"high"`: balanciert Token-Nutzung und Intelligenz

914 * `"xhigh"`: tieferes Denken bei höheren Token-Ausgaben973 * `"xhigh"`: tieferes Reasoning bei höherem Token-Verbrauch

915* **Standard**: nicht gesetzt974* **Standard**: nicht gesetzt

916* **Sitzungsübergreifende Außerkraftsetzungen**: `--effort` hat Vorrang vor diesem Schlüssel für eine Sitzung, und [`CLAUDE_CODE_EFFORT_LEVEL`](/docs/de/env-vars) hat Vorrang vor beiden975* **Überschreibungen pro Sitzung**: `--effort` hat für eine Sitzung Vorrang vor diesem Schlüssel, und [`CLAUDE_CODE_EFFORT_LEVEL`](/docs/de/env-vars) hat Vorrang vor beiden

917 976 

918```json settings.json theme={null}977```json settings.json theme={null}

919{978{


921}980}

922```981```

923 982 

924In Ihrer Benutzereinstellungsdatei `~/.claude/settings.json` ist dieser Schlüssel die ältere Form, die `/effort` vor dem Speichern von Ebenen pro Modell schrieb, und er wird weiterhin dort angewendet, wo er zuvor angewendet wurde, auf Opus 5, Fable 5.1 und früheren Modellen. Opus 5.5 und später veröffentlichte Modelle ignorieren ihn und beginnen mit ihrem eigenen Standard, bis Sie eine Ebene für sie speichern, die `/effort` unter [`modelSettings`](#modelsettings) schreibt. In Projekt-, Lokal- und verwalteten Einstellungen sowie mit `--settings` gilt dieser Schlüssel für jedes Modell.983In Ihrer Benutzereinstellungsdatei `~/.claude/settings.json` ist dieser Schlüssel die ältere Form, die `/effort` schrieb, bevor Stufen pro Modell gespeichert wurden, und er gilt weiterhin dort, wo er zuvor galt: für Opus 5, Fable 5.1 und frühere Modelle. Opus 5.5 und später veröffentlichte Modelle ignorieren ihn und beginnen mit ihrem eigenen Standard, bis Sie eine Stufe für sie speichern, die `/effort` unter [`modelSettings`](#modelsettings) schreibt. In Projekt-, lokalen und verwalteten Einstellungen sowie mit `--settings` gilt dieser Schlüssel für jedes Modell.

925 984 

926<h3 id="enforceavailablemodels">985<h3 id="enforceavailablemodels">

927 `enforceAvailableModels`986 `enforceAvailableModels`

928</h3>987</h3>

929 988 

930Die Auswahl `/model` hat eine Option **Standard**, die sich zu Ihrem [Organisations-Standardmodell](/docs/de/model-config#organization-default-model) auflöst, wenn eine gilt, und ansonsten zu Ihrem Kontotyp-Standard. Eine [`availableModels`](#availablemodels)-Zulassungsliste beschränkt die Modelle, die Sie benennen können, aber sie lässt **Standard** allein, daher kann **Standard** sich immer noch zu einem Modell außerhalb der Liste auflösen. Dieser Schlüssel schließt diese Lücke. Erfordert Claude Code v2.1.175 oder später.989Die Auswahl `/model` hat eine Option **Standard**, und unter [Einstellung des Modells `default`](/docs/de/model-config#default-model-setting) ist beschrieben, zu welchem Modell sie aufgelöst wird. Eine [`availableModels`](#availablemodels)-Allowlist beschränkt die Modelle, die Sie benennen können, aber mit dem standardmäßigen [Präfixabgleich](#availablemodelsmatch) ordnet sie den Standard Ihres Kontotyps nicht neu zu, sodass **Standard** immer noch zu einem Modell außerhalb der Liste aufgelöst werden kann. Dieser Schlüssel schließt diese Lücke. Erfordert Claude Code v2.1.175 oder später.

931 990 

932Wenn Ihre Organisation verwaltete Einstellungen bereitstellt, liest Claude Code diesen Schlüssel nur aus der verwalteten Quelle und ignoriert ihn in Ihren anderen Dateien.991Wenn Ihre Organisation verwaltete Einstellungen bereitstellt, liest Claude Code diesen Schlüssel nur aus der verwalteten Quelle und ignoriert ihn in Ihren anderen Dateien.

933 992 

934* **Bereich**: [`Beliebige Datei`](#scopes)993* **Geltungsbereich**: [`Beliebige Datei`](#scopes)

935* **Typ**: Boolean994* **Typ**: Boolean

936 * `true`: wenn sich **Standard** zu einem Modell außerhalb von `availableModels` auflösen würde, löst Claude Code es zum ersten verfügbaren Modell in der Liste auf995 * `true`: wenn **Standard** zu einem Modell außerhalb von `availableModels` aufgelöst würde, löst Claude Code es stattdessen zum ersten verfügbaren Modell in der Liste auf

937 * `false`: **Standard** löst sich wie gewohnt auf, auch zu einem Modell außerhalb von `availableModels`996 * `false`: dieser Schlüssel ändert nicht, wie **Standard** aufgelöst wird

938* **Standard**: `false`997* **Standard**: `false`

939 998 

940Dieses Beispiel beschränkt benannte Auswahlmöglichkeiten auf Sonnet- und Haiku-Modelle und lässt **Standard** sich zum ersten verfügbaren Modell auflösen:999Dieses Beispiel beschränkt benannte Auswahlmöglichkeiten auf Sonnet- und Haiku-Modelle und lässt **Standard** zum ersten verfügbaren dieser Modelle auflösen:

941 1000 

942```json settings.json theme={null}1001```json settings.json theme={null}

943{1002{


946}1005}

947```1006```

948 1007 

949Dieser Schlüssel hat keine Auswirkung, wenn `availableModels` nicht gesetzt oder leer ist. Siehe [Zulassungsliste für das Standardmodell durchsetzen](/docs/de/model-config#enforce-the-allowlist-for-the-default-model). Erfordert Claude Code v2.1.175 oder später.1008Dieser Schlüssel hat keine Auswirkung, wenn `availableModels` nicht gesetzt oder leer ist. Siehe [Allowlist für das Standardmodell durchsetzen](/docs/de/model-config#enforce-the-allowlist-for-the-default-model). Erfordert Claude Code v2.1.175 oder später.

950 1009 

951<h3 id="fallbackmodel">1010<h3 id="fallbackmodel">

952 `fallbackModel`1011 `fallbackModel`

953</h3>1012</h3>

954 1013 

955Benennen Sie Backup-Modelle, die Claude Code der Reihe nach versuchen soll, wenn Ihr primäres Modell überlastet oder nicht verfügbar ist. Claude Code wechselt zum nächsten verfügbaren Modell in der Kette für den Rest des Durchlaufs und zeigt eine Benachrichtigung an. Ohne eine Kette versucht Claude Code das gleiche Modell erneut und zeigt dann den Fehler des Servers an, und Sie versuchen es erneut oder wechseln Modelle selbst.1014Benennen Sie Backup-Modelle, die Claude Code der Reihe nach versuchen soll, wenn Ihr primäres Modell überlastet oder nicht verfügbar ist. Claude Code wechselt für den Rest des Turns zum nächsten verfügbaren Modell in der Kette und zeigt einen Hinweis an. Ohne eine Kette versucht Claude Code dasselbe Modell erneut und zeigt dann den Fehler des Servers an, und Sie versuchen es selbst erneut oder wechseln das Modell.

956 1015 

957Ein Wechsel bedeutet einen Durchlauf mit einem kalten [Prompt-Cache](/docs/de/prompt-caching#switching-models) auf dem Fallback-Modell; Ihre nächste Nachricht versucht zuerst das primäre Modell erneut.1016Ein Wechsel bedeutet einen Turn mit einem kalten [Prompt-Cache](/docs/de/prompt-caching#switching-models) auf dem Fallback-Modell; Ihre nächste Nachricht versucht zuerst wieder das primäre Modell.

958 1017 

959* **Bereich**: [`Beliebige Datei`](#scopes)1018* **Geltungsbereich**: [`Beliebige Datei`](#scopes)

960* **Typ**: Array von Modellaliasen oder IDs; `"default"` wird zum Standardmodell erweitert1019* **Typ**: Array von Modellaliasen oder IDs; `"default"` wird zum Standardmodell erweitert

961* **Standard**: nicht gesetzt, daher wird eine fehlgeschlagene Anfrage nicht auf einem anderen Modell erneut versucht1020* **Standard**: nicht gesetzt, daher wird eine fehlgeschlagene Anfrage nicht mit einem anderen Modell erneut versucht

962* **Sitzungsübergreifende Außerkraftsetzungen**: `--fallback-model` hat Vorrang vor diesem Schlüssel für eine Sitzung1021* **Überschreibungen pro Sitzung**: `--fallback-model` hat für eine Sitzung Vorrang vor diesem Schlüssel

963 1022 

964Dieses Beispiel versucht zuerst Sonnet 5, dann Haiku 4.5, wenn Ihr primäres Modell fehlschlägt:1023Dieses Beispiel versucht zuerst Sonnet 5, dann Haiku 4.5, wenn Ihr primäres Modell fehlschlägt:

965 1024 


969}1028}

970```1029```

971 1030 

972Im Gegensatz zu den meisten Array-Einstellungen wird dieser Schlüssel nicht über Einstellungsdateien hinweg zusammengeführt: die höchste Prioritätsdatei, die ihn definiert, liefert die ganze Kette. Wenn Ihre Projektdatei `["claude-sonnet-5"]` setzt und Ihre Benutzerdatei `["claude-haiku-4-5"]` setzt, ist die Kette nur `["claude-sonnet-5"]`. Claude Code behält höchstens drei unterschiedliche zulässige Modelle aus der Liste und ignoriert den Rest. Siehe [Fallback-Modellketten](/docs/de/model-config#fallback-model-chains).1031Im Gegensatz zu den meisten Array-Einstellungen wird dieser Schlüssel nicht über Einstellungsdateien hinweg zusammengeführt: Die Datei mit dem höchsten Vorrang, die ihn definiert, liefert die ganze Kette. Wenn Ihre Projektdatei `["claude-sonnet-5"]` setzt und Ihre Benutzerdatei `["claude-haiku-4-5"]` setzt, ist die Kette nur `["claude-sonnet-5"]`. Claude Code behält höchstens drei unterschiedliche zulässige Modelle aus der Liste und ignoriert den Rest. Siehe [Fallback-Modellketten](/docs/de/model-config#fallback-model-chains).

973 1032 

974<h3 id="fastmode">1033<h3 id="fastmode">

975 `fastMode`1034 `fastMode`

976</h3>1035</h3>

977 1036 

978Aktivieren Sie den [Schnellmodus](/docs/de/fast-mode) für Sitzungen, in denen er verfügbar ist, für interaktive Arbeiten wie schnelle Iteration oder Live-Debugging, bei denen Sie Geschwindigkeit zu höheren Kosten pro Token wünschen. Sie bearbeiten diesen Schlüssel normalerweise nicht manuell: Das Ausführen von `/fast` schreibt `fastMode: true` zu `~/.claude/settings.json`, und das erneute Ausführen zum Ausschalten des Schnellmodus entfernt den Schlüssel. Der Schnellmodus läuft nur auf Opus 5.5, Opus 5 und Opus 4.8: Das Aktivieren von einem anderen Modell wechselt Sie zu Opus, und das Wechseln zu einem nicht unterstützten Modell schaltet ihn aus. Siehe [Modelle wechseln, während der Schnellmodus aktiv ist](/docs/de/fast-mode#switch-models-while-fast-mode-is-on).1037Aktivieren Sie den [Fast-Modus](/docs/de/fast-mode) für Sitzungen, in denen er verfügbar ist, für interaktive Arbeiten wie schnelle Iteration oder Live-Debugging, bei denen Sie Geschwindigkeit zu höheren Kosten pro Token wünschen. Sie bearbeiten diesen Schlüssel normalerweise nicht manuell: Das Ausführen von `/fast` schreibt `fastMode: true` in `~/.claude/settings.json`, und das erneute Ausführen zum Ausschalten des Fast-Modus entfernt den Schlüssel. Der Fast-Modus läuft nur auf Opus 5.5, Opus 5 und Opus 4.8: Wenn Sie ihn von einem anderen Modell aus aktivieren, wechseln Sie zu Opus, und der Wechsel zu einem nicht unterstützten Modell schaltet ihn aus. Siehe [Modelle wechseln, während der Fast-Modus aktiv ist](/docs/de/fast-mode#switch-models-while-fast-mode-is-on).

979 1038 

980* **Bereich**: [`Beliebige Datei`](#scopes)1039* **Geltungsbereich**: [`Beliebige Datei`](#scopes)

981* **Typ**: Boolean1040* **Typ**: Boolean

982 * `true`: Claude Code aktiviert den Schnellmodus für Sitzungen, in denen er verfügbar ist1041 * `true`: Claude Code aktiviert den Fast-Modus für Sitzungen, in denen er verfügbar ist

983 * `false`: Der Schnellmodus bleibt ausgeschaltet1042 * `false`: Der Fast-Modus bleibt ausgeschaltet

984* **Standard**: nicht gesetzt, daher ist der Schnellmodus ausgeschaltet1043* **Standard**: nicht gesetzt, daher ist der Fast-Modus ausgeschaltet

985* **Sitzungsübergreifende Außerkraftsetzungen**: [`CLAUDE_CODE_DISABLE_FAST_MODE`](/docs/de/env-vars) schaltet den Schnellmodus für eine Sitzung aus, und dieser Schlüssel kann ihn nicht wieder einschalten1044* **Überschreibungen pro Sitzung**: [`CLAUDE_CODE_DISABLE_FAST_MODE`](/docs/de/env-vars) schaltet den Fast-Modus für eine Sitzung aus, und dieser Schlüssel kann ihn nicht wieder einschalten

986 1045 

987```json settings.json theme={null}1046```json settings.json theme={null}

988{1047{


994 `fastModePerSessionOptIn`1053 `fastModePerSessionOptIn`

995</h3>1054</h3>

996 1055 

997Normalerweise speichert das Ausführen von `/fast` [`fastMode`](#fastmode) in den Benutzereinstellungen einer Person, daher ist der Schnellmodus am Anfang jeder späteren Sitzung aktiviert. Setzen Sie diesen Schlüssel auf `true`, um das zu stoppen: ein gespeichertes `fastMode: true` aktiviert den Schnellmodus nicht mehr beim Sitzungsstart, und jede Person muss `/fast` in jeder Sitzung ausführen, in der sie es möchte. Claude Code lässt den Schlüssel `fastMode` in ihrer Datei, daher stellt das Ausschalten dieses Schlüssels das alte Verhalten wieder her.1056Normalerweise speichert das Ausführen von `/fast` [`fastMode`](#fastmode) in den Benutzereinstellungen einer Person, sodass der Fast-Modus zu Beginn jeder späteren Sitzung aktiviert ist. Setzen Sie diesen Schlüssel auf `true`, um das zu verhindern: Ein gespeichertes `fastMode: true` aktiviert den Fast-Modus nicht mehr beim Sitzungsstart, und jede Person muss `/fast` in jeder Sitzung ausführen, in der sie ihn möchte. Claude Code lässt den Schlüssel `fastMode` in ihrer Datei, daher stellt das Ausschalten dieses Schlüssels das alte Verhalten wieder her.

998 1057 

999Besitzer in Team- oder Enterprise-Plänen können es organisationsweit durch [serverseitig verwaltete Einstellungen](/docs/de/server-managed-settings) bereitstellen. Wenn verwaltete Einstellungen den Schlüssel setzen, wird `/fast on` außerhalb interaktiver Terminal-Sitzungen abgelehnt und meldet, dass Ihre Organisation den Schnellmodus deaktiviert hat. Das umfasst den [nicht-interaktiven Modus](/docs/de/headless), die [VS Code-Erweiterung](/docs/de/vs-code) und [Cloud-Sitzungen](/docs/de/claude-code-on-the-web).1058Owner in Team- oder Enterprise-Plänen können ihn organisationsweit über [serverseitig verwaltete Einstellungen](/docs/de/server-managed-settings) bereitstellen. Wenn verwaltete Einstellungen den Schlüssel setzen, wird `/fast on` außerhalb interaktiver Terminal-Sitzungen abgelehnt und meldet, dass Ihre Organisation den Fast-Modus deaktiviert hat. Das umfasst den [nicht interaktiven Modus](/docs/de/headless), die [VS Code-Erweiterung](/docs/de/vs-code) und [Cloud-Sitzungen](/docs/de/claude-code-on-the-web).

1000 1059 

1001* **Bereich**: [`Beliebige Datei`](#scopes)1060* **Geltungsbereich**: [`Beliebige Datei`](#scopes)

1002* **Typ**: Boolean1061* **Typ**: Boolean

1003 * `true`: ein gespeichertes `fastMode: true` aktiviert den Schnellmodus nicht mehr beim Sitzungsstart, daher führt jede Person `/fast` in jeder Sitzung aus, in der sie es möchte; ein `fastMode: true` mit `--settings` zählt immer noch für diese Sitzung, es sei denn, verwaltete Einstellungen setzen diesen Schlüssel1062 * `true`: ein gespeichertes `fastMode: true` aktiviert den Fast-Modus nicht mehr beim Sitzungsstart, daher führt jede Person `/fast` in jeder Sitzung aus, in der sie ihn möchte; ein mit `--settings` übergebenes `fastMode: true` zählt weiterhin für diese Sitzung, es sei denn, verwaltete Einstellungen setzen diesen Schlüssel

1004 * `false`: ein gespeichertes `fastMode: true` aktiviert den Schnellmodus am Anfang jeder späteren Sitzung1063 * `false`: ein gespeichertes `fastMode: true` aktiviert den Fast-Modus zu Beginn jeder späteren Sitzung

1005* **Standard**: `false`1064* **Standard**: `false`

1006 1065 

1007```json settings.json theme={null}1066```json settings.json theme={null}


1016 `language`1075 `language`

1017</h3>1076</h3>

1018 1077 

1019Lassen Sie Claude standardmäßig in einer anderen Sprache als Englisch antworten. Es gibt keine feste Liste für Antworten: Claude Code übergibt den Wert wörtlich an Claude als Anweisung, immer in dieser Sprache zu antworten, daher funktioniert jeder Sprachname, den Claude lesen kann. Claude Code überprüft den Wert nicht, daher erreicht ein falsch geschriebener Name Claude wie geschrieben, anstatt einen Fehler zu erzeugen. Der gleiche Wert setzt die Sprache für [Sprachdiktat](/docs/de/voice-dictation#change-the-dictation-language), das eine feste Liste von [unterstützten Diktiersprachen](/docs/de/voice-dictation#change-the-dictation-language) hat, und für automatisch generierte Sitzungstitel.1078Lassen Sie Claude standardmäßig in einer anderen Sprache als Englisch antworten. Es gibt keine feste Liste für Antworten: Claude Code übergibt den Wert wörtlich an Claude als Anweisung, immer in dieser Sprache zu antworten, daher funktioniert jeder Sprachname, den Claude lesen kann. Claude Code überprüft den Wert nicht, daher erreicht ein falsch geschriebener Name Claude so, wie er geschrieben ist, anstatt einen Fehler zu erzeugen. Derselbe Wert legt die Sprache für das [Sprachdiktat](/docs/de/voice-dictation#change-the-dictation-language) fest, das eine feste Liste von [unterstützten Diktiersprachen](/docs/de/voice-dictation#change-the-dictation-language) hat, sowie für automatisch generierte Sitzungstitel.

1020 1079 

1021* **Bereich**: [`Beliebige Datei`](#scopes)1080* **Geltungsbereich**: [`Beliebige Datei`](#scopes)

1022* **Typ**: String, jeder Sprachname, wie `"japanese"`, `"spanish"` oder `"french"`; Claude Code überprüft ihn nicht1081* **Typ**: String, jeder Sprachname, wie `"japanese"`, `"spanish"` oder `"french"`; Claude Code überprüft ihn nicht

1023* **Standard**: nicht gesetzt; Sitzungstitel entsprechen dann der Sprache Ihrer Konversation1082* **Standard**: nicht gesetzt; Sitzungstitel entsprechen dann der Sprache Ihrer Konversation

1024 1083 


1032 `maxEffortLevel`1091 `maxEffortLevel`

1033</h3>1092</h3>

1034 1093 

1035Begrenzen Sie die [Aufwandsebene](/docs/de/model-config#adjust-effort-level), die eine Sitzung verwenden kann, und lassen Sie niedrigere Ebenen verfügbar. Jede höhere Ebene läuft stattdessen bei der Obergrenze, einschließlich einer von `/effort`, der Auswahl `/model`, `--effort`, [`CLAUDE_CODE_EFFORT_LEVEL`](/docs/de/env-vars), der Frontmatter `effort` eines Skills oder Subagents oder dem eigenen Standard des Modells. Claude Code wendet die Obergrenze selbst vor jeder Anfrage an, daher gilt sie auf jedem Provider, einschließlich Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry. Erfordert Claude Code v2.1.267 oder später.1094Begrenzen Sie die [Effort-Stufe](/docs/de/model-config#adjust-effort-level), die eine Sitzung verwenden kann, wobei niedrigere Stufen verfügbar bleiben. Jede höhere Stufe läuft stattdessen mit der Obergrenze, einschließlich einer Stufe aus `/effort`, der Auswahl `/model`, `--effort`, [`CLAUDE_CODE_EFFORT_LEVEL`](/docs/de/env-vars), dem Frontmatter-Feld `effort` eines Skills oder Subagenten oder dem eigenen Standard des Modells. Claude Code wendet die Obergrenze vor jeder Anfrage selbst an, daher gilt sie bei jedem Provider, einschließlich Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry. Erfordert Claude Code v2.1.267 oder später.

1036 1095 

1037* **Bereich**: [`Beliebige Datei`](#scopes). Stellen Sie es in verwalteten Einstellungen bereit, um es für eine Organisation durchzusetzen. Wenn mehrere Bereiche eine Obergrenze setzen, gilt die niedrigste, daher kann eine in einem Bereich gesetzte Obergrenze nicht von einem anderen erhöht werden1096* **Geltungsbereich**: [`Beliebige Datei`](#scopes). Stellen Sie ihn in verwalteten Einstellungen bereit, um ihn für eine Organisation durchzusetzen. Wenn mehrere Geltungsbereiche eine Obergrenze setzen, gilt die niedrigste, daher kann eine in einem Geltungsbereich gesetzte Obergrenze nicht von einem anderen angehoben werden

1038* **Typ**: String, einer von `"low"`, `"medium"`, `"high"`, `"xhigh"` oder `"max"`. Ein Wert `"max"` setzt keine Obergrenze1097* **Typ**: String, einer von `"low"`, `"medium"`, `"high"`, `"xhigh"` oder `"max"`. Ein Wert `"max"` setzt keine Obergrenze

1039* **Standard**: nicht gesetzt, daher gilt keine Obergrenze1098* **Standard**: nicht gesetzt, daher gilt keine Obergrenze

1040* **Auswirkung auf Ultracode**: eine Obergrenze unter `xhigh` macht [Ultracode](#ultracode) auf den Modellen, auf die die Obergrenze zutrifft, nicht verfügbar1099* **Obergrenzen pro Modell**: Fügen Sie `maxEffortLevel` zum [`modelSettings`](#modelsettings)-Eintrag eines Modells hinzu. Dieser Eintrag ersetzt diesen Schlüssel für das Modell nur innerhalb der Einstellungsquelle, die beide setzt, wie Ihre Benutzereinstellungen oder eine [verwaltete Quelle](/docs/de/managed-settings#how-claude-code-combines-managed-sources). Setzen Sie dort `"max"`, um das Modell von der Obergrenze dieser Quelle auszunehmen; Claude Code wendet weiterhin Obergrenzen aus anderen Quellen an

1041* **Pro-Modell-Obergrenzen**: fügen Sie `maxEffortLevel` zum Eintrag [`modelSettings`](#modelsettings) eines Modells hinzu. Dieser Eintrag ersetzt diesen Schlüssel nur für das Modell innerhalb der Einstellungsquelle, die beide setzt, wie Ihre Benutzereinstellungen oder eine [verwaltete Quelle](/docs/de/managed-settings#how-claude-code-combines-managed-sources). Setzen Sie dort `"max"`, um das Modell von der Obergrenze dieser Quelle auszunehmen; Claude Code wendet immer noch Obergrenzen von anderen Quellen an

1042 1100 

1043Dieses Beispiel begrenzt jedes Modell auf `medium` und befreit Sonnet 4.6:1101Dieses Beispiel begrenzt jedes Modell auf `medium` und nimmt Sonnet 4.6 aus:

1044 1102 

1045```json settings.json theme={null}1103```json settings.json theme={null}

1046{1104{


1053}1111}

1054```1112```

1055 1113 

1056Wenn Ihre Organisation auch ein [Aufwandslimit](/docs/de/model-config#organization-effort-limits) für ein Modell setzt, gilt die niedrigere der beiden Obergrenzen.1114Wenn Ihre Organisation zusätzlich ein [Effort-Limit](/docs/de/model-config#organization-effort-limits) für ein Modell setzt, gilt die niedrigere der beiden Obergrenzen.

1057 1115 

1058<h3 id="model">1116<h3 id="model">

1059 `model`1117 `model`

1060</h3>1118</h3>

1061 1119 

1062Legen Sie das Modell fest, das jede neue Sitzung verwendet, damit Sie nicht jedes Mal mit `/model` eines auswählen müssen. Das Setzen hier hindert Sie nicht daran, die Sitzung zu wechseln. Wenn Ihr Administrator ein [Organisations-Standardmodell](/docs/de/model-config#organization-default-model) gesetzt hat, um die Benutzerauswahl zu überschreiben, erhalten Sie dieses Modell auch wenn Sie diesen Schlüssel in Benutzer-, Projekt- oder Lokaleinstellungen setzen.1120Legen Sie das Modell fest, das jede neue Sitzung verwendet, damit Sie nicht jedes Mal mit `/model` eines auswählen müssen. Das Festlegen hier hindert Sie nicht daran, während der Sitzung zu wechseln. Wenn Ihr Admin ein [Organisations-Standardmodell](/docs/de/model-config#organization-default-model) gesetzt hat, um die Benutzerauswahl zu überschreiben, erhalten Sie dieses Modell, auch wenn Sie diesen Schlüssel in Benutzer-, Projekt- oder lokalen Einstellungen setzen.

1063 1121 

1064* **Bereich**: [`Beliebige Datei`](#scopes)1122* **Geltungsbereich**: [`Beliebige Datei`](#scopes)

1065* **Typ**: String, ein Modellalias oder eine vollständige Modell-ID1123* **Typ**: String, ein Modellalias oder eine vollständige Modell-ID

1066* **Standard**: nicht gesetzt, daher verwendet Claude Code das Standardmodell Ihres Kontos1124* **Standard**: nicht gesetzt, daher verwendet Claude Code das Standardmodell Ihres Kontos

1067* **Sitzungsübergreifende Außerkraftsetzungen**: `--model` hat Vorrang vor [`ANTHROPIC_MODEL`](/docs/de/env-vars), und beide haben Vorrang vor diesem Schlüssel für eine Sitzung, einschließlich vor einem verwalteten `model`; eine [`availableModels`](#availablemodels)-Liste gilt immer noch für die Auswahl1125* **Überschreibungen pro Sitzung**: `--model` hat Vorrang vor [`ANTHROPIC_MODEL`](/docs/de/env-vars), und beide haben für eine Sitzung Vorrang vor diesem Schlüssel, auch vor einem verwalteten `model`; eine [`availableModels`](#availablemodels)-Liste gilt weiterhin für die Auswahl

1068 1126 

1069```json settings.json theme={null}1127```json settings.json theme={null}

1070{1128{


1072}1130}

1073```1131```

1074 1132 

1075Ein Wert hier übertrumpft [`ANTHROPIC_DEFAULT_MODEL`](/docs/de/model-config#set-a-default-model-for-new-sessions), das Claude Code nur verwendet, wenn nichts anderes ein Modell auswählt.1133Ein Wert hier hat Vorrang vor [`ANTHROPIC_DEFAULT_MODEL`](/docs/de/model-config#set-a-default-model-for-new-sessions), das Claude Code nur verwendet, wenn nichts anderes ein Modell auswählt.

1076 1134 

1077<h3 id="modeloverrides">1135<h3 id="modeloverrides">

1078 `modelOverrides`1136 `modelOverrides`

1079</h3>1137</h3>

1080 1138 

1081Ordnen Sie Anthropic-Modell-IDs Anbieter-spezifischen Modell-IDs zu, wie Amazon Bedrock Inferenz-Profil-ARNs. Jeder Modellauswahl-Eintrag verwendet dann seinen zugeordneten Wert beim Aufrufen der Provider-API. Administratoren verwenden dies auf [Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry](/docs/de/model-config#override-model-ids-per-version), um jede Modellversion zu einem bestimmten Inferenz-Profil, Versionsnamen oder einer Bereitstellung für Governance, Kostenzuteilung oder regionales Routing zu leiten.1139Ordnen Sie Anthropic-Modell-IDs providerspezifischen Modell-IDs zu, wie ARNs von Amazon Bedrock-Inferenzprofilen. Jeder Eintrag der Modellauswahl verwendet dann seinen zugeordneten Wert beim Aufruf der Provider-API. Administratoren verwenden dies auf [Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry](/docs/de/model-config#override-model-ids-per-version), um jede Modellversion für Governance, Kostenzuordnung oder regionales Routing an ein bestimmtes Inferenzprofil, einen Versionsnamen oder eine Bereitstellung zu leiten.

1082 1140 

1083* **Bereich**: [`Beliebige Datei`](#scopes)1141* **Geltungsbereich**: [`Beliebige Datei`](#scopes)

1084* **Typ**: Objekt, das Modell-ID zu Anbieter-Modell-ID zuordnet1142* **Typ**: Objekt, das Modell-IDs Provider-Modell-IDs zuordnet

1085* **Standard**: nicht gesetzt1143* **Standard**: nicht gesetzt

1086 1144 

1087Dieses Beispiel leitet jeden Aufruf für Opus 4.6 zum benannten Bedrock-Inferenz-Profil:1145Dieses Beispiel leitet jeden Aufruf für Opus 4.6 an das benannte Bedrock-Inferenzprofil:

1088 1146 

1089```json settings.json theme={null}1147```json settings.json theme={null}

1090{1148{


1100 `modelPicker`1158 `modelPicker`

1101</h3>1159</h3>

1102 1160 

1103Listen Sie die Modelle auf, die die Auswahl `/model` anbietet, in der Reihenfolge, in der Sie sie schreiben, und unter Bezeichnungen, die Sie wählen, damit die Auswahl die Modelle auflistet, die Ihre Organisation ausführt, nach der integrierten Auswahl oder stattdessen. Das `model` jeder Zeile wird wörtlich genommen, daher akzeptiert es alles, was `--model` akzeptiert: ein Alias wie `opus`, eine Anthropic-Modell-ID oder eine Anbieter-Format-ID für Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder ein LLM-Gateway. Erfordert Claude Code v2.1.242 oder später.1161Listen Sie die Modelle auf, die die Auswahl `/model` anbietet, in der Reihenfolge, in der Sie sie schreiben, und unter Bezeichnungen, die Sie wählen, sodass die Auswahl die Modelle aufführt, die Ihre Organisation verwendet, nach der integrierten Auswahl oder an ihrer Stelle. Das `model` jeder Zeile wird wörtlich übernommen, daher akzeptiert es alles, was `--model` akzeptiert: einen Alias wie `opus`, eine Anthropic-Modell-ID oder eine ID im Provider-Format für Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder ein LLM-Gateway. Erfordert Claude Code v2.1.242 oder später.

1104 1162 

1105* **Bereich**: [`Benutzer oder verwaltet`](#scopes). Claude Code liest den Schlüssel aus verwalteten Einstellungen, `--settings` und Benutzereinstellungen und ignoriert ihn in Projekt- und Lokaleinstellungen, daher kann ein Repository, das Sie klonen, die Auswahl nicht umbenennen. Die höchste dieser drei, die den Schlüssel setzt, liefert die ganze Auswahl, und Claude Code kombiniert Auswahlmöglichkeiten von zwei Quellen nie.1163* **Geltungsbereich**: [`Benutzer oder verwaltet`](#scopes). Claude Code liest den Schlüssel aus verwalteten Einstellungen, `--settings` und Benutzereinstellungen und ignoriert ihn in Projekt- und lokalen Einstellungen, damit ein Repository, das Sie klonen, die Auswahl nicht umbenennen kann. Die höchste dieser drei Quellen, die den Schlüssel setzt, liefert die gesamte Auswahl, und Claude Code kombiniert nie Auswahllisten aus zwei Quellen.

1106* **Typ**: Objekt mit einem Array `options` von Zeilen und einem optionalen Boolean `replaceBuiltInOptions`1164* **Typ**: Objekt mit einem Array `options` von Zeilen und einem optionalen Boolean `replaceBuiltInOptions`

1107* **Standard**: nicht gesetzt, daher zeigt die Auswahl die integrierte Auswahl1165* **Standard**: nicht gesetzt, daher zeigt die Auswahl die integrierte Auswahl

1108 1166 

1109Dieses Beispiel fügt zwei Bedrock-Bereitstellungen nach der integrierten Auswahl hinzu, unter Namen, die Ihr Team erkennt:1167Dieses Beispiel fügt nach der integrierten Auswahl zwei Bedrock-Bereitstellungen unter Namen hinzu, die Ihr Team kennt:

1110 1168 

1111```json managed-settings.json theme={null}1169```json managed-settings.json theme={null}

1112{1170{


1131 Felder für `modelPicker`1189 Felder für `modelPicker`

1132</h4>1190</h4>

1133 1191 

1134Der Schlüssel nimmt zwei Felder, eines für die Zeilen selbst und eines dafür, ob sie die integrierte Auswahl ersetzen oder zu ihr hinzufügen.1192Der Schlüssel hat zwei Felder: eines für die Zeilen selbst und eines dafür, ob sie die integrierte Auswahl ersetzen oder ergänzen.

1135 1193 

1136| Feld | Typ | Was es tut |1194| Feld | Typ | Funktion |

1137| :- | :- | :- |1195| :- | :- | :- |

1138| `options` | Array von Zeilen, jede mit einem erforderlichen `model` und optionalen `label`, `description` und `behavesAs` | Die Zeilen, die die Auswahl zeigt, in dieser Reihenfolge, außer dass eine ausgegraut Zeile nach unten verschoben wird. Ohne `label` betitelt Claude Code die Zeile mit dem integrierten Namen für ein Modell, das es kennt, oder der Modell-ID ansonsten, und ohne `description` schreibt es eine generische zweite Zeile |1196| `options` | Array von Zeilen, jede mit einem erforderlichen `model` und optionalen `label`, `description` und `behavesAs` | Die Zeilen, die die Auswahl anzeigt, in dieser Reihenfolge, außer dass eine ausgegraute Zeile nach unten verschoben wird. Ohne `label` betitelt Claude Code die Zeile mit dem integrierten Namen für ein Modell, das es kennt, andernfalls mit der Modell-ID, und ohne `description` schreibt es eine generische zweite Zeile |

1139| `replaceBuiltInOptions` | Boolean, Standard `false` | Setzen Sie es auf `true`, um nur diese Zeilen, **Standard** und eine Zeile für das Modell anzuzeigen, das die Sitzung bereits verwendet. Lassen Sie es ungesetzt, um diese Zeilen nach der integrierten Auswahl hinzuzufügen |1197| `replaceBuiltInOptions` | Boolean, Standard `false` | Setzen Sie es auf `true`, um nur diese Zeilen, **Standard** und eine Zeile für das Modell anzuzeigen, das die Sitzung bereits verwendet. Lassen Sie es ungesetzt, um diese Zeilen nach der integrierten Auswahl hinzuzufügen |

1140 1198 

1141Ein Eintrag in `options` kann auch ein optionales `behavesAs`-String neben seinem `model` tragen, das v2.1.257 oder später erfordert. Setzen Sie es auf die ID eines Modells, das Ihre Claude Code-Version bereits kennt, wie `claude-opus-4-8`, auf einem Eintrag, dessen `model` neuer ist als Ihre Version. Claude Code wendet dann die Fähigkeiten und Aufwands-Standards dieses bekannten Modells auf den Eintrag an, anstatt sein Modell als unbekannt zu behandeln. Die Bezeichnung des Eintrags und die Modell-ID, die Claude Code in Anfragen sendet, ändern sich nicht.1199Ein Eintrag in `options` kann neben seinem `model` auch einen optionalen String `behavesAs` enthalten, was v2.1.257 oder später erfordert. Setzen Sie ihn auf die ID eines Modells, das Ihre Claude Code-Version bereits kennt, wie `claude-opus-4-8`, bei einem Eintrag, dessen `model` neuer als Ihre Version ist. Claude Code wendet dann die Fähigkeiten und Effort-Standards dieses bekannten Modells auf den Eintrag an, anstatt sein Modell als unbekannt zu behandeln. Die Bezeichnung des Eintrags und die Modell-ID, die Claude Code in Anfragen sendet, ändern sich nicht.

1142 1200 

1143Mit `replaceBuiltInOptions` an, versteckt Claude Code jede andere Zeile: die integrierte Auswahl, die Zeilen, die es für [`availableModels`](#availablemodels)-Einträge hinzufügt, die Modelle, die [Gateway-Erkennung](/docs/de/llm-gateway-protocol#model-discovery) gefunden hat, und [`ANTHROPIC_CUSTOM_MODEL_OPTION`](/docs/de/model-config#add-a-custom-model-option). Mit ihr aus, überspringt Claude Code ein aufgelistetes Modell, das die integrierte Auswahl bereits abdeckt. Ein Label ändert, was die Auswahl zeigt, nicht welches Modell Claude Code ausführt.1201Wenn `replaceBuiltInOptions` aktiviert ist, blendet Claude Code alle anderen Zeilen aus: die integrierte Auswahl, die Zeilen, die es für [`availableModels`](#availablemodels)-Einträge hinzufügt, die Modelle, die die [Gateway-Erkennung](/docs/de/llm-gateway-protocol#model-discovery) gefunden hat, und [`ANTHROPIC_CUSTOM_MODEL_OPTION`](/docs/de/model-config#add-a-custom-model-option). Wenn es deaktiviert ist, überspringt Claude Code ein aufgelistetes Modell, das die integrierte Auswahl bereits abdeckt. Eine Bezeichnung ändert, was die Auswahl anzeigt, nicht welches Modell Claude Code ausführt.

1144 1202 

1145Eine [`availableModels`](#availablemodels)-Zulassungsliste gilt immer noch für diese Zeilen. Bevor Sie ein aufgelistetes Modell zur Zulassungsliste hinzufügen, lesen Sie [Zusammenführungsverhalten](/docs/de/model-config#merge-behavior): eine spezifische Modell-ID verengt den Wildcard-Eintrag ihrer Familie. Claude Code überprüft auch jede Zeile gegen die Sitzung, bevor es die Auswahl zeigt:1203Eine [`availableModels`](#availablemodels)-Allowlist gilt weiterhin für diese Zeilen. Bevor Sie ein aufgelistetes Modell zur Allowlist hinzufügen, lesen Sie [Zusammenführungsverhalten](/docs/de/model-config#merge-behavior): Eine spezifische Modell-ID schränkt den Wildcard-Eintrag ihrer Familie ein. Claude Code prüft außerdem jede Zeile gegen die Sitzung, bevor es die Auswahl anzeigt:

1146 1204 

1147* **Gelöscht**: eine Zeile, die Claude Code nicht bedienen kann, wie ein veraltetes Modell oder ein Modell, auf das Ihre Organisation keinen Zugriff hat1205* **Entfernt**: eine Zeile, die Claude Code nicht bedienen kann, wie ein eingestelltes Modell oder ein Modell, auf das Ihre Organisation keinen Zugriff hat

1148* **Ausgegraut**: eine Zeile, die Sie noch nicht auswählen können, mit dem Grund angezeigt1206* **Ausgegraut**: eine Zeile, die Sie noch nicht auswählen können, mit Angabe des Grundes

1149* **Keine Zeile überlebt**: Claude Code behält die integrierte Auswahl, gefiltert durch die Zulassungsliste wie gewohnt1207* **Keine Zeile bleibt übrig**: Claude Code behält die integrierte Auswahl, wie üblich durch die Allowlist gefiltert

1150 1208 

1151Claude Code löscht eine Zeile, die es nicht analysieren kann, und behält den Rest. Siehe [Fehlerhafte Einstellungsdatei beheben](/docs/de/settings#fix-a-broken-settings-file).1209Claude Code entfernt eine Zeile, die es nicht parsen kann, und behält den Rest. Siehe [Fehlerhafte Einstellungsdatei beheben](/docs/de/settings#fix-a-broken-settings-file).

1152 1210 

1153<h3 id="modelpricing">1211<h3 id="modelpricing">

1154 `modelPricing`1212 `modelPricing`

1155</h3>1213</h3>

1156 1214 

1157Melden Sie Ausgaben zu den Sätzen, die Ihre Organisation zahlt, anstatt zum Listenpreis. Setzen Sie es, wenn Ihre Organisation verhandelte Sätze hat, daher entsprechen die Dollar-Zahlen, die Entwickler sehen, Ihrer Rechnung. Claude Code wendet die Sätze in `/usage`, der [Statuszeile](/docs/de/statusline), dem `total_cost_usd` des Agent SDK, dem Limit [`--max-budget-usd`](/docs/de/cli-reference) und der [OpenTelemetry](/docs/de/monitoring-usage)-Kostenmetrik und Ereignissen an. Sie liefern die Sätze: Claude Code liest sie nicht aus Ihrem Vertrag oder der Claude Console. Erfordert Claude Code v2.1.242 oder später.1215Melden Sie Ausgaben zu den Preisen, die Ihre Organisation zahlt, anstatt zum Listenpreis. Setzen Sie den Schlüssel, wenn Ihre Organisation vertraglich vereinbarte Preise hat, damit die Dollarbeträge, die Entwickler sehen, Ihrer Rechnung entsprechen. Claude Code wendet die Preise in `/usage`, der [Statuszeile](/docs/de/statusline), dem `total_cost_usd` des Agent SDK, dem Limit [`--max-budget-usd`](/docs/de/cli-reference) sowie der Kostenmetrik und den Ereignissen von [OpenTelemetry](/docs/de/monitoring-usage) an. Sie liefern die Preise: Claude Code liest sie nicht aus Ihrem Vertrag oder der Claude Console. Erfordert Claude Code v2.1.242 oder später.

1158 1216 

1159* **Bereich**: [`Verwaltet`](#scopes). Stellen Sie den Schlüssel durch serverseitig verwaltete Einstellungen, eine MDM-Richtlinie, eine Datei `managed-settings.json` oder einen [Richtlinien-Helfer](/docs/de/managed-settings#compute-the-policy-with-a-helper-program) bereit. Claude Code ignoriert ihn in Benutzer-, Projekt- und Lokaleinstellungen, in `--settings` und unter Windows in der beschreibbaren [HKCU-Registrierung](/docs/de/managed-settings#where-each-mechanism-stores-the-policy). Mit serverseitig verwalteten Einstellungen meldet jede Sitzung Kosten zum Listenpreis, bis die [Einstellungsabruf](/docs/de/server-managed-settings#fetch-and-caching-behavior) dieser Sitzung die Einstellung bestätigt hat. Eine Host-Anwendung, die Claude Code einbettet und [`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](/docs/de/env-vars) setzt, kann eine Tabelle ihrer eigenen durch die SDK-Option [`managedSettings`](/docs/de/agent-sdk/typescript#options) liefern, die Claude Code nur verwendet, wenn keine verwaltete Quelle den Schlüssel setzt und nur in Claude Code v2.1.246 oder später.1217* **Geltungsbereich**: [`Verwaltet`](#scopes). Stellen Sie den Schlüssel über serverseitig verwaltete Einstellungen, eine MDM-Richtlinie, eine Datei `managed-settings.json` oder ein [Richtlinien-Hilfsprogramm](/docs/de/managed-settings#compute-the-policy-with-a-helper-program) bereit. Claude Code ignoriert ihn in Benutzer-, Projekt- und lokalen Einstellungen, in `--settings` und unter Windows in der vom Benutzer beschreibbaren [HKCU-Registrierung](/docs/de/managed-settings#where-each-mechanism-stores-the-policy). Mit serverseitig verwalteten Einstellungen meldet jede Sitzung Kosten zum Listenpreis, bis der [Einstellungsabruf](/docs/de/server-managed-settings#fetch-and-caching-behavior) dieser Sitzung die Einstellung bestätigt hat. Eine Host-Anwendung, die Claude Code einbettet und [`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](/docs/de/env-vars) setzt, kann über die SDK-Option [`managedSettings`](/docs/de/agent-sdk/typescript#options) eine eigene Tabelle liefern, die Claude Code nur verwendet, wenn keine verwaltete Quelle den Schlüssel setzt, und nur in Claude Code v2.1.246 oder später.

1160* **Typ**: Objekt mit einem optionalen `multiplier` und einer optionalen Karte `overrides`1218* **Typ**: Objekt mit einem optionalen `multiplier` und einer optionalen Zuordnung `overrides`

1161* **Standard**: nicht gesetzt, daher meldet Claude Code Listenpreis, es sei denn, eine Host-Anwendung liefert eine Tabelle1219* **Standard**: nicht gesetzt, daher meldet Claude Code den Listenpreis, es sei denn, eine Host-Anwendung liefert eine Tabelle

1162 1220 

1163Setzen Sie `multiplier` allein für einen pauschalen Rabatt oder Aufschlag, `overrides` allein für Pro-Modell-Sätze oder beide.1221Setzen Sie nur `multiplier` für einen pauschalen Rabatt oder Aufschlag, nur `overrides` für Preise pro Modell oder beides.

1164 1222 

1165Dieses Beispiel setzt verhandelte Sätze für Sonnet 4.6 und reduziert dann jede Zahl, die Sonnet-Zeile eingeschlossen, um 15%:1223Dieses Beispiel setzt vertraglich vereinbarte Preise für Sonnet 4.6 und reduziert dann jeden Betrag, einschließlich der Sonnet-Zeile, um 15 %:

1166 1224 

1167```json managed-settings.json theme={null}1225```json managed-settings.json theme={null}

1168{1226{


1180}1238}

1181```1239```

1182 1240 

1183Setzen Sie `multiplier` über 1, bis zu 10, um jede Zahl zu markieren. Ein Aufschlag erfordert Claude Code v2.1.271 oder später. Frühere Versionen ignorieren einen `multiplier` über 1 mit einer Warnung und behalten den Rest der Einstellung.1241Setzen Sie `multiplier` auf einen Wert über 1, bis maximal 10, um jeden Betrag mit einem Aufschlag zu versehen. Ein Aufschlag erfordert Claude Code v2.1.271 oder später. Frühere Versionen ignorieren einen `multiplier` über 1 mit einer Warnung und behalten den Rest der Einstellung.

1184 1242 

1185Für die Schritte, einschließlich wie Sie bestätigen, dass die Sätze in Kraft sind, siehe [Ausgaben zu Ihren verhandelten Sätzen melden](/docs/de/costs#report-spend-at-your-contracted-rates).1243Die Schritte, einschließlich der Bestätigung, dass die Preise wirksam sind, finden Sie unter [Ausgaben zu Ihren vertraglich vereinbarten Preisen melden](/docs/de/costs#report-spend-at-your-contracted-rates).

1186 1244 

1187<span id="modelpricing-multiplier" />1245<span id="modelpricing-multiplier" />

1188 1246 


1192 Felder für `modelPricing`1250 Felder für `modelPricing`

1193</h4>1251</h4>

1194 1252 

1195| Feld | Typ | Was es tut |1253| Feld | Typ | Funktion |

1196| :- | :- | :- |1254| :- | :- | :- |

1197| `multiplier` | Zahl größer als 0 und höchstens 10 | Skaliert jede Kosten, die Claude Code berechnet, ob oder ob nicht eine `overrides`-Zeile sie abdeckt. Unter 1 ist ein Rabatt, über 1 ein Aufschlag |1255| `multiplier` | Zahl größer als 0 und höchstens 10 | Skaliert alle Kosten, die Claude Code berechnet, unabhängig davon, ob eine `overrides`-Zeile sie abdeckt. Unter 1 ist ein Rabatt, über 1 ein Aufschlag |

1198| `overrides` | Karte von Modell-ID zu einem Rateobjekt mit `input`, `output`, `cacheRead` und `cacheWrite`, jeweils 0 bis 10000 | Die USD-pro-Million-Token-Sätze für dieses Modell, alle vier erforderlich. `cacheWrite` deckt sowohl Fünf-Minuten- als auch Einstunden-Cache-Schreibvorgänge ab. Siehe [Welche Modelle eine `modelPricing`-Zeile anwendet](#which-models-a-modelpricing-row-applies-to) |1256| `overrides` | Zuordnung von Modell-ID zu einem Preisobjekt mit `input`, `output`, `cacheRead` und `cacheWrite`, jeweils 0 bis 10000 | Die Preise in USD pro Million Token für dieses Modell, alle vier erforderlich. `cacheWrite` deckt sowohl Cache-Schreibvorgänge mit fünf Minuten als auch mit einer Stunde ab. Siehe [Für welche Modelle eine Zeile gilt](#which-models-a-modelpricing-row-applies-to) |

1199 1257 

1200Claude Code verwendet die Sätze einer Zeile genau wie Sie sie schrieben, ohne den Schnellmodus-Aufschlag oder den [nur-US-Inferenz-Satz](https://platform.claude.com/docs/en/about-claude/pricing) hinzuzufügen. Wenn Sie auch `multiplier` setzen, wendet Claude Code ihn auf die Sätze der Zeile an. Claude Code löscht eine Zeile mit einem Satz, den es nicht analysieren kann, oder einen `multiplier`, den es nicht analysieren kann, und behält den Rest; siehe [Fehlerhafte Einstellungsdatei beheben](/docs/de/settings#fix-a-broken-settings-file).1258Claude Code verwendet die Preise einer Zeile genau so, wie Sie sie geschrieben haben, ohne den Fast-Modus-Aufschlag oder den [Preis für reine US-Inferenz](https://platform.claude.com/docs/en/about-claude/pricing) hinzuzufügen. Wenn Sie auch `multiplier` setzen, wendet Claude Code ihn zusätzlich auf die Preise der Zeile an. Claude Code entfernt eine Zeile mit einem Preis, den es nicht parsen kann, oder einen `multiplier`, den es nicht parsen kann, und behält den Rest; siehe [Fehlerhafte Einstellungsdatei beheben](/docs/de/settings#fix-a-broken-settings-file).

1201 1259 

1202<h4 id="which-models-a-modelpricing-row-applies-to">1260<h4 id="which-models-a-modelpricing-row-applies-to">

1203 Welche Modelle eine `modelPricing`-Zeile anwendet1261 Für welche Modelle eine `modelPricing`-Zeile gilt

1204</h4>1262</h4>

1205 1263 

1206Claude Code entscheidet, welche Modelle eine Zeile anwendet, vom Schlüssel der Zeile:1264Claude Code bestimmt anhand des Schlüssels der Zeile, für welche Modelle eine Zeile gilt:

1207 1265 

1208* **Die ID eines integrierten Modells**: ein Schlüssel, den Claude Code selbst für ein integriertes Modell verwendet, ob dieser Schlüssel die eigene ID des Modells ist, wie `claude-sonnet-4-6`, oder seine Bedrock-, Agent Platform- oder Foundry-ID. Claude Code wendet die Zeile auf jede datierte Snapshot-ID und Anbieter-spezifische ID dieses Modells an.1266* **Die ID eines integrierten Modells**: ein Schlüssel, den Claude Code selbst für ein integriertes Modell verwendet, sei es die eigene ID des Modells, wie `claude-sonnet-4-6`, oder seine Bedrock-, Agent Platform- oder Foundry-ID. Claude Code wendet die Zeile auf jede datierte Snapshot-ID und jede providerspezifische ID dieses Modells an.

1209* **Jeder andere Schlüssel**: ein Schlüssel, der nicht die ID eines integrierten Modells ist, wie ein Gateway-Modellalias. Claude Code wendet die Zeile auf diese eine ID nur an. Wenn eine Modell-ID genau einem Ihrer Schlüssel entspricht und auch unter eine Zeile fällt, die von einer integrierten Modell-ID gekennzeichnet ist, verwendet Claude Code die genaue Übereinstimmung.1267* **Jeder andere Schlüssel**: ein Schlüssel, der nicht die ID eines integrierten Modells ist, wie ein Gateway-Modellalias. Claude Code wendet die Zeile nur auf genau diese ID an. Wenn eine Modell-ID genau mit einem Ihrer Schlüssel übereinstimmt und zugleich unter eine Zeile fällt, deren Schlüssel die ID eines integrierten Modells ist, verwendet Claude Code die genaue Übereinstimmung.

1210* **Ein Bedrock-Anwendungs-Inferenz-Profil**: sobald Claude Code das Profil zum Modell aufgelöst hat, zu dem es leitet, durch Ihre Karte [`modelOverrides`](#modeloverrides) oder die Suche [`bedrock:GetInferenceProfile`](/docs/de/amazon-bedrock#iam-configuration), wendet Claude Code die Zeile dieses Modells auf das Profil an.1268* **Ein Bedrock-Anwendungsinferenzprofil**: Sobald Claude Code das Profil über Ihre Zuordnung [`modelOverrides`](#modeloverrides) oder die [Abfrage `bedrock:GetInferenceProfile`](/docs/de/amazon-bedrock#iam-configuration) zu dem Modell aufgelöst hat, an das es weiterleitet, wendet Claude Code die Zeile dieses Modells auf das Profil an.

1211 1269 

1212<h3 id="modelsettings">1270<h3 id="modelsettings">

1213 `modelSettings`1271 `modelSettings`

1214</h3>1272</h3>

1215 1273 

1216Speichern Sie eine [Aufwandsebene](/docs/de/model-config#adjust-effort-level) für jedes Modell, das Sie verwenden. Erfordert Claude Code v2.1.251 oder später.1274Speichern Sie eine [Effort-Stufe](/docs/de/model-config#adjust-effort-level) für jedes Modell, das Sie verwenden. Erfordert Claude Code v2.1.251 oder später.

1217 1275 

1218In einer interaktiven Sitzung auf Ihrem Computer, wenn Sie `low`, `medium`, `high` oder `xhigh` als Ihren Standard mit `/effort` oder dem Aufwands-Schieberegler der Auswahl `/model` speichern, schreibt Claude Code diese Ebene hier unter dem Modell, das Sie verwenden, daher bearbeiten Sie diesen Schlüssel selten selbst. Wenn Sie einen dieser Ebenen in der [Modellauswahl der VS Code-Erweiterung](/docs/de/vs-code#use-the-prompt-box) auswählen, speichert Claude Code ihn auf die gleiche Weise. Der Eintrag [`effortLevel`](#effortlevel) listet die Sitzungen auf, in denen `/effort` nur für diese Sitzung gilt.1276Wenn Sie in einer interaktiven Sitzung auf Ihrem Computer `low`, `medium`, `high` oder `xhigh` mit `/effort` oder dem Effort-Schieberegler der Auswahl `/model` als Ihren Standard speichern, schreibt Claude Code diese Stufe hier unter dem Modell, das Sie verwenden, daher bearbeiten Sie diesen Schlüssel selten selbst. Wenn Sie eine dieser Stufen in der [Modellauswahl der VS Code-Erweiterung](/docs/de/vs-code#use-the-prompt-box) auswählen, speichert Claude Code sie auf dieselbe Weise hier. Der Eintrag [`effortLevel`](#effortlevel) listet die Sitzungen auf, in denen `/effort` nur für diese Sitzung gilt.

1219 1277 

1220Bearbeiten Sie den Schlüssel manuell, um eine Ebene zu ändern oder zu entfernen, die Sie gespeichert haben.1278Bearbeiten Sie den Schlüssel manuell, um eine gespeicherte Stufe zu ändern oder zu entfernen.

1221 1279 

1222Ein `effortLevel` eines Modells hier hat Vorrang vor dem Top-Level-[`effortLevel`](#effortlevel) in der gleichen Einstellungsdatei. Über Dateien hinweg löst Claude Code jedes Modell separat auf: die höchste Prioritäts-[Einstellungsdatei](/docs/de/settings#settings-precedence), die entweder einen `effortLevel` für dieses Modell oder einen Top-Level-`effortLevel` setzt, der [auf dieses Modell anwendet](#effortlevel), entscheidet, daher übertrumpft ein `effortLevel` in verwalteten Einstellungen eine Ebene, die Sie in Benutzereinstellungen gespeichert haben. [Aufwandsebene anpassen](/docs/de/model-config#adjust-effort-level) listet auf, was sonst noch eine gespeicherte Ebene überschreiben kann, wie `--effort` beim Start.1280Ein `effortLevel` eines Modells hier hat Vorrang vor dem `effortLevel` der obersten Ebene ([`effortLevel`](#effortlevel)) in derselben Einstellungsdatei. Dateiübergreifend löst Claude Code jedes Modell separat auf: Die [Einstellungsdatei](/docs/de/settings#settings-precedence) mit dem höchsten Vorrang, die entweder ein `effortLevel` für dieses Modell oder ein `effortLevel` der obersten Ebene setzt, das [für dieses Modell gilt](#effortlevel), entscheidet, daher hat ein `effortLevel` in verwalteten Einstellungen Vorrang vor einer Stufe, die Sie in Benutzereinstellungen gespeichert haben. [Effort-Stufe anpassen](/docs/de/model-config#adjust-effort-level) listet auf, was eine gespeicherte Stufe sonst noch überschreiben kann, wie `--effort` beim Start.

1223 1281 

1224Um ein Modell zu begrenzen, anstatt seine Ebene zu setzen, fügen Sie ein Feld [`maxEffortLevel`](#maxeffortlevel) zum Eintrag dieses Modells hinzu. Das Feld erfordert Claude Code v2.1.267 oder später.1282Um den Effort eines Modells zu begrenzen, anstatt seine Stufe festzulegen, fügen Sie dem Eintrag dieses Modells ein Feld [`maxEffortLevel`](#maxeffortlevel) hinzu. Das Feld erfordert Claude Code v2.1.267 oder später.

1225 1283 

1226* **Bereich**: [`Beliebige Datei`](#scopes)1284* **Geltungsbereich**: [`Beliebige Datei`](#scopes)

1227* **Typ**: Objekt, das einen Modellnamen zu einem Objekt mit einem Feld `effortLevel`, einem von `"low"`, `"medium"`, `"high"` oder `"xhigh"`, einem Feld [`maxEffortLevel`](#maxeffortlevel) oder beiden zuordnet1285* **Typ**: Objekt, das einen Modellnamen einem Objekt mit einem Feld `effortLevel` (einer von `"low"`, `"medium"`, `"high"` oder `"xhigh"`), einem Feld [`maxEffortLevel`](#maxeffortlevel) oder beiden zuordnet

1228* **Standard**: nicht gesetzt1286* **Standard**: nicht gesetzt

1229 1287 

1230Claude Code schreibt jeden Eintrag unter dem kanonischen Namen des Modells, wie `claude-opus-5-5`, und ordnet den Alias, das Datum-Suffix, `[1m]` und erkannte Anbieter-spezifische IDs dieses Modells dem gleichen Eintrag zu.1288Claude Code schreibt jeden Eintrag unter dem kanonischen Namen des Modells, wie `claude-opus-5-5`, und ordnet den Alias, die IDs mit Datumssuffix, `[1m]` und erkannte providerspezifische IDs dieses Modells demselben Eintrag zu.

1231 1289 

1232Dieses Beispiel hält Opus 5.5 auf `high`, während andere Modelle ihre eigenen gespeicherten oder Standard-Ebenen verwenden:1290Dieses Beispiel hält Opus 5.5 auf `high`, während andere Modelle ihre eigenen gespeicherten oder Standardstufen verwenden:

1233 1291 

1234```json settings.json theme={null}1292```json settings.json theme={null}

1235{1293{


1241}1299}

1242```1300```

1243 1301 

1244Führen Sie `/effort auto` aus, um Ihre gespeicherte Ebene für das Modell zu löschen, das Sie verwenden. Claude Code lässt die anderen Einträge und jeden Top-Level-`effortLevel` in Kraft.1302Führen Sie `/effort auto` aus, um Ihre gespeicherte Stufe für das Modell zu löschen, das Sie verwenden. Claude Code lässt die anderen Einträge und jedes `effortLevel` der obersten Ebene bestehen.

1245 1303 

1246<h3 id="outputstyle">1304<h3 id="outputstyle">

1247 `outputStyle`1305 `outputStyle`

1248</h3>1306</h3>

1249 1307 

1250Wählen Sie einen [Ausgabestil](/docs/de/output-styles) nach Name. Ein Ausgabestil ist ein gespeicherter Satz von Anweisungen, der Claudes Rolle, Ton und Ausgabeformat ändert, wie die integrierten Explanatory- und Learning-Stile oder einen, den Sie selbst geschrieben haben.1308Wählen Sie einen [Ausgabestil](/docs/de/output-styles) nach Namen aus. Ein Ausgabestil ist ein gespeicherter Satz von Anweisungen, der Claudes Rolle, Ton und Ausgabeformat ändert, wie die integrierten Stile Explanatory und Learning oder ein Stil, den Sie selbst geschrieben haben.

1251 1309 

1252Wenn Sie diesen Schlüssel während einer Sitzung ändern, verwendet Claude den neuen Stil ab Ihrer nächsten Nachricht. Für was diese Nachricht im Prompt-Cache kostet, siehe [Ausgabestil ändern](/docs/de/prompt-caching#changing-output-style). Vor v2.1.251 galt die Bearbeitung nur nach dem Ausführen von `/clear` oder dem Starten einer neuen Sitzung.1310Wenn Sie diesen Schlüssel während einer Sitzung ändern, verwendet Claude den neuen Stil ab Ihrer nächsten Nachricht. Was diese Nachricht beim Prompt-Caching kostet, erfahren Sie unter [Ausgabestil ändern](/docs/de/prompt-caching#changing-output-style). Vor v2.1.251 wurde die Änderung erst wirksam, nachdem Sie `/clear` ausgeführt oder eine neue Sitzung gestartet hatten.

1253 1311 

1254* **Bereich**: [`Beliebige Datei`](#scopes)1312* **Geltungsbereich**: [`Beliebige Datei`](#scopes)

1255* **Typ**: String, der Name eines [integrierten](/docs/de/output-styles#built-in-output-styles) oder [benutzerdefinierten](/docs/de/output-styles#create-a-custom-output-style) Ausgabestils1313* **Typ**: String, der Name eines [integrierten](/docs/de/output-styles#built-in-output-styles) oder [benutzerdefinierten](/docs/de/output-styles#create-a-custom-output-style) Ausgabestils

1256* **Standard**: nicht gesetzt, daher verwendet Claude Code den Standard-Stil1314* **Standard**: nicht gesetzt, daher verwendet Claude Code den Standardstil

1257 1315 

1258Dieses Beispiel wählt den integrierten Explanatory-Stil, der zwischen Aufgaben pädagogische Einblicke hinzufügt:1316Dieses Beispiel wählt den integrierten Stil Explanatory, der zwischen Aufgaben erklärende Einblicke hinzufügt:

1259 1317 

1260```json settings.json theme={null}1318```json settings.json theme={null}

1261{1319{


1267 `promptCacheTtl`1325 `promptCacheTtl`

1268</h3>1326</h3>

1269 1327 

1270Wählen Sie, wie lange der [Prompt-Cache](/docs/de/prompt-caching) die Hauptkonversation hält. Dieser Schlüssel gilt für Ihre interaktiven, `-p` und Agent SDK-Durchläufe, zusammen mit den Helfern, die Claude Code inline mit ihnen ausführt. Die Einstunden-Lebensdauer hält den Cache über längere Pausen warm, und die API [berechnet jeden Cache-Schreibvorgang zu einem höheren Satz](https://platform.claude.com/docs/en/build-with-claude/prompt-caching#pricing) als bei der Fünf-Minuten-Lebensdauer. Erfordert Claude Code v2.1.242 oder später.1328Legen Sie fest, wie lange der [Prompt-Cache](/docs/de/prompt-caching) die Hauptkonversation vorhält. Dieser Schlüssel gilt für Ihre interaktiven, `-p`- und Agent SDK-Turns sowie für die Hilfsanfragen, die Claude Code direkt mit ihnen ausführt. Die einstündige Lebensdauer hält den Cache über längere Pausen warm, und die API [berechnet jeden Cache-Schreibvorgang zu einem höheren Preis](https://platform.claude.com/docs/en/build-with-claude/prompt-caching#pricing) als bei der fünfminütigen Lebensdauer. Erfordert Claude Code v2.1.242 oder später.

1271 1329 

1272* **Bereich**: [`Beliebige Datei`](#scopes)1330* **Geltungsbereich**: [`Beliebige Datei`](#scopes)

1273* **Typ**: String, einer von:1331* **Typ**: String, einer von:

1274 * `"5m"`: der Cache hält für fünf Minuten1332 * `"5m"`: der Cache hält fünf Minuten

1275 * `"1h"`: der Cache hält für eine Stunde1333 * `"1h"`: der Cache hält eine Stunde

1276* **Standard**: nicht gesetzt, daher erhält jede Hauptkonversations-Anfrage [ihre Standard-Lebensdauer](/docs/de/prompt-caching#which-ttl-each-request-gets)1334* **Standard**: nicht gesetzt, daher erhält jede Anfrage der Hauptkonversation [ihre Standardlebensdauer](/docs/de/prompt-caching#which-ttl-each-request-gets)

1277* **Sitzungsübergreifende Außerkraftsetzungen**: [`FORCE_PROMPT_CACHING_5M`](/docs/de/env-vars) hat Vorrang vor allem anderen, dann [`CLAUDE_CODE_PROMPT_CACHE_TTL`](/docs/de/env-vars), dann dieser Schlüssel, und zuletzt [`ENABLE_PROMPT_CACHING_1H`](/docs/de/env-vars)1335* **Überschreibungen pro Sitzung**: [`FORCE_PROMPT_CACHING_5M`](/docs/de/env-vars) hat Vorrang vor allem anderen, dann [`CLAUDE_CODE_PROMPT_CACHE_TTL`](/docs/de/env-vars), dann dieser Schlüssel und zuletzt [`ENABLE_PROMPT_CACHING_1H`](/docs/de/env-vars)

1278 1336 

1279Dieses Beispiel hält die Hauptkonversation auf der Einstunden-Lebensdauer und lässt Subagents auf fünf Minuten:1337Dieses Beispiel hält die Hauptkonversation auf der einstündigen Lebensdauer und lässt Subagenten bei fünf Minuten:

1280 1338 

1281```json settings.json theme={null}1339```json settings.json theme={null}

1282{1340{


1285}1343}

1286```1344```

1287 1345 

1288Für was jede Lebensdauer kostet, siehe [Cache-Lebensdauer](/docs/de/prompt-caching#cache-lifetime).1346Was jede Lebensdauer kostet, erfahren Sie unter [Cache-Lebensdauer](/docs/de/prompt-caching#cache-lifetime).

1289 1347 

1290<h3 id="showthinkingsummaries">1348<h3 id="showthinkingsummaries">

1291 `showThinkingSummaries`1349 `showThinkingSummaries`

1292</h3>1350</h3>

1293 1351 

1294Sehen Sie Zusammenfassungen von Claudes [erweitertem Denken](/docs/de/model-config#extended-thinking) in interaktiven Sitzungen. Setzen Sie es, wenn Sie die vollständigen Zusammenfassungen möchten, wenn Sie das Denken mit `Ctrl+O` erweitern. Wenn nicht gesetzt oder `false`, redaktioniert die Anthropic API Denk-Blöcke und Claude Code zeigt einen zusammengefassten Stub; Drittanbieter-Provider redaktionieren nicht.1352Zeigen Sie Zusammenfassungen von Claudes [Extended Thinking](/docs/de/model-config#extended-thinking) in interaktiven Sitzungen an. Setzen Sie den Schlüssel, wenn Sie die vollständigen Zusammenfassungen sehen möchten, wenn Sie Thinking mit `Ctrl+O` aufklappen. Wenn er nicht gesetzt oder `false` ist, schwärzt die Anthropic API Thinking-Blöcke und Claude Code zeigt einen zugeklappten Platzhalter; Drittanbieter-Provider schwärzen nicht.

1295 1353 

1296* **Bereich**: [`Beliebige Datei`](#scopes)1354* **Geltungsbereich**: [`Beliebige Datei`](#scopes)

1297* **Typ**: Boolean1355* **Typ**: Boolean

1298 * `true`: Sie sehen vollständige Denk-Zusammenfassungen, wenn Sie das Denken mit `Ctrl+O` erweitern1356 * `true`: Sie sehen vollständige Thinking-Zusammenfassungen, wenn Sie Thinking mit `Ctrl+O` aufklappen

1299 * `false`: die Anthropic API redaktioniert Denk-Blöcke und Claude Code zeigt einen zusammengefassten Stub1357 * `false`: die Anthropic API schwärzt Thinking-Blöcke und Claude Code zeigt einen zugeklappten Platzhalter

1300* **Standard**: `false`1358* **Standard**: `false`

1301 1359 

1302```json settings.json theme={null}1360```json settings.json theme={null}


1305}1363}

1306```1364```

1307 1365 

1308Redaktion ändert nur, was Sie sehen, nicht was das Modell generiert. Um Denk-Ausgaben zu reduzieren, [senken Sie das Budget oder deaktivieren Sie das Denken](/docs/de/model-config#extended-thinking) stattdessen.1366Die Schwärzung ändert nur, was Sie sehen, nicht was das Modell generiert. Um die Thinking-Kosten zu senken, [verringern Sie stattdessen das Budget oder deaktivieren Sie Thinking](/docs/de/model-config#extended-thinking).

1309 1367 

1310<h3 id="subagentpromptcachettl">1368<h3 id="subagentpromptcachettl">

1311 `subagentPromptCacheTtl`1369 `subagentPromptCacheTtl`

1312</h3>1370</h3>

1313 1371 

1314Wählen Sie, wie lange der [Prompt-Cache](/docs/de/prompt-caching) die Anfragen hält, die Claude Code außerhalb der Hauptkonversation macht. Dieser Schlüssel gilt für [Subagents](/docs/de/sub-agents), [Workflows](/docs/de/workflows) und Claudes eigene Hintergrund- und Hilfsanfragen, wie Komprimierung und Sitzungstitel. Die Einstunden-Lebensdauer hält den Cache über längere Pausen warm, und die API [berechnet jeden Cache-Schreibvorgang zu einem höheren Satz](https://platform.claude.com/docs/en/build-with-claude/prompt-caching#pricing) als bei der Fünf-Minuten-Lebensdauer. Erfordert Claude Code v2.1.242 oder später.1372Legen Sie fest, wie lange der [Prompt-Cache](/docs/de/prompt-caching) die Anfragen vorhält, die Claude Code außerhalb der Hauptkonversation stellt. Dieser Schlüssel gilt für [Subagenten](/docs/de/sub-agents), [Workflows](/docs/de/workflows) und die eigenen Hintergrund- und Hilfsanfragen von Claude Code, wie Komprimierung und Sitzungstitel. Die einstündige Lebensdauer hält den Cache über längere Pausen warm, und die API [berechnet jeden Cache-Schreibvorgang zu einem höheren Preis](https://platform.claude.com/docs/en/build-with-claude/prompt-caching#pricing) als bei der fünfminütigen Lebensdauer. Erfordert Claude Code v2.1.242 oder später.

1315 1373 

1316* **Bereich**: [`Beliebige Datei`](#scopes)1374* **Geltungsbereich**: [`Beliebige Datei`](#scopes)

1317* **Typ**: String, einer von:1375* **Typ**: String, einer von:

1318 * `"5m"`: der Cache hält für fünf Minuten1376 * `"5m"`: der Cache hält fünf Minuten

1319 * `"1h"`: der Cache hält für eine Stunde1377 * `"1h"`: der Cache hält eine Stunde

1320* **Standard**: nicht gesetzt, daher erhält jede dieser Anfragen [ihre Standard-Lebensdauer](/docs/de/prompt-caching#which-ttl-each-request-gets)1378* **Standard**: nicht gesetzt, daher erhält jede dieser Anfragen [ihre Standardlebensdauer](/docs/de/prompt-caching#which-ttl-each-request-gets)

1321* **Sitzungsübergreifende Außerkraftsetzungen**: [`FORCE_PROMPT_CACHING_5M`](/docs/de/env-vars) hat Vorrang vor allem anderen, dann [`CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`](/docs/de/env-vars), dann dieser Schlüssel, dann [`ENABLE_PROMPT_CACHING_1H`](/docs/de/env-vars), das die Einstunden-Lebensdauer bei jeder Anfrage anfordert. Für wo der Wert der eigenen Frontmatter eines Subagents rangiert, siehe [Wählen Sie die TTL selbst](/docs/de/prompt-caching#choose-the-ttl-yourself)1379* **Überschreibungen pro Sitzung**: [`FORCE_PROMPT_CACHING_5M`](/docs/de/env-vars) hat Vorrang vor allem anderen, dann [`CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`](/docs/de/env-vars), dann dieser Schlüssel, dann [`ENABLE_PROMPT_CACHING_1H`](/docs/de/env-vars), das für jede Anfrage die einstündige Lebensdauer anfordert. Wo der Frontmatter-Wert eines Subagenten selbst in dieser Rangfolge steht, erfahren Sie unter [Die TTL selbst wählen](/docs/de/prompt-caching#choose-the-ttl-yourself)

1322 1380 

1323Dieses Beispiel gibt Subagents und den anderen Anfragen außerhalb der Hauptkonversation die Einstunden-Lebensdauer:1381Dieses Beispiel gibt Subagenten und den anderen Anfragen außerhalb der Hauptkonversation die einstündige Lebensdauer:

1324 1382 

1325```json settings.json theme={null}1383```json settings.json theme={null}

1326{1384{


1328}1386}

1329```1387```

1330 1388 

1331Dieser Schlüssel deckt die Anfragen ab, die [`promptCacheTtl`](#promptcachettl) nicht abdeckt, daher setzen Sie beide, um eine Lebensdauer für jede Anfrage zu wählen, die Claude Code macht. Für wie sich der Cache eines Subagents vom Cache der Hauptkonversation unterscheidet, siehe [Subagents und der Cache](/docs/de/prompt-caching#subagents-and-the-cache).1389Dieser Schlüssel deckt die Anfragen ab, die [`promptCacheTtl`](#promptcachettl) nicht abdeckt, daher setzen Sie beide, um für jede Anfrage von Claude Code eine Lebensdauer festzulegen. Wie sich der Cache eines Subagenten von dem der Hauptkonversation unterscheidet, erfahren Sie unter [Subagenten und der Cache](/docs/de/prompt-caching#subagents-and-the-cache).

1332 1390 

1333<h3 id="switchmodelsonflag">1391<h3 id="switchmodelsonflag">

1334 `switchModelsOnFlag`1392 `switchModelsOnFlag`

1335</h3>1393</h3>

1336 1394 

1337Wählen Sie, was passiert, wenn ein [Sicherheits-Klassifizierer eine Anfrage kennzeichnet](/docs/de/model-config#automatic-model-fallback): zum Fallback-Modell wechseln und fortfahren, oder pausieren, damit Sie zwischen Wechsel und Bearbeitung der Eingabeaufforderung wählen können.1395Legen Sie fest, was passiert, wenn ein [Sicherheits-Klassifikator eine Anfrage kennzeichnet](/docs/de/model-config#automatic-model-fallback): zum Fallback-Modell wechseln und fortfahren oder pausieren, damit Sie zwischen Wechseln und Bearbeiten des Prompts wählen können.

1338 1396 

1339* **Bereich**: [`Beliebige Datei`](#scopes). Erscheint in `/config` als **Modelle wechseln, wenn eine Nachricht gekennzeichnet ist**.1397* **Geltungsbereich**: [`Beliebige Datei`](#scopes). Erscheint in `/config` als **Modelle wechseln, wenn eine Nachricht gekennzeichnet ist**.

1340* **Typ**: Boolean1398* **Typ**: Boolean

1341 * `true`: Claude Code wechselt zum Fallback-Modell und fährt fort1399 * `true`: Claude Code wechselt zum Fallback-Modell und fährt fort

1342 * `false`: in einer interaktiven Sitzung pausiert Claude Code, damit Sie zwischen Wechsel und Bearbeitung der Eingabeaufforderung wählen können; wo kein Dialog angezeigt werden kann, wie ein `-p`-Lauf, endet die gekennzeichnete Anfrage als Fehler1400 * `false`: In einer interaktiven Sitzung pausiert Claude Code, damit Sie zwischen Wechseln und Bearbeiten des Prompts wählen können; wo kein Dialog angezeigt werden kann, wie bei einem `-p`-Lauf, endet die gekennzeichnete Anfrage mit einem Fehler

1343* **Standard**: `true`, automatisch wechseln1401* **Standard**: `true`, automatisch wechseln

1344 1402 

1345```json settings.json theme={null}1403```json settings.json theme={null}


1354 `ultracode`1412 `ultracode`

1355</h3>1413</h3>

1356 1414 

1357Starten Sie Sitzungen mit [Ultracode](/docs/de/workflows#let-claude-decide-with-ultracode) an. Mit ihm an, plant Claude einen Workflow für jede wesentliche Aufgabe, anstatt auf Sie zu warten, um zu fragen. Claude plant Workflows nur, wenn [dynamische Workflows](/docs/de/workflows) für Sie aktiviert sind, Ihr Modell `xhigh`-Aufwand unterstützt und kein [Aufwandslimit](/docs/de/model-config#organization-effort-limits) unter `xhigh` gilt. Auf jeden Fall läuft `ultracode: true` die Sitzung auf `xhigh`-Aufwand oder bei der Obergrenze, wenn ein Aufwandslimit niedriger ist. Claude Code liest diesen Schlüssel, schreibt ihn aber nie: `/effort ultracode` aktiviert Ultracode nur für die aktuelle Sitzung.1415Starten Sie Sitzungen mit aktiviertem [Ultracode](/docs/de/workflows#let-claude-decide-with-ultracode). Wenn es aktiviert ist, plant Claude für jede substanzielle Aufgabe einen Workflow, anstatt darauf zu warten, dass Sie darum bitten. Claude plant Workflows nur, wenn [dynamische Workflows](/docs/de/workflows) für Sie aktiviert sind und Ihr Modell den Effort `xhigh` unterstützt. Der Schlüssel ändert die Effort-Stufe der Sitzung nicht: Ultracode läuft mit der Stufe, die die Sitzung verwendet. Claude Code liest diesen Schlüssel, schreibt ihn aber nie: `/effort ultracode` aktiviert Ultracode nur für die aktuelle Sitzung.

1358 1416 

1359* **Bereich**: [`Beliebige Datei`](#scopes)1417* **Geltungsbereich**: [`Beliebige Datei`](#scopes)

1360* **Typ**: Boolean1418* **Typ**: Boolean

1361 * `true`: Sitzungen starten auf `xhigh`-Aufwand, mit Ultracode an, wenn dynamische Workflows für Sie aktiviert sind, Ihr Modell `xhigh` unterstützt und kein Aufwandslimit unter `xhigh` ist1419 * `true`: Sitzungen starten mit aktiviertem Ultracode, wenn dynamische Workflows für Sie aktiviert sind und Ihr Modell `xhigh` unterstützt

1362 * `false`: Sitzungen starten mit Ultracode aus1420 * `false`: Sitzungen starten mit deaktiviertem Ultracode

1363* **Standard**: nicht gesetzt, daher ist Ultracode aus1421* **Standard**: nicht gesetzt, daher ist Ultracode deaktiviert

1364* **Sitzungsübergreifende Außerkraftsetzungen**: `/effort ultracode` aktiviert Ultracode für eine Sitzung ohne diesen Schlüssel. Das Flag `--effort ultracode` aktiviert es auch für eine Sitzung und erfordert Claude Code v2.1.203 oder später1422* **Überschreibungen pro Sitzung**: `/effort ultracode` aktiviert Ultracode für eine Sitzung ohne diesen Schlüssel, und `/effort ultracode off` deaktiviert es für eine Sitzung, wenn dieser Schlüssel `true` ist. Das Flag `--effort ultracode` aktiviert es ebenfalls für eine Sitzung, mit dem Effort `xhigh`, und erfordert Claude Code v2.1.203 oder später

1365 1423 

1366```json settings.json theme={null}1424```json settings.json theme={null}

1367{1425{


1369}1427}

1370```1428```

1371 1429 

1372Ultracode läuft die Sitzung auf `xhigh`-Aufwand und hat Vorrang vor `effortLevel` und [`modelSettings`](#modelsettings)-Einträgen. Wenn ein [Aufwandslimit](/docs/de/model-config#organization-effort-limits) unter `xhigh` auf das Modell anwendet, wie eine [`maxEffortLevel`](#maxeffortlevel)-Einstellung, läuft die Sitzung stattdessen bei der Obergrenze und Ultracode bleibt aus. Claude plant dann keine Workflows von selbst, und `/effort` bietet nicht `ultracode` an. Eine Agent SDK `apply_flag_settings`-Kontrollabfrage akzeptiert auch den Schlüssel.1430Die Effort-Stufe der Sitzung ergibt sich aus [`effortLevel`](#effortlevel), [`modelSettings`](#modelsettings) und den anderen [Effort-Quellen](/docs/de/model-config#adjust-effort-level), und eine [Effort-Obergrenze](/docs/de/model-config#organization-effort-limits) wie [`maxEffortLevel`](#maxeffortlevel) senkt diese Stufe, ohne Ultracode auszuschalten. Dies und die Form `/effort ultracode off` erfordern Claude Code v2.1.284 oder später. Vor v2.1.284 ließ `ultracode: true` die Sitzung mit dem Effort `xhigh` laufen, und eine Effort-Obergrenze unter `xhigh` hielt Ultracode ausgeschaltet. Eine Agent SDK-Steuerungsanfrage `apply_flag_settings` akzeptiert den Schlüssel ebenfalls.

1373 1431 

1374<h2 id="permission-settings">1432<h2 id="permission-settings">

1375 Berechtigungseinstellungen1433 Berechtigungseinstellungen

1376</h2>1434</h2>

1377 1435 

1378Entscheiden Sie, was Claude ohne Nachfrage tun kann, in welchem Berechtigungsmodus eine Sitzung startet, und was der Klassifizierer des Auto-Modus zulässt. Informationen zur Regelsyntax und zum Berechtigungsmodell finden Sie unter [Berechtigungen konfigurieren](/docs/de/permissions).1436Entscheiden Sie, was Claude ohne Nachfrage tun kann, in welchem Berechtigungsmodus eine Sitzung startet, und was der Klassifikator des Auto-Modus zulässt. Informationen zur Regelsyntax und zum Berechtigungsmodell finden Sie unter [Berechtigungen konfigurieren](/docs/de/permissions).

1379 1437 

1380<h3 id="allowmanagedpermissionrulesonly">1438<h3 id="allowmanagedpermissionrulesonly">

1381 `allowManagedPermissionRulesOnly`1439 `allowManagedPermissionRulesOnly`

1382</h3>1440</h3>

1383 1441 

1384Machen Sie verwaltete Einstellungen zur einzigen Quelle für Berechtigungsregeln. Claude Code ignoriert dann `allow`-, `ask`- und `deny`-Regeln in Benutzer-, Projekt-, lokalen und `--settings`-Dateien, ignoriert `--allowedTools`, blendet die Optionen zum Immer-Zulassen in Berechtigungsaufforderungen aus und speichert keine neuen Regeln.1442Machen Sie verwaltete Einstellungen zur einzigen Quelle für Berechtigungsregeln. Claude Code ignoriert dann `allow`-, `ask`- und `deny`-Regeln in Benutzer-, Projekt-, lokalen und `--settings`-Dateien, ignoriert `--allowedTools`, blendet die Optionen zum Immer-Zulassen in Berechtigungsabfragen aus und speichert keine neuen Regeln.

1385 1443 

1386Wenn [übergeordnete Einstellungen von einem Embedding-Host](/docs/de/managed-settings#let-an-embedding-host-add-policy) gelten, behandelt Claude Code diese als Teil der verwalteten Ebene. Es verwirft deren `allow`-Regeln und `additionalDirectories` und behält deren `deny`- und `ask`-Regeln bei, außer `Read`- und `Edit`-Regeln, deren Muster mit `!` beginnt. Ein Host kann Pfade aus den verwalteten Regeln nicht mit einer `!`-Regel ausschneiden, unabhängig davon, ob Sie diesen Schlüssel setzen oder nicht.1444Wenn [übergeordnete Einstellungen von einem Embedding-Host](/docs/de/managed-settings#let-an-embedding-host-add-policy) gelten, behandelt Claude Code diese als Teil der verwalteten Ebene. Es verwirft deren `allow`-Regeln und `additionalDirectories` und behält deren `deny`- und `ask`-Regeln bei, außer `Read`- und `Edit`-Regeln, deren Muster mit `!` beginnt. Ein Host kann Pfade aus den verwalteten Regeln nicht mit einer `!`-Regel ausschneiden, unabhängig davon, ob Sie diesen Schlüssel setzen oder nicht.

1387 1445 


1389 1447 

1390Informationen dazu, was ein `!`-Muster in einer `--disallowedTools`- oder Sitzungsregel ausschneiden kann, finden Sie unter [Read- und Edit-Regeln](/docs/de/permissions#read-and-edit).1448Informationen dazu, was ein `!`-Muster in einer `--disallowedTools`- oder Sitzungsregel ausschneiden kann, finden Sie unter [Read- und Edit-Regeln](/docs/de/permissions#read-and-edit).

1391 1449 

1392* **Bereich**: [`Managed`](#scopes)1450Wenn Sie diesen Schlüssel setzen, ignoriert Claude Code v2.1.282 oder später außerdem das [`allowed-tools`](/docs/de/skills#pre-approve-tools-for-a-skill)-Frontmatter in Skills und `.claude/commands/`-Dateien aus diesen Quellen:

1451 

1452* Das `.claude/`-Verzeichnis eines Repositorys

1453* Ihre Verzeichnisse `~/.claude/skills/` und `~/.claude/commands/`, einschließlich [von claude.ai synchronisierter Skills](/docs/de/skills#where-synced-skills-load)

1454* Ein `--add-dir`-Verzeichnis

1455* [Plugins, die mit einem `.claude-plugin`-Manifest deklariert sind](/docs/de/plugins/loading#plugins-shared-through-a-repository), innerhalb von `~/.claude/skills/` oder dem `.claude/skills/` des Projekts

1456 

1457Skills aus verwalteten Einstellungen und mitgelieferte Skills behalten ihr `allowed-tools`. Das `disallowed-tools` eines Skills gilt weiterhin. Was ein Entwickler sieht, wenn Claude Code das Feld ignoriert, erfahren Sie unter [Wenn nur verwaltete Berechtigungsregeln gelten](/docs/de/skills#when-only-managed-permission-rules-apply).

1458 

1459* **Geltungsbereich**: [`Managed`](#scopes)

1393* **Typ**: Boolean1460* **Typ**: Boolean

1394 * `true`: verwaltete Einstellungen werden zur einzigen Quelle für Berechtigungsregeln1461 * `true`: verwaltete Einstellungen werden zur einzigen Quelle für Berechtigungsregeln

1395 * `false`: Claude Code wendet Berechtigungsregeln aus Benutzer-, Projekt-, lokalen und `--settings`-Dateien zusätzlich zu den verwalteten an1462 * `false`: Claude Code wendet Berechtigungsregeln aus Benutzer-, Projekt-, lokalen und `--settings`-Dateien zusätzlich zu den verwalteten an


1401}1468}

1402```1469```

1403 1470 

1404Dieser Schlüssel sperrt nicht die MCP-Server-Zulassungsliste; verwenden Sie dazu [`allowManagedMcpServersOnly`](#allowmanagedmcpserversonly). Siehe [Nur verwaltete Einstellungen](/docs/de/managed-settings#managed-only-settings).1471Dieser Schlüssel sperrt nicht die MCP-Server-Allowlist; verwenden Sie dazu [`allowManagedMcpServersOnly`](#allowmanagedmcpserversonly). Siehe [Nur verwaltete Einstellungen](/docs/de/managed-settings#managed-only-settings).

1405 1472 

1406<h3 id="automode">1473<h3 id="automode">

1407 `autoMode`1474 `autoMode`

1408</h3>1475</h3>

1409 1476 

1410Fügen Sie Ihre eigenen Regeln zu dem hinzu, was der [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode)-Klassifizierer blockiert und zulässt. Verwenden Sie es, um dem Klassifizierer mitzuteilen, welche Repos, Buckets und Domains Ihre Organisation vertraut, damit er routinemäßige interne Operationen nicht mehr blockiert. Der Klassifizierer wird mit [integrierten Allow- und Deny-Regeln](/docs/de/auto-mode-config#inspect-the-defaults-and-your-effective-config) ausgeliefert. Fügen Sie die Literalzeichenfolge `"$defaults"` in einem Array ein, um diese integrierten Regeln an dieser Position zu behalten und Ihre Regeln um sie herum hinzuzufügen; lassen Sie sie weg, um sie durch Ihre zu ersetzen.1477Fügen Sie Ihre eigenen Regeln zu dem hinzu, was der [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode)-Klassifikator blockiert und zulässt. Verwenden Sie es, um dem Klassifikator mitzuteilen, welchen Repos, Buckets und Domains Ihre Organisation vertraut, damit er alltägliche interne Vorgänge nicht mehr blockiert. Der Klassifikator wird mit [integrierten Allow- und Deny-Regeln](/docs/de/auto-mode-config#inspect-the-defaults-and-your-effective-config) ausgeliefert. Fügen Sie die Literalzeichenfolge `"$defaults"` in einem Array ein, um diese integrierten Regeln an dieser Position zu behalten und Ihre Regeln um sie herum hinzuzufügen; lassen Sie sie weg, um sie durch Ihre zu ersetzen.

1411 1478 

1412* **Bereich**: [`User or managed`](#scopes)1479* **Geltungsbereich**: [`User or managed`](#scopes)

1413* **Typ**: Objekt mit `environment`-, `allow`-, `soft_deny`- und `hard_deny`-Arrays von Prosa-Regeln sowie dem Boolean [`classifyAllShell`](#automode-classifyallshell)1480* **Typ**: Objekt mit `environment`-, `allow`-, `soft_deny`- und `hard_deny`-Arrays von Prosa-Regeln sowie dem Boolean [`classifyAllShell`](#automode-classifyallshell)

1414* **Standard**: nicht gesetzt, daher verwendet der Klassifizierer nur seine [integrierten Regeln](/docs/de/auto-mode-config#inspect-the-defaults-and-your-effective-config)1481* **Standard**: nicht gesetzt, daher verwendet der Klassifikator nur seine [integrierten Regeln](/docs/de/auto-mode-config#inspect-the-defaults-and-your-effective-config)

1415 1482 

1416Dieses Beispiel behält die integrierten `soft_deny`-Regeln durch `"$defaults"` und fügt eine weitere hinzu, die `terraform apply` blockiert:1483Dieses Beispiel behält die integrierten `soft_deny`-Regeln durch `"$defaults"` und fügt eine weitere hinzu, die `terraform apply` blockiert:

1417 1484 


1429 `autoMode.classifyAllShell`1496 `autoMode.classifyAllShell`

1430</h3>1497</h3>

1431 1498 

1432Senden Sie jeden Bash- und PowerShell-Befehl durch den Auto-Modus-Klassifizierer, während der Auto-Modus aktiv ist. Standardmäßig setzt der Auto-Modus nur Allow-Regeln aus, die beliebigen Code ausführen könnten: Tool-weite und Wildcard-Regeln wie `Bash(*)` sowie Interpreter- oder Shell-Wrapper-Präfixe wie `Bash(python *)`. Ein Befehl, der einer anderen Allow-Regel entspricht, wie `Bash(npm test)`, überspringt den Klassifizierer, es sei denn, er trägt [Pro-Befehl zulässige Domains](/docs/de/sandboxing#per-command-allowed-domains-in-auto-mode). Wenn er überspringt, kann ein destruktives Argument, das das Präfix der Regel nicht erwartet hat, ungesehen durchkommen. Das Setzen dieses Schlüssels setzt jede Shell-Allow-Regel für die Sitzung aus, damit der Klassifizierer jeden Befehl sieht. Erfordert Claude Code v2.1.193 oder später.1499Senden Sie jeden Bash- und PowerShell-Befehl durch den Auto-Modus-Klassifikator, während der Auto-Modus aktiv ist. Standardmäßig setzt der Auto-Modus nur Allow-Regeln aus, die beliebigen Code ausführen könnten: Tool-weite und Wildcard-Regeln wie `Bash(*)` sowie Interpreter- oder Shell-Wrapper-Präfixe wie `Bash(python *)`. Ein Befehl, der einer anderen Allow-Regel entspricht, wie `Bash(npm test)`, überspringt den Klassifikator, es sei denn, er trägt [Pro-Befehl zulässige Domains](/docs/de/sandboxing#per-command-allowed-domains-in-auto-mode). Wenn er überspringt, kann ein destruktives Argument, das das Präfix der Regel nicht erwartet hat, ungesehen durchkommen. Das Setzen dieses Schlüssels setzt jede Shell-Allow-Regel für die Sitzung aus, damit der Klassifikator jeden Befehl sieht. Erfordert Claude Code v2.1.193 oder später.

1433 1500 

1434* **Bereich**: [`User or managed`](#scopes). Lesen Sie überall dort, wo [`autoMode`](#automode) gelesen wird.1501* **Geltungsbereich**: [`User or managed`](#scopes). Wird überall dort gelesen, wo [`autoMode`](#automode) gelesen wird.

1435* **Typ**: Boolean1502* **Typ**: Boolean

1436 * `true`: Während der Auto-Modus aktiv ist, sendet Claude Code jeden Bash- und PowerShell-Befehl durch den Klassifizierer und setzt Ihre Shell-Allow-Regeln aus; außerhalb des Auto-Modus gelten die Regeln weiterhin1503 * `true`: Während der Auto-Modus aktiv ist, sendet Claude Code jeden Bash- und PowerShell-Befehl durch den Klassifikator und setzt Ihre Shell-Allow-Regeln aus; außerhalb des Auto-Modus gelten die Regeln weiterhin

1437 * `false`: Der Auto-Modus setzt nur Allow-Regeln aus, die beliebigen Code ausführen könnten, wie `Bash(*)` und `Bash(python *)`; ein Befehl, der einer anderen Allow-Regel entspricht, überspringt den Klassifizierer, es sei denn, er trägt [Pro-Befehl zulässige Domains](/docs/de/sandboxing#per-command-allowed-domains-in-auto-mode), und jeder andere Shell-Befehl wird durch ihn geleitet1504 * `false`: Der Auto-Modus setzt nur Allow-Regeln aus, die beliebigen Code ausführen könnten, wie `Bash(*)` und `Bash(python *)`; ein Befehl, der einer anderen Allow-Regel entspricht, überspringt den Klassifikator, es sei denn, er trägt [Pro-Befehl zulässige Domains](/docs/de/sandboxing#per-command-allowed-domains-in-auto-mode), und jeder andere Shell-Befehl wird durch ihn geleitet

1438* **Standard**: `false`1505* **Standard**: `false`

1439 1506 

1440```json settings.json theme={null}1507```json settings.json theme={null}


1445}1512}

1446```1513```

1447 1514 

1448Siehe [Alle Shell-Befehle durch den Klassifizierer leiten](/docs/de/auto-mode-config#route-all-shell-commands-through-the-classifier). Erfordert Claude Code v2.1.193 oder später.1515Siehe [Alle Shell-Befehle durch den Klassifikator leiten](/docs/de/auto-mode-config#route-all-shell-commands-through-the-classifier). Erfordert Claude Code v2.1.193 oder später.

1449 1516 

1450<h3 id="disableautomode">1517<h3 id="disableautomode">

1451 `disableAutoMode`1518 `disableAutoMode`


1453 1520 

1454Entfernen Sie den [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) aus dem `Shift+Tab`-Zyklus. Jede Sitzung, die sonst [im Auto-Modus starten würde](/docs/de/permission-modes#which-mode-a-session-starts-in), ob von `--permission-mode auto`, einer Einstellungsdatei oder dem integrierten Standard, startet stattdessen im `default`-Modus. Administratoren setzen es in verwalteten Einstellungen, um zu verhindern, dass Entwickler in ihrer Organisation den Auto-Modus verwenden.1521Entfernen Sie den [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) aus dem `Shift+Tab`-Zyklus. Jede Sitzung, die sonst [im Auto-Modus starten würde](/docs/de/permission-modes#which-mode-a-session-starts-in), ob von `--permission-mode auto`, einer Einstellungsdatei oder dem integrierten Standard, startet stattdessen im `default`-Modus. Administratoren setzen es in verwalteten Einstellungen, um zu verhindern, dass Entwickler in ihrer Organisation den Auto-Modus verwenden.

1455 1522 

1456* **Bereich**: [`Any file`](#scopes). Am nützlichsten in [verwalteten Einstellungen](/docs/de/managed-settings), wo Benutzer es nicht überschreiben können. Auch unter `permissions` als `permissions.disableAutoMode` akzeptiert.1523* **Geltungsbereich**: [`Any file`](#scopes). Am nützlichsten in [verwalteten Einstellungen](/docs/de/managed-settings), wo Benutzer es nicht überschreiben können. Auch unter `permissions` als `permissions.disableAutoMode` akzeptiert.

1457* **Typ**: die Zeichenfolge `"disable"`1524* **Typ**: die Zeichenfolge `"disable"`

1458* **Standard**: nicht gesetzt1525* **Standard**: nicht gesetzt

1459 1526 


1467 `permissions`1534 `permissions`

1468</h3>1535</h3>

1469 1536 

1470Steuern Sie, welche Tools Claude ohne Nachfrage verwenden kann, welche immer eine Aufforderung anzeigen, und welche blockiert sind, und legen Sie den [Berechtigungsmodus](/docs/de/permission-modes) fest, in dem eine Sitzung startet. Jeder `permissions.*`-Schlüssel unten verschachtelt sich unter diesem Objekt.1537Steuern Sie, welche Tools Claude ohne Nachfrage verwenden kann, bei welchen immer nachgefragt wird und welche blockiert sind, und legen Sie den [Berechtigungsmodus](/docs/de/permission-modes) fest, in dem eine Sitzung startet. Jeder `permissions.*`-Schlüssel unten verschachtelt sich unter diesem Objekt.

1471 1538 

1472* **Bereich**: [`Any file`](#scopes)1539* **Geltungsbereich**: [`Any file`](#scopes)

1473* **Typ**: Objekt mit `allow`, `ask`, `deny`, `additionalDirectories`, `blockReadsOutsideWorkingDirectories`, `defaultMode`, `disableBypassPermissionsMode` und `disableAutoMode`1540* **Typ**: Objekt mit `allow`, `ask`, `deny`, `additionalDirectories`, `blockReadsOutsideWorkingDirectories`, `defaultMode`, `disableBypassPermissionsMode` und `disableAutoMode`

1474* **Standard**: nicht gesetzt1541* **Standard**: nicht gesetzt

1475 1542 

1476Dieses Beispiel genehmigt `npm run`-Befehle ohne Nachfrage, fordert vor `git push` auf, blockiert Lesevorgänge von `.env` und startet Sitzungen im `acceptEdits`-Modus:1543Dieses Beispiel genehmigt `npm run`-Befehle ohne Nachfrage, fragt vor `git push` nach, blockiert Lesevorgänge von `.env` und startet Sitzungen im `acceptEdits`-Modus:

1477 1544 

1478```json settings.json theme={null}1545```json settings.json theme={null}

1479{1546{


1486}1553}

1487```1554```

1488 1555 

1489Die drei Regel-Arrays teilen sich eine Syntax; siehe [Berechtigungsregelsyntax](#permission-rule-syntax) unter `permissions.allow`. Informationen dazu, wie Berechtigungsregeln aus verschiedenen Dateien kombiniert werden, finden Sie unter [Wie Berechtigungsregeln über Bereiche hinweg zusammengeführt werden](/docs/de/permissions#settings-precedence); Informationen dazu, wie Einstellungsschlüssel im Allgemeinen kombiniert werden, finden Sie unter [Einstellungspriorität](/docs/de/settings#settings-precedence) im Einstellungshandbuch.1556Die drei Regel-Arrays teilen sich eine Syntax; siehe [Berechtigungsregelsyntax](#permission-rule-syntax) unter `permissions.allow`. Informationen dazu, wie Berechtigungsregeln aus verschiedenen Dateien kombiniert werden, finden Sie unter [Wie Berechtigungsregeln über Geltungsbereiche hinweg zusammengeführt werden](/docs/de/permissions#settings-precedence); Informationen dazu, wie Einstellungsschlüssel im Allgemeinen kombiniert werden, finden Sie unter [Einstellungspriorität](/docs/de/settings#settings-precedence) im Einstellungshandbuch.

1490 1557 

1491<h3 id="useautomodeduringplan">1558<h3 id="useautomodeduringplan">

1492 `useAutoModeDuringPlan`1559 `useAutoModeDuringPlan`

1493</h3>1560</h3>

1494 1561 

1495Wählen Sie, ob Claude Code den Auto-Modus-Klassifizierer verwendet, um Shell-Befehle im Plan-Modus zu überprüfen. Mit dem Standard `true` überprüft der Klassifizierer jeden Befehl während der Planung, wenn der Auto-Modus verfügbar ist, und Sie sehen keine Aufforderung. Setzen Sie `false`, um für jeden Befehl außerhalb des integrierten schreibgeschützten Satzes eine Berechtigungsaufforderung zu erhalten. Wird in `/config` als **Auto-Modus während Plan verwenden** angezeigt.1562Wählen Sie, ob Claude Code den Auto-Modus-Klassifikator verwendet, um Shell-Befehle im Plan-Modus zu überprüfen. Mit dem Standard `true` überprüft der Klassifikator jeden Befehl während der Planung, wenn der Auto-Modus verfügbar ist, und Sie sehen keine Abfrage, außer bei [Entfernungen kritischer Pfade](/docs/de/permission-modes#critical-paths). Setzen Sie `false`, um für jeden Befehl außerhalb des integrierten Satzes nur lesender Befehle eine Berechtigungsabfrage zu erhalten. Wird in `/config` als **Auto-Modus während Plan verwenden** angezeigt.

1496 1563 

1497* **Bereich**: [`User, local, or managed`](#scopes). Ein Repository kann es nicht für Sie ausschalten.1564* **Geltungsbereich**: [`User, local, or managed`](#scopes). Ein Repository kann es nicht für Sie ausschalten.

1498* **Typ**: Boolean1565* **Typ**: Boolean

1499 * `true`: dasselbe wie nicht gesetzt; wenn der Auto-Modus verfügbar ist, überprüft der Klassifizierer jeden Shell-Befehl während der Planung, anstatt Sie dafür aufzufordern. Ein `false` in einer dieser Dateien schaltet es immer noch aus1566 * `true`: dasselbe wie nicht gesetzt; wenn der Auto-Modus verfügbar ist, überprüft der Klassifikator jeden Shell-Befehl während der Planung, anstatt bei Ihnen nachzufragen, außer bei [Entfernungen kritischer Pfade](/docs/de/permission-modes#critical-paths). Ein `false` in einer dieser Dateien schaltet es immer noch aus

1500 * `false`: Sie erhalten eine Berechtigungsaufforderung für jeden Befehl außerhalb des integrierten schreibgeschützten Satzes1567 * `false`: Sie erhalten eine Berechtigungsabfrage für jeden Befehl außerhalb des integrierten Satzes nur lesender Befehle

1501* **Standard**: `true`1568* **Standard**: `true`

1502 1569 

1503```json settings.json theme={null}1570```json settings.json theme={null}


1512 1579 

1513Listen Sie die Tool-Verwendungen auf, die Claude Code ohne Nachfrage genehmigt. In einer MCP-Regel kann `*` nur im Tool-Namen nach dem `mcp__<server>__`-Präfix erscheinen, wie `mcp__github__get_*`; es kann nicht im Server-Namen erscheinen.1580Listen Sie die Tool-Verwendungen auf, die Claude Code ohne Nachfrage genehmigt. In einer MCP-Regel kann `*` nur im Tool-Namen nach dem `mcp__<server>__`-Präfix erscheinen, wie `mcp__github__get_*`; es kann nicht im Server-Namen erscheinen.

1514 1581 

1515* **Bereich**: [`Any file`](#scopes)1582* **Geltungsbereich**: [`Any file`](#scopes)

1516* **Typ**: Array von Berechtigungsregel-Zeichenfolgen1583* **Typ**: Array von Berechtigungsregel-Zeichenfolgen

1517* **Standard**: nicht gesetzt1584* **Standard**: nicht gesetzt

1518* **Sitzungsspezifische Überschreibungen**: `--allowedTools` fügt Allow-Regeln für eine Sitzung hinzu, und eine Deny-Regel aus einer Einstellungsdatei blockiert immer noch ein Tool, das sie benennt1585* **Sitzungsspezifische Überschreibungen**: `--allowedTools` fügt Allow-Regeln für eine Sitzung hinzu, und eine Deny-Regel aus einer Einstellungsdatei blockiert immer noch ein Tool, das sie benennt


1535 1602 

1536Berechtigungsregeln folgen dem Format `Tool` oder `Tool(specifier)`. Claude Code wertet `deny`-Regeln zuerst aus, dann `ask`, dann `allow`, und die erste Übereinstimmung entscheidet, unabhängig davon, wie spezifisch jede Regel ist; siehe die [Berechtigungsregel-Evaluierungsreihenfolge](/docs/de/permissions#manage-permissions).1603Berechtigungsregeln folgen dem Format `Tool` oder `Tool(specifier)`. Claude Code wertet `deny`-Regeln zuerst aus, dann `ask`, dann `allow`, und die erste Übereinstimmung entscheidet, unabhängig davon, wie spezifisch jede Regel ist; siehe die [Berechtigungsregel-Evaluierungsreihenfolge](/docs/de/permissions#manage-permissions).

1537 1604 

1538Jede Zeile zeigt eine Regelform und was sie entspricht.1605Jede Zeile zeigt eine Regelform und worauf sie zutrifft.

1539 1606 

1540| Regel | Was sie entspricht |1607| Regel | Worauf sie zutrifft |

1541| :- | :- |1608| :- | :- |

1542| `Bash` | Jeder Bash-Befehl |1609| `Bash` | Jeder Bash-Befehl |

1543| `Bash(npm run *)` | Befehle, die mit `npm run` beginnen |1610| `Bash(npm run *)` | Befehle, die mit `npm run` beginnen |


1550 `permissions.ask`1617 `permissions.ask`

1551</h3>1618</h3>

1552 1619 

1553Listen Sie die Tool-Verwendungen auf, die Sie zur Bestätigung auffordern, auch in einem Berechtigungsmodus, der sie sonst genehmigen würde, wie `acceptEdits` oder `bypassPermissions`. Im `dontAsk`-Modus verweigert Claude Code eine entsprechende Tool-Verwendung, anstatt aufzufordern.1620Listen Sie die Tool-Verwendungen auf, bei denen Sie um Bestätigung gebeten werden, auch in einem Berechtigungsmodus, der sie sonst genehmigen würde, wie `acceptEdits` oder `bypassPermissions`. Im `dontAsk`-Modus verweigert Claude Code eine entsprechende Tool-Verwendung, anstatt nachzufragen.

1554 1621 

1555* **Bereich**: [`Any file`](#scopes)1622* **Geltungsbereich**: [`Any file`](#scopes)

1556* **Typ**: Array von Berechtigungsregel-Zeichenfolgen1623* **Typ**: Array von Berechtigungsregel-Zeichenfolgen

1557* **Standard**: nicht gesetzt1624* **Standard**: nicht gesetzt

1558 1625 


1572 1639 

1573Listen Sie die Tool-Verwendungen auf, die Claude Code blockiert. Verwenden Sie es für Dateien, die API-Schlüssel, Geheimnisse oder Umgebungswerte enthalten: Claude Code schließt entsprechende Dateien aus der Dateiermittlung und Suchergebnissen aus, verweigert Lesevorgänge dafür und blockiert die [Edit- und Write-Tools](/docs/de/permissions#read-and-edit) auf den entsprechenden Pfaden.1640Listen Sie die Tool-Verwendungen auf, die Claude Code blockiert. Verwenden Sie es für Dateien, die API-Schlüssel, Geheimnisse oder Umgebungswerte enthalten: Claude Code schließt entsprechende Dateien aus der Dateiermittlung und Suchergebnissen aus, verweigert Lesevorgänge dafür und blockiert die [Edit- und Write-Tools](/docs/de/permissions#read-and-edit) auf den entsprechenden Pfaden.

1574 1641 

1575Read- und Edit-Deny-Regeln gelten für Claude's integrierte Datei-Tools, für Dateibefehle, die Claude Code in Bash erkennt, wie `cat`, `head`, `tail`, `sed` und `tee`, und für die Ziele von Bash-[Umleitungen](/docs/de/permissions#redirections) wie `> file` und `< file`; sie gelten nicht für einen Befehl, der Dateien liest, ohne sie zu benennen, wie `grep -r pattern .`, oder für beliebige Unterprozesse, daher [aktivieren Sie die Sandbox](/docs/de/sandboxing) für OS-Ebenen-Durchsetzung.1642Read- und Edit-Deny-Regeln gelten für die integrierten Datei-Tools von Claude, für Dateibefehle, die Claude Code in Bash erkennt, wie `cat`, `head`, `tail`, `sed` und `tee`, und für die Ziele von Bash-[Umleitungen](/docs/de/permissions#redirections) wie `> file` und `< file`; sie gelten nicht für einen Befehl, der Dateien liest, ohne sie zu benennen, wie `grep -r pattern .`, oder für beliebige Unterprozesse, daher [aktivieren Sie die Sandbox](/docs/de/sandboxing) für eine Durchsetzung auf Betriebssystemebene.

1576 1643 

1577* **Bereich**: [`Any file`](#scopes)1644* **Geltungsbereich**: [`Any file`](#scopes)

1578* **Typ**: Array von Berechtigungsregel-Zeichenfolgen1645* **Typ**: Array von Berechtigungsregel-Zeichenfolgen

1579* **Standard**: nicht gesetzt1646* **Standard**: nicht gesetzt

1580* **Sitzungsspezifische Überschreibungen**: `--disallowedTools` fügt Deny-Regeln für eine Sitzung neben diesem Schlüssel hinzu1647* **Sitzungsspezifische Überschreibungen**: `--disallowedTools` fügt Deny-Regeln für eine Sitzung neben diesem Schlüssel hinzu

1581 1648 

1582Dieses Beispiel verweigert Lesevorgänge von `.env`-Dateien, dem `secrets`-Verzeichnis und einer Credentials-Datei und blockiert `curl`-Befehle:1649Dieses Beispiel verweigert Lesevorgänge von `.env`-Dateien, dem `secrets`-Verzeichnis und einer Datei mit Anmeldedaten und blockiert `curl`-Befehle:

1583 1650 

1584```json settings.json theme={null}1651```json settings.json theme={null}

1585{1652{


1595}1662}

1596```1663```

1597 1664 

1598Tool-Namen akzeptieren Glob-Muster, daher verweigert `"*"` jedes Tool und `"mcp__*"` verweigert jedes MCP-Tool. Claude Code ignoriert eine Deny-Regel für das [`EndConversation`](/docs/de/tools-reference#endconversation-tool-behavior)-Tool, solange noch ein anderes Tool für Claude verfügbar ist. Eine `Bash`-Deny-Regel entspricht dem Befehl, wie Claude ihn schreibt, daher stoppt `Bash(curl *)` nicht `/usr/bin/curl` oder `sh -c 'curl …'`; siehe [was eine Bash-Regel nicht entspricht](/docs/de/permissions#bash-rule-limits). Dieser Schlüssel ersetzt die veraltete `ignorePatterns`-Konfiguration.1665Tool-Namen akzeptieren Glob-Muster, daher verweigert `"*"` jedes Tool und `"mcp__*"` verweigert jedes MCP-Tool. Claude Code ignoriert eine Deny-Regel für das [`EndConversation`](/docs/de/tools-reference#endconversation-tool-behavior)-Tool, solange noch ein anderes Tool für Claude verfügbar ist. Eine `Bash`-Deny-Regel gleicht den Befehl so ab, wie Claude ihn schreibt, daher stoppt `Bash(curl *)` nicht `/usr/bin/curl` oder `sh -c 'curl …'`; siehe [worauf eine Bash-Regel nicht zutrifft](/docs/de/permissions#bash-rule-limits). Dieser Schlüssel ersetzt die veraltete `ignorePatterns`-Konfiguration.

1599 1666 

1600<h3 id="permissions-additionaldirectories">1667<h3 id="permissions-additionaldirectories">

1601 `permissions.additionalDirectories`1668 `permissions.additionalDirectories`

1602</h3>1669</h3>

1603 1670 

1604Geben Sie Claude Dateizugriff auf Verzeichnisse außerhalb desjenigen, in dem Sie gestartet haben, als zusätzliche [Arbeitsverzeichnisse](/docs/de/permissions#working-directories). Die meisten `.claude/`-Konfigurationen werden [nicht ermittelt](/docs/de/permissions#additional-directories-grant-file-access-not-configuration) aus diesen Verzeichnissen.1671Geben Sie Claude Dateizugriff auf Verzeichnisse außerhalb desjenigen, in dem Sie gestartet haben, als zusätzliche [Arbeitsverzeichnisse](/docs/de/permissions#working-directories). Die meisten `.claude/`-Konfigurationen werden aus diesen Verzeichnissen [nicht ermittelt](/docs/de/permissions#additional-directories-grant-file-access-not-configuration).

1605 1672 

1606* **Bereich**: [`Any file`](#scopes)1673* **Geltungsbereich**: [`Any file`](#scopes), mit [Einschränkungen beim Sandbox-Schreibzugriff](/docs/de/sandboxing#repository-settings-under-an-admin-required-sandbox), den Projekt- und lokale Einträge gewähren

1607* **Typ**: Array von Verzeichnispfaden1674* **Typ**: Array von Verzeichnispfaden

1608* **Standard**: nicht gesetzt1675* **Standard**: nicht gesetzt

1609* **Sitzungsspezifische Überschreibungen**: `--add-dir` und `/add-dir` fügen Verzeichnisse für eine Sitzung neben diesem Schlüssel hinzu1676* **Sitzungsspezifische Überschreibungen**: `--add-dir` und `/add-dir` fügen Verzeichnisse für eine Sitzung neben diesem Schlüssel hinzu


1622 `permissions.blockReadsOutsideWorkingDirectories`1689 `permissions.blockReadsOutsideWorkingDirectories`

1623</h3>1690</h3>

1624 1691 

1625Verhindern Sie, dass Claude Pfade außerhalb der [Arbeitsverzeichnisse](/docs/de/permissions#working-directories) der Sitzung mit den Read-, Grep-, Glob- und LSP-Tools liest, in jedem Berechtigungsmodus, einschließlich `bypassPermissions`. Ein Bash-Befehl, der einen entsprechenden Pfad durch einen Dateiberfehl liest, den Claude Code erkennt, wie `cat`, fordert Sie auf, auch im Auto-Modus und `bypassPermissions`-Modus. Erfordert Claude Code v2.1.257 oder später.1692Lassen Sie die Datei-Tools von Claude Lesevorgänge außerhalb Ihrer [Arbeitsverzeichnisse](/docs/de/permissions#working-directories) in jedem Berechtigungsmodus verweigern, einschließlich `bypassPermissions`. Claude Code verweigert `Read`-, `Grep`-, `Glob`- und `LSP`-Aufrufe für diese Pfade und weist Claude an, Sie zu bitten, das Verzeichnis mit `/add-dir` hinzuzufügen. Dateien, die Claude Code selbst benötigt, bleiben lesbar, etwa Ihre Skills, Plugins, Regeln, Agenten, Befehle und die Memory-Datei `CLAUDE.md` unter `~/.claude/`. Erfordert Claude Code v2.1.257 oder später.

1693 

1694Shell-Befehle verweigert Claude Code nicht auf dieselbe Weise:

1695 

1696* [Aktionen, die kein Modus automatisch genehmigt](/docs/de/permission-modes#actions-no-mode-auto-approves) beschreibt, wann ein Shell-Befehl, der einen solchen Pfad liest, bei Ihnen nachfragt

1697* [In einer Sandbox ausgeführte Befehle unter der Blockierung](#sandboxed-commands-under-the-block) beschreibt, was ein in einer Sandbox ausgeführter Befehl lesen kann

1626 1698 

1627Ein Bash-Befehl, den der Shell-Parser nicht verfolgen kann, wie einer, der das Verzeichnis mehr als einmal wechselt oder eine Subshell ausführt, fordert Sie auf, auch im Auto-Modus und `bypassPermissions`-Modus. Die Aufforderung wird angezeigt, auch wenn der Befehl keinen Pfad außerhalb der Arbeitsverzeichnisse benennt. Diese Aufforderung gilt nicht, wenn der Befehl in der [Sandbox](/docs/de/sandboxing) ausgeführt wird und die Sandbox die Blockierung durchsetzt.1699Ein Bash-Befehl, den der Shell-Parser nicht nachverfolgen kann, etwa einer, der das Verzeichnis mehr als einmal wechselt oder eine Subshell ausführt, fragt auch im Auto-Modus und im `bypassPermissions`-Modus bei Ihnen nach. Die Abfrage erscheint auch dann, wenn der Befehl keinen Pfad außerhalb der Arbeitsverzeichnisse benennt. Diese Abfrage entfällt, wenn der Befehl in der [Sandbox](/docs/de/sandboxing) ausgeführt wird und die Sandbox die Blockierung durchsetzt.

1628 1700 

1629Claude Code schreibt auch `true` hier, wenn Sie sich entscheiden, solche Lesevorgänge auf [Auto-Modus-Aufforderung vor dem ersten Lesevorgang außerhalb der Arbeitsverzeichnisse](/docs/de/permission-modes#first-read-outside-the-working-directories) zu blockieren.1701Claude Code schreibt hier außerdem `true`, wenn Sie in der [Abfrage des Auto-Modus vor dem ersten Lesevorgang außerhalb der Arbeitsverzeichnisse](/docs/de/permission-modes#first-read-outside-the-working-directories) festlegen, solche Lesevorgänge zu blockieren.

1630 1702 

1631* **Bereich**: [`Any file`](#scopes). Wenn eine Einstellungsquelle `true` setzt, gilt die Blockierung, daher kann die eingecheckte Datei eines Repositorys die Blockierung für ein Projekt aktivieren, kann aber eine Blockierung, die Sie setzen, nicht aufheben.1703* **Geltungsbereich**: [`Any file`](#scopes). Ein `true` in einer beliebigen Datei gilt, daher kann ein Repository die Blockierung für sich selbst aktivieren, Ihre Blockierung aber nicht aufheben.

1632* **Typ**: Boolean1704* **Typ**: Boolean

1633 * `true`: Dateilesevorgänge außerhalb der Arbeitsverzeichnisse werden blockiert1705 * `true`: Die Datei-Tools von Claude verweigern Lesevorgänge außerhalb der Arbeitsverzeichnisse

1634 * `false`: dasselbe wie nicht gesetzt; ein `true` in einer anderen Einstellungsdatei blockiert immer noch1706 * `false`: dasselbe wie nicht gesetzt; die Blockierung gilt trotzdem, wenn eine andere Datei `true` setzt

1635* **Standard**: nicht gesetzt, daher folgen Lesevorgänge außerhalb der Arbeitsverzeichnisse Ihrem Berechtigungsmodus und Ihren Regeln1707* **Standard**: nicht gesetzt, daher folgen Lesevorgänge außerhalb der Arbeitsverzeichnisse Ihrem [Berechtigungsmodus](/docs/de/permission-modes)

1636 1708 

1637```json settings.json theme={null}1709```json settings.json theme={null}

1638{1710{


1642}1714}

1643```1715```

1644 1716 

1645Wenn nur die eingecheckte Einstellungsdatei eines Repositorys ein Verzeichnis hinzufügt, gilt die Blockierung immer noch für Lesevorgänge dort. Wenn [`autoMemoryDirectory`](#automemorydirectory) aus der `.claude/settings.json` des Projekts kommt oder aus einer `.claude/settings.local.json` [als Repository-bereitgestellt behandelt](/docs/de/permissions#when-your-local-settings-file-needs-trust), lädt Claude Code kein [Auto-Memory](/docs/de/memory#storage-location) aus diesem Verzeichnis und speichert keines darin. Dateien, die Claude Code selbst benötigt, bleiben lesbar, wie Ihre Skills, Plugins, Regeln, Agents, Befehle und die `CLAUDE.md`-Speicherdatei unter `~/.claude/`.1717Verzeichnisse, die Sie mit `--add-dir`, `/add-dir` oder `additionalDirectories` in Ihren Benutzer- oder verwalteten Einstellungen hinzufügen, zählen für die Blockierung als Arbeitsverzeichnisse. Verzeichnisse, die nur in Repository-Einstellungen hinzugefügt werden, zählen nicht: solche in `.claude/settings.json` und solche in `.claude/settings.local.json`, sofern Git diese Datei nicht als nicht verfolgt meldet. In einem Verzeichnis, das kein Git-Repository ist, oder wenn Git die Datei verfolgt, behandelt Claude Code `.claude/settings.local.json` als Repository-Einstellungen; legen Sie Verzeichnisse, die lesbar bleiben sollen, daher stattdessen in Ihren Benutzereinstellungen fest.

1718 

1719Wenn [`autoMemoryDirectory`](#automemorydirectory) aus der `.claude/settings.json` des Projekts kommt oder aus einer `.claude/settings.local.json`, die [als vom Repository bereitgestellt behandelt wird](/docs/de/permissions#when-your-local-settings-file-needs-trust), lädt Claude Code kein [Auto-Memory](/docs/de/memory#storage-location) aus diesem Verzeichnis und speichert keines darin.

1720 

1721Um die Blockierung aufzuheben, entfernen Sie den Schlüssel aus jeder Einstellungsdatei, die ihn setzt, und starten Sie dann eine neue Sitzung.

1722 

1723<h4 id="sandboxed-commands-under-the-block">

1724 In einer Sandbox ausgeführte Befehle unter der Blockierung

1725</h4>

1726 

1727Wenn [Sandboxing](/docs/de/sandboxing) aktiviert ist, umfasst die Blockierung auch in einer Sandbox ausgeführte Befehle. Claude Code verweigert ihnen den Lesezugriff auf Ihr Home-Verzeichnis und auf die anderen Stammverzeichnisse, die Benutzerdateien enthalten: `/Users`, `/home`, `/root`, `/Volumes`, `/mnt`, `/media`, `/run/media` und `/srv`. Anschließend gibt es die Arbeitsverzeichnisse, die [Worktrees](/docs/de/worktrees), die Claude Code in der Sitzung erstellt, das temporäre Verzeichnis der Sitzung und die Teile von `~/.claude`, die Befehle benötigen, etwa Skills und Plugins, wieder frei. Solange die Blockierung gilt, zählen `allowRead`- und `allowWrite`-Einträge aus Repository-Einstellungen nicht.

1728 

1729Wenn das Arbeitsverzeichnis der Sitzung ein verknüpfter [Git-Worktree](/docs/de/worktrees) ist, einschließlich eines, den Claude Code während der Sitzung betreten hat, bleibt das gemeinsame `.git`-Verzeichnis des Repositorys für in einer Sandbox ausgeführte Befehle lesbar und beschreibbar, sodass Git dort weiterhin funktioniert.

1730 

1731In diesen Fällen erreicht die Blockierung in einer Sandbox ausgeführte Befehle nicht, während die Datei-Tools von Claude sie weiterhin durchsetzen:

1646 1732 

1647Wenn die [Sandbox](/docs/de/sandboxing) aktiviert ist, verweigert die Blockierung auch sandboxierten Befehlen Lesezugriff auf Home-Verzeichnisse und bereitgestellte Volume-Roots außerhalb der Arbeitsverzeichnisse. Ein Wiederholungsversuch, der Genehmigung benötigt, um [außerhalb der Sandbox](/docs/de/sandboxing#the-unsandboxed-retry-escape-hatch) zu laufen, fordert Sie auf, auch im `bypassPermissions`-Modus. Dateien, die ein Tool aus Ihrem Home-Verzeichnis liest, wie `~/.gitconfig`, werden mit dem Rest verweigert; öffnen Sie einen bestimmten Pfad mit [`sandbox.filesystem.allowRead`](#sandbox-filesystem-allowread) erneut, wenn ein Tool ihn benötigt.1733* Die Dateisystemisolierung ist über [`sandbox.filesystem.disabled`](#sandbox-filesystem-disabled) deaktiviert

1734* [`allowManagedReadPathsOnly`](#sandbox-filesystem-allowmanagedreadpathsonly) ist gesetzt

1735* Der Pfad des Verzeichnisses, in dem Sie Claude Code gestartet haben, enthält ein Glob-Zeichen wie `*`, `?` oder `[`

1648 1736 

1649Wenn das Arbeitsverzeichnis der Sitzung ein verknüpftes [Git Worktree](/docs/de/worktrees) ist, einschließlich eines, das Claude Code während der Sitzung eingegeben hat, bleibt das gemeinsame `.git`-Verzeichnis des Repositorys für sandboxierte Befehle lesbar und beschreibbar, damit Git dort funktioniert.1737Unter der Blockierung gibt Claude Code Ihre globalen Git-Konfigurationsdateien für in einer Sandbox ausgeführte Befehle wieder frei, damit `git` Ihre Identität und Einstellungen beibehält:

1738 

1739* `~/.gitconfig`

1740* Die Dateien `config`, `ignore` und `attributes` unter `$XDG_CONFIG_HOME/git`, standardmäßig `~/.config/git`

1741* Dateien, die Ihre globale Git-Konfiguration über `[include]`, `[includeIf]`, `core.excludesFile` oder `core.attributesFile` angibt

1742 

1743Claude Code beurteilt jede Datei einzeln. Wenn eine Datei an einem Ort liegt, an dem ein in einer Sandbox ausgeführter Befehl schreiben kann, direkt oder über einen Symlink, gibt Claude Code die darin angegebenen Dateien nicht wieder frei.

1744 

1745Unter Linux und WSL2 kann eine Konfigurationsdatei, die ein Symlink ist, unter ihrem eigenen Pfad unlesbar bleiben; `git` läuft dann ohne sie. `~/.git-credentials` und `$XDG_CONFIG_HOME/git/credentials` bleiben blockiert.

1746 

1747Wenn eine wieder freigegebene Datei ein Geheimnis enthält, etwa ein `http.extraHeader`-Token, fügen Sie ihren Pfad zu [`sandbox.filesystem.denyRead`](#sandbox-filesystem-denyread) hinzu. Ein `denyRead`-Eintrag, der eine Datei abdeckt, hat immer Vorrang vor dieser Freigabe.

1650 1748 

1651<h3 id="permissions-defaultmode">1749<h3 id="permissions-defaultmode">

1652 `permissions.defaultMode`1750 `permissions.defaultMode`

1653</h3>1751</h3>

1654 1752 

1655Legen Sie den [Berechtigungsmodus](/docs/de/permission-modes) fest, in dem neue Sitzungen starten. Wenn Sie ihn nicht gesetzt lassen, starten Sitzungen im [integrierten Standard](/docs/de/permission-modes#which-mode-a-session-starts-in) für Ihren Plan und Ihre Oberfläche.1753Legen Sie den [Berechtigungsmodus](/docs/de/permission-modes) fest, in dem neue Sitzungen starten. Wenn Sie ihn nicht gesetzt lassen, starten Sitzungen im [integrierten Standard](/docs/de/permission-modes#which-mode-a-session-starts-in) für Ihre Oberfläche.

1656 1754 

1657* **Bereich**: [`Any file`](#scopes). `auto` und `bypassPermissions` werden nicht aus Projekt- oder lokalen Einstellungen wirksam, daher setzen Sie sie stattdessen in `~/.claude/settings.json`. Vor v2.1.257 wurde `bypassPermissions` aus jeder Datei wirksam. Für Konversationen, die die VS Code-Erweiterung startet, liest Claude Code nur Benutzer-, verwaltete und `--settings`-Werte.1755* **Geltungsbereich**: [`Any file`](#scopes). `auto` und `bypassPermissions` werden nicht aus Projekt- oder lokalen Einstellungen wirksam, daher setzen Sie sie stattdessen in `~/.claude/settings.json`. Vor v2.1.257 wurde `bypassPermissions` aus jeder Datei wirksam. Für Konversationen, die die VS Code-Erweiterung startet, liest Claude Code nur Benutzer-, verwaltete und `--settings`-Werte.

1658* **Typ**: Zeichenfolge, eine von:1756* **Typ**: Zeichenfolge, eine von:

1659 * `"default"`: Claude Code führt nur Lesevorgänge ohne Nachfrage aus1757 * `"default"`: Claude Code führt nur Lesevorgänge ohne Nachfrage aus

1660 * `"acceptEdits"`: Claude Code führt auch Dateibearbeitungen und häufige Dateisystem-Befehle wie `mkdir` und `mv` ohne Nachfrage aus1758 * `"acceptEdits"`: Claude Code führt auch Dateibearbeitungen und häufige Dateisystem-Befehle wie `mkdir` und `mv` ohne Nachfrage aus

1661 * `"plan"`: Claude Code liest und plant, blockiert aber Bearbeitungen, bis Sie einen Plan genehmigen1759 * `"plan"`: Claude Code liest und plant, blockiert aber Bearbeitungen, bis Sie einen Plan genehmigen

1662 * `"auto"`: Claude Code führt alles aus, mit Hintergrund-Sicherheitsprüfungen1760 * `"auto"`: Claude Code läuft ohne die üblichen Nachfragen; bevor Aktionen wie Shell-Befehle und Netzwerkanfragen ausgeführt werden, prüft ein Klassifikator im Hintergrund, ob sie mit Ihrer Anfrage übereinstimmen

1663 * `"dontAsk"`: Claude Code verweigert automatisch jeden Aufruf, der sonst auffordern würde; Lesevorgänge, andere Aktionen, die keine Genehmigung benötigen, und vorab genehmigte Tools werden weiterhin ausgeführt1761 * `"dontAsk"`: Claude Code verweigert automatisch jeden Aufruf, bei dem sonst nachgefragt würde; Lesevorgänge, andere Aktionen, die keine Genehmigung benötigen, und vorab genehmigte Tools werden weiterhin ausgeführt

1664 * `"bypassPermissions"`: Claude Code führt alles ohne Nachfrage aus1762 * `"bypassPermissions"`: Claude Code führt alles ohne Nachfrage aus

1665 * `"manual"`: ein Alias für `"default"`, in Claude Code v2.1.200 oder später1763 * `"manual"`: ein Alias für `"default"`, in Claude Code v2.1.200 oder später

1666* **Standard**: nicht gesetzt1764* **Standard**: nicht gesetzt


1674}1772}

1675```1773```

1676 1774 

1677Berechtigungsregeln überlagern jeden Modus: `deny`-Regeln blockieren in jedem Modus, einschließlich `bypassPermissions`. Siehe [Berechtigungsmodi](/docs/de/permission-modes). `manual` benennt den Berechtigungsmodus mit der Bezeichnung Manual in der CLI und der VS Code-Erweiterung; der Alias erfordert Claude Code v2.1.200 oder später. In Cloud-Sitzungen ehrt Claude Code nur `acceptEdits`, `plan`, `default` und `auto` aus diesem Schlüssel. Für Konversationen, die die VS Code-Erweiterung startet, siehe [welche Einstellung die Erweiterung für den Startberechtigungsmodus liest](/docs/de/permission-modes#switch-permission-modes).1775Berechtigungsregeln überlagern jeden Modus: `deny`-Regeln blockieren in jedem Modus, einschließlich `bypassPermissions`. Siehe [Berechtigungsmodi](/docs/de/permission-modes). `manual` benennt den Berechtigungsmodus mit der Bezeichnung Manual in der CLI und der VS Code-Erweiterung; der Alias erfordert Claude Code v2.1.200 oder später. In Cloud-Sitzungen berücksichtigt Claude Code nur `acceptEdits`, `plan`, `default` und `auto` aus diesem Schlüssel. Für Konversationen, die die VS Code-Erweiterung startet, siehe [welche Einstellung die Erweiterung für den Start-Berechtigungsmodus liest](/docs/de/permission-modes#switch-permission-modes).

1678 1776 

1679<h3 id="permissions-disablebypasspermissionsmode">1777<h3 id="permissions-disablebypasspermissionsmode">

1680 `permissions.disableBypassPermissionsMode`1778 `permissions.disableBypassPermissionsMode`

1681</h3>1779</h3>

1682 1780 

1683Verhindern Sie, dass jemand den `bypassPermissions`-Modus betritt. Claude Code lehnt dann das `--dangerously-skip-permissions`-Flag ab und ignoriert eine [Agent-Definition's](/docs/de/sub-agents#permission-modes) `permissionMode: bypassPermissions`, daher wird der Subagent mit dem Berechtigungsmodus der übergeordneten Sitzung ausgeführt.1781Verhindern Sie, dass jemand den `bypassPermissions`-Modus betritt. Claude Code lehnt dann das `--dangerously-skip-permissions`-Flag ab und ignoriert die Angabe `permissionMode: bypassPermissions` in einer [Agent-Definition](/docs/de/sub-agents#permission-modes), daher wird der Subagent mit dem Berechtigungsmodus der übergeordneten Sitzung ausgeführt.

1684 1782 

1685* **Bereich**: [`Any file`](#scopes). Typischerweise in [verwalteten Einstellungen](/docs/de/managed-settings) gesetzt, um Organisationsrichtlinien durchzusetzen.1783* **Geltungsbereich**: [`Any file`](#scopes). Typischerweise in [verwalteten Einstellungen](/docs/de/managed-settings) gesetzt, um Organisationsrichtlinien durchzusetzen.

1686* **Typ**: die Zeichenfolge `"disable"`1784* **Typ**: die Zeichenfolge `"disable"`

1687* **Standard**: nicht gesetzt1785* **Standard**: nicht gesetzt

1688* **Sitzungsspezifische Überschreibungen**: Dieser Schlüssel hat Vorrang vor `--dangerously-skip-permissions`, das Claude Code ablehnt, während der Schlüssel gesetzt ist1786* **Sitzungsspezifische Überschreibungen**: Dieser Schlüssel hat Vorrang vor `--dangerously-skip-permissions`, das Claude Code ablehnt, während der Schlüssel gesetzt ist


1703 1801 

1704Überspringen Sie die einmalige Mitteilung, die den [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) beschreibt und die Claude Code anzeigt, wenn Sie selbst zum ersten Mal den Auto-Modus betreten, beispielsweise durch Ihre eigenen Einstellungen oder den Modus-Selektor, anstatt wenn der integrierte Standard eine Sitzung darin startet. Claude Code zeigt diese Mitteilung einmal an und zeichnet dann auf, dass sie angezeigt wurde, daher ist dieser Schlüssel nur relevant, wenn die Mitteilung noch nicht angezeigt wurde.1802Überspringen Sie die einmalige Mitteilung, die den [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) beschreibt und die Claude Code anzeigt, wenn Sie selbst zum ersten Mal den Auto-Modus betreten, beispielsweise durch Ihre eigenen Einstellungen oder den Modus-Selektor, anstatt wenn der integrierte Standard eine Sitzung darin startet. Claude Code zeigt diese Mitteilung einmal an und zeichnet dann auf, dass sie angezeigt wurde, daher ist dieser Schlüssel nur relevant, wenn die Mitteilung noch nicht angezeigt wurde.

1705 1803 

1706* **Bereich**: [`User or managed`](#scopes). Ein Repository kann es nicht für Sie setzen.1804* **Geltungsbereich**: [`User or managed`](#scopes). Ein Repository kann es nicht für Sie setzen.

1707* **Typ**: Boolean1805* **Typ**: Boolean

1708 * `true`: Claude Code überspringt die Mitteilung1806 * `true`: Claude Code überspringt die Mitteilung

1709 * `false`: dasselbe wie nicht gesetzt; die Mitteilung wird einmal angezeigt, es sei denn, eine andere dieser Dateien setzt `true`1807 * `false`: dasselbe wie nicht gesetzt; die Mitteilung wird einmal angezeigt, es sei denn, eine andere dieser Dateien setzt `true`


1719 `skipDangerousModePermissionPrompt`1817 `skipDangerousModePermissionPrompt`

1720</h3>1818</h3>

1721 1819 

1722Überspringen Sie den Bestätigungsdialog, den Claude Code anzeigt, bevor eine Sitzung den `bypassPermissions`-Modus betritt, ob von `--dangerously-skip-permissions` oder von `defaultMode: "bypassPermissions"`. Claude Code schreibt `true` hier in Ihre Benutzereinstellungen, wenn Sie diesen Dialog einmal akzeptieren.1820Überspringen Sie den Bestätigungsdialog, den Claude Code anzeigt, bevor eine Sitzung den `bypassPermissions`-Modus betritt, ob von `--dangerously-skip-permissions` oder von `defaultMode: "bypassPermissions"`. Claude Code schreibt hier `true` in Ihre Benutzereinstellungen, wenn Sie diesen Dialog einmal akzeptieren.

1723 1821 

1724* **Bereich**: [`User, local, or managed`](#scopes). Ein nicht vertrauenswürdiges Repository kann den Dialog nicht für Sie überspringen.1822* **Geltungsbereich**: [`User, local, or managed`](#scopes). Ein nicht vertrauenswürdiges Repository kann den Dialog nicht für Sie überspringen.

1725* **Typ**: Boolean1823* **Typ**: Boolean

1726 * `true`: Claude Code überspringt den Bestätigungsdialog, bevor eine Sitzung den `bypassPermissions`-Modus betritt1824 * `true`: Claude Code überspringt den Bestätigungsdialog, bevor eine Sitzung den `bypassPermissions`-Modus betritt

1727 * `false`: dasselbe wie nicht gesetzt; der Dialog wird angezeigt, es sei denn, eine andere dieser Dateien setzt `true`1825 * `false`: dasselbe wie nicht gesetzt; der Dialog wird angezeigt, es sei denn, eine andere dieser Dateien setzt `true`


1743 `sandbox`1841 `sandbox`

1744</h3>1842</h3>

1745 1843 

1746Isolieren Sie die Bash-Befehle, die Claude ausführt, von Ihrem Dateisystem und Netzwerk mit [Sandboxing](/docs/de/sandboxing). Aktivieren Sie die Sandbox mit `enabled`, und grenzen Sie dann ein oder erweitern Sie, was sandboxed Befehle berühren können, mit den Unterobjekten `filesystem`, `network` und `credentials`. Die Sandbox läuft auf macOS, Linux und WSL2.1844Isolieren Sie die Bash-Befehle, die Claude ausführt, mit [Sandboxing](/docs/de/sandboxing) von Ihrem Dateisystem und Netzwerk. Aktivieren Sie die Sandbox mit `enabled`, und grenzen Sie dann mit den Unterobjekten `filesystem`, `network` und `credentials` ein oder erweitern Sie, worauf in der Sandbox ausgeführte Befehle zugreifen können. Die Sandbox läuft auf macOS, Linux und WSL2.

1747 1845 

1748* **Bereich**: [`Any file`](#scopes)1846* **Bereich**: [`Any file`](#scopes)

1749* **Typ**: Objekt mit `enabled`, `failIfUnavailable`, `autoAllowBashIfSandboxed`, `excludedCommands`, `allowUnsandboxedCommands`, `enableWeakerNestedSandbox`, `enableWeakerNetworkIsolation`, `allowAppleEvents`, `bwrapPath`, `socatPath`, `ignoreViolations` und `ripgrep`, plus die Objekte `filesystem`, `network` und `credentials`1847* **Typ**: Objekt mit `enabled`, `failIfUnavailable`, `autoAllowBashIfSandboxed`, `excludedCommands`, `allowUnsandboxedCommands`, `enableWeakerNestedSandbox`, `enableWeakerNetworkIsolation`, `allowAppleEvents`, `bwrapPath`, `socatPath`, `ignoreViolations` und `ripgrep`, plus die Objekte `filesystem`, `network` und `credentials`

1750* **Standard**: nicht gesetzt, daher führt Claude Code Befehle ohne Sandbox aus1848* **Standard**: nicht gesetzt, daher führt Claude Code Befehle ohne Sandbox aus

1751 1849 

1752Dies aktiviert die Sandbox, überspringt Berechtigungsaufforderungen für sandboxed Befehle, führt `docker` außerhalb der Sandbox aus, öffnet zwei zusätzliche Schreibpfade, verbirgt Ihre AWS-Anmeldedatei und erlaubt GitHub und npm vorab:1850Dies aktiviert die Sandbox, überspringt Berechtigungsabfragen für Befehle in der Sandbox, führt `docker` außerhalb der Sandbox aus, öffnet zwei zusätzliche Schreibpfade, verbirgt Ihre AWS-Anmeldedatei und erlaubt GitHub und npm vorab:

1753 1851 

1754```json settings.json theme={null}1852```json settings.json theme={null}

1755{1853{


1768}1866}

1769```1867```

1770 1868 

1771Claude Code nimmt den Wert eines booleschen Schlüssels aus dem Einstellungsbereich mit der höchsten Priorität, der ihn setzt, daher überschreibt ein verwalteter `enabled` oder `failIfUnavailable` alles, was ein Entwickler setzt. Es führt Array-Schlüssel über jeden Einstellungsbereich zusammen, den die Sitzung lädt, daher kann ein Entwickler Einträge anhängen; siehe [Keep developers from widening the policy](/docs/de/sandboxing#keep-developers-from-widening-the-policy) für die verwalteten Sperren. Um Sandboxing für eine Organisation zu erzwingen, siehe [Enforce sandboxing with managed settings](/docs/de/sandboxing#enforce-sandboxing-with-managed-settings).1869Wenn verwaltete Einstellungen einen booleschen Schlüssel wie `enabled` oder `failIfUnavailable` setzen, überschreibt dieser Wert alles, was ein Entwickler setzt. Claude Code führt Array-Schlüssel über die Einstellungsbereiche zusammen, die die Sitzung lädt, sodass ein Entwickler Einträge anhängen kann; siehe [Keep developers from widening the policy](/docs/de/sandboxing#keep-developers-from-widening-the-policy) für die Sperren, die nur in verwalteten Einstellungen gelten. Um Sandboxing für eine Organisation zu erzwingen, siehe [Enforce sandboxing with managed settings](/docs/de/sandboxing#enforce-sandboxing-with-managed-settings).

1772 1870 

1773<h3 id="sandbox-enabled">1871<h3 id="sandbox-enabled">

1774 `sandbox.enabled`1872 `sandbox.enabled`

1775</h3>1873</h3>

1776 1874 

1777Aktivieren Sie [Sandboxing](/docs/de/sandboxing) für Bash-Befehle. Wenn Sie einen Modus im `/sandbox`-Panel auswählen, schreibt Claude Code diesen Schlüssel in `.claude/settings.local.json` für das aktuelle Projekt; setzen Sie ihn in `~/.claude/settings.json`, um jedes Projekt zu sandboxen.1875Aktivieren Sie [Sandboxing](/docs/de/sandboxing) für Bash-Befehle. Wenn Sie einen Modus im `/sandbox`-Panel auswählen, schreibt Claude Code diesen Schlüssel in `.claude/settings.local.json` für das aktuelle Projekt; setzen Sie ihn in `~/.claude/settings.json`, um jedes Projekt in einer Sandbox auszuführen.

1778 1876 

1779* **Bereich**: [`Any file`](#scopes)1877* **Bereich**: [`Any file`](#scopes), mit [Einschränkungen für Projekt- und lokale Einstellungen](/docs/de/sandboxing#repository-settings-under-an-admin-required-sandbox)

1780* **Typ**: Boolescher Wert1878* **Typ**: Boolescher Wert

1781 * `true`: Claude Code sandboxed Bash-Befehle1879 * `true`: Claude Code führt Bash-Befehle in der Sandbox aus

1782 * `false`: Bash-Befehle werden unsandboxed ausgeführt1880 * `false`: Bash-Befehle werden ohne Sandbox ausgeführt

1783* **Standard**: `false`1881* **Standard**: `false`

1784 1882 

1785```json settings.json theme={null}1883```json settings.json theme={null}


1790}1888}

1791```1889```

1792 1890 

1793Auf Linux und WSL2 benötigt die Sandbox `bubblewrap` und `socat`; siehe [Set up Linux and WSL2](/docs/de/sandboxing#set-up-linux-and-wsl2). Wenn die Sandbox nicht starten kann, zeigt Claude Code eine Warnung an und führt Befehle unsandboxed aus, es sei denn, Sie setzen auch [`failIfUnavailable`](#sandbox-failifunavailable).1891Auf Linux und WSL2 benötigt die Sandbox `bubblewrap` und `socat`; siehe [Set up Linux and WSL2](/docs/de/sandboxing#set-up-linux-and-wsl2). Wenn die Sandbox nicht starten kann, führt Claude Code Befehle ohne Sandbox aus, es sei denn, Sie setzen auch [`failIfUnavailable`](#sandbox-failifunavailable).

1794 1892 

1795<h3 id="sandbox-failifunavailable">1893<h3 id="sandbox-failifunavailable">

1796 `sandbox.failIfUnavailable`1894 `sandbox.failIfUnavailable`

1797</h3>1895</h3>

1798 1896 

1799Lassen Sie Claude Code beim Start mit einem Fehler beenden, wenn `sandbox.enabled` `true` ist, aber die Sandbox nicht starten kann, weil eine Abhängigkeit fehlt oder die Plattform nicht unterstützt wird. Ohne dies zeigt Claude Code eine Warnung an und führt Befehle unsandboxed aus. Verwenden Sie es in verwalteten Einstellungen, wenn Ihre Organisation Sandboxing als harte Grenze erfordert.1897Lassen Sie Claude Code beim Start mit einem Fehler beenden, wenn `sandbox.enabled` `true` ist, die Sandbox aber nicht starten kann, weil eine Abhängigkeit fehlt oder die Plattform nicht unterstützt wird. Ohne diesen Schlüssel führt Claude Code Befehle ohne Sandbox aus. Verwaltete Bereitstellungen, die Sandboxing als Sicherheitsschranke erfordern, können diese Einstellung verwenden.

1800 1898 

1801* **Bereich**: [`Any file`](#scopes)1899Auf einer Plattform, die die Sandbox nicht unterstützt, startet Claude Code nicht, wenn dieser Schlüssel aktiviert ist. Siehe [Enforce sandboxing with managed settings](/docs/de/sandboxing#enforce-sandboxing-with-managed-settings).

1900 

1901* **Bereich**: [`Any file`](#scopes), mit [Einschränkungen für Projekt- und lokale Einstellungen](/docs/de/sandboxing#repository-settings-under-an-admin-required-sandbox)

1802* **Typ**: Boolescher Wert1902* **Typ**: Boolescher Wert

1803 * `true`: Claude Code beendet sich beim Start mit einem Fehler, wenn `sandbox.enabled` `true` ist, aber die Sandbox nicht starten kann1903 * `true`: Claude Code beendet sich beim Start mit einem Fehler, wenn `sandbox.enabled` `true` ist, die Sandbox aber nicht starten kann

1804 * `false`: Claude Code zeigt eine Warnung an und führt Befehle unsandboxed aus1904 * `false`: Claude Code führt Befehle ohne Sandbox aus, wenn die Sandbox nicht starten kann

1805* **Standard**: `false`1905* **Standard**: `false`

1806 1906 

1807Dies lässt jeden verwalteten Computer Befehle sandboxen oder sich weigern zu starten:1907Dies lässt jeden verwalteten Computer Befehle in der Sandbox ausführen oder den Start verweigern:

1808 1908 

1809```json managed-settings.json theme={null}1909```json managed-settings.json theme={null}

1810{1910{


1821 `sandbox.autoAllowBashIfSandboxed`1921 `sandbox.autoAllowBashIfSandboxed`

1822</h3>1922</h3>

1823 1923 

1824Lassen Sie Claude Code sandboxed Bash-Befehle ohne Berechtigungsaufforderung ausführen. Befehle, die nicht in der Sandbox ausgeführt werden können, durchlaufen weiterhin den regulären Berechtigungsfluss, und `deny`-Regeln und inhaltsbezogene `ask`-Regeln wie `Bash(git push *)` gelten weiterhin; eine bloße `Bash`-Regel wird für sandboxed Befehle übersprungen. Setzen Sie es auf `false`, um sandboxed Befehle auch durch den regulären Berechtigungsfluss zu senden, den die `/sandbox` **Mode**-Registerkarte als regulären Berechtigungsmodus bezeichnet.1924Lassen Sie Claude Code Bash-Befehle in der Sandbox ohne Berechtigungsabfrage ausführen. Befehle, die nicht in der Sandbox ausgeführt werden können, durchlaufen weiterhin den regulären Berechtigungsfluss, und `deny`-Regeln sowie inhaltsbezogene `ask`-Regeln wie `Bash(git push *)` gelten weiterhin; eine bloße `Bash`-ask-Regel wird für Befehle in der Sandbox übersprungen. Setzen Sie den Schlüssel auf `false`, um auch Befehle in der Sandbox durch den regulären Berechtigungsfluss zu leiten, den die **Mode**-Registerkarte von `/sandbox` als regulären Berechtigungsmodus bezeichnet.

1825 1925 

1826* **Bereich**: [`Any file`](#scopes)1926* **Bereich**: [`Any file`](#scopes)

1827* **Typ**: Boolescher Wert1927* **Typ**: Boolescher Wert

1828 * `true`: Claude Code führt sandboxed Bash-Befehle ohne Berechtigungsaufforderung aus, vorbehaltlich `deny`-Regeln und inhaltsbezogener `ask`-Regeln; `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` deaktiviert die automatische Genehmigung1928 * `true`: Claude Code führt Bash-Befehle in der Sandbox ohne Berechtigungsabfrage aus, vorbehaltlich `deny`-Regeln und inhaltsbezogener `ask`-Regeln; `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` deaktiviert die automatische Freigabe

1829 * `false`: sandboxed Befehle durchlaufen den regulären Berechtigungsfluss, daher entscheiden Ihre Genehmigungsregeln und der Berechtigungsmodus. Die `/sandbox` **Mode**-Registerkarte nennt dies regulären Berechtigungsmodus1929 * `false`: Befehle in der Sandbox durchlaufen den regulären Berechtigungsfluss, daher entscheiden Ihre allow-Regeln und Ihr Berechtigungsmodus. Die **Mode**-Registerkarte von `/sandbox` nennt dies regulären Berechtigungsmodus

1830* **Standard**: `true`1930* **Standard**: `true`

1831 1931 

1832Dies behält die Sandbox bei und sendet sandboxed Befehle durch den regulären Berechtigungsfluss:1932Dies behält die Sandbox bei und leitet Befehle in der Sandbox durch den regulären Berechtigungsfluss:

1833 1933 

1834```json settings.json theme={null}1934```json settings.json theme={null}

1835{1935{


1840}1940}

1841```1941```

1842 1942 

1843Siehe [Sandbox modes](/docs/de/sandboxing#sandbox-modes) für das, worauf der automatische Genehmigungsmodus noch auffordert, und wie er sich im Plan-Modus verhält.1943Siehe [Sandbox modes](/docs/de/sandboxing#sandbox-modes) dafür, wobei der Modus mit automatischer Freigabe weiterhin nachfragt und wie er sich im Plan-Modus verhält.

1844 1944 

1845<h3 id="sandbox-excludedcommands">1945<h3 id="sandbox-excludedcommands">

1846 `sandbox.excludedCommands`1946 `sandbox.excludedCommands`

1847</h3>1947</h3>

1848 1948 

1849Benennen Sie Befehle, die Claude Code außerhalb der Sandbox ausführt, z. B. Tools, die nicht darunter funktionieren. Jeder Eintrag verwendet die gleiche Syntax wie der Inhalt einer `Bash(...)`-[Berechtigungsregel](/docs/de/permissions#permission-rule-syntax): ein exakter Befehl, ein Präfix wie `docker *` oder ein Wildcard-Muster.1949Benennen Sie Befehle, die Claude Code außerhalb der Sandbox ausführt, z. B. Tools, die darin nicht funktionieren. Jeder Eintrag verwendet die gleiche Syntax wie der Inhalt einer `Bash(...)`-[Berechtigungsregel](/docs/de/permissions#permission-rule-syntax): ein exakter Befehl, ein Präfix wie `docker *` oder ein Wildcard-Muster. Ein Muster ohne Wildcard ist eine exakte Übereinstimmung, daher passt `docker` nur auf `docker` ohne Argumente.

1850 1950 

1851Ihre Einträge nehmen einen Bash-Aufruf aus der Sandbox nur heraus, wenn sie jeden Befehl darin abdecken, und einige Aufrufformen bleiben auch dann sandboxed. Ein `docker *`-Eintrag allein nimmt `npm ci && docker build .` nicht aus der Sandbox heraus.1951Ihre Einträge nehmen einen Bash-Aufruf nur dann aus der Sandbox heraus, wenn sie jeden Befehl darin abdecken, und einige Aufrufformen bleiben selbst dann in der Sandbox. Ein `docker *`-Eintrag allein nimmt `npm ci && docker build .` nicht aus der Sandbox heraus.

1852 1952 

1853* **Bereich**: [`Any file`](#scopes)1953* **Bereich**: [`Any file`](#scopes), mit [Einschränkungen für Projekt- und lokale Einstellungen](/docs/de/sandboxing#repository-settings-under-an-admin-required-sandbox)

1854* **Typ**: Array von Befehlsmustern1954* **Typ**: Array von Befehlsmustern

1855* **Standard**: nicht gesetzt, daher wird kein Befehl ausgeschlossen1955* **Standard**: nicht gesetzt, daher wird kein Befehl ausgeschlossen

1856 1956 


1862}1962}

1863```1963```

1864 1964 

1865Claude Code hält einen Bash-Aufruf sandboxed, wenn er eine dieser Formen hat, unter anderem:1965Claude Code hält einen Bash-Aufruf in der Sandbox, wenn er unter anderem eine dieser Formen hat:

1866 1966 

1867* Ein Befehl, der mit `sudo`, `eval` oder `xargs` beginnt1967* Ein Befehl, der mit `sudo`, `eval` oder `xargs` beginnt

1868* Ein `cd`, `pushd` oder `popd`, überall wo es im Aufruf erscheint1968* Ein `cd`, `pushd` oder `popd`, egal wo es im Aufruf erscheint

1869* Eine Befehlsersetzung, eine Subshell oder ein Kontrollfluss-Block wie `if` oder `for`1969* Eine Befehlsersetzung, eine Subshell oder ein Kontrollfluss-Block wie `if` oder `for`

1870* Eine Umleitung, wie `docker build . > build.log`, außer einer, die nur einen Dateideskriptor dupliziert, wie `2>&1` es tut1970* Eine Umleitung, wie `docker build . > build.log`, außer einer, die nur einen Dateideskriptor dupliziert, wie `2>&1` es tut

1871* Ein Befehlsname, der aus einer Variable kommt1971* Ein Befehlsname, der aus einer Variable stammt

1972* Ein `git clone`, `git init`, `git worktree add`, `git worktree move` oder `git bundle create` mit einem Pfadargument, das absolut ist, mit `~` beginnt oder ein `..`-Segment enthält

1973 

1974Zum Beispiel bleibt `cd build && docker compose up` unter einem `docker *`-Eintrag in der Sandbox, und das Hinzufügen eines `cd`-Eintrags ändert das nicht. Unter einem `git *`-Eintrag wird `git clone <url> vendor/lib` außerhalb der Sandbox ausgeführt, aber `git clone <url> ~/tools` bleibt in der Sandbox. Ein Clone schreibt einen ganzen Baum von Dateien, möglicherweise auch ausführbare, an die Stelle, auf die sein Zielpfad zeigt.

1872 1975 

1873Zum Beispiel bleibt `cd build && docker compose up` unter einem `docker *`-Eintrag sandboxed, und das Hinzufügen eines `cd`-Eintrags ändert das nicht.1976Ausgeschlossene Befehle durchlaufen weiterhin den regulären Berechtigungsfluss. Ausschluss ist eine Bequemlichkeit, keine Sicherheitsgrenze: Wenn ein Tool nur an eine bestimmte Stelle schreiben muss, hält [`filesystem.allowWrite`](#sandbox-filesystem-allowwrite) es in der Sandbox.

1874 1977 

1875Ausgeschlossene Befehle durchlaufen weiterhin den regulären Berechtigungsfluss. Ausschluss ist eine Bequemlichkeit, keine Sicherheitsgrenze: bevorzugen Sie [`filesystem.allowWrite`](#sandbox-filesystem-allowwrite), wenn ein Tool nur an einer bestimmten Stelle schreiben muss. Claude Code führt Einträge über jeden Einstellungsbereich zusammen, den die Sitzung lädt, und es gibt keine verwaltete Sperre für diese Liste, daher halten Sie eine verwaltete Liste eng.1978Einträge aus den Einstellungsbereichen, die die Sitzung lädt, werden zu einer Liste zusammengeführt, es sei denn, die Sandbox ist [vom Admin vorgeschrieben](/docs/de/sandboxing#repository-settings-under-an-admin-required-sandbox). Solange dies der Fall ist, ignoriert Claude Code Einträge in `.claude/settings.json` und `.claude/settings.local.json`, sodass ein geklontes Repository keine Befehle aus der Sandbox herausnehmen kann. Einträge in verwalteten Einstellungen, `--settings` und Ihrer `~/.claude/settings.json` gelten weiterhin, und für diese Liste gibt es keine Sperre, die nur in verwalteten Einstellungen gilt.

1876 1979 

1877<h3 id="sandbox-allowunsandboxedcommands">1980<h3 id="sandbox-allowunsandboxedcommands">

1878 `sandbox.allowUnsandboxedCommands`1981 `sandbox.allowUnsandboxedCommands`

1879</h3>1982</h3>

1880 1983 

1881Lassen Sie Claude einen Befehl außerhalb der Sandbox mit dem Parameter `dangerouslyDisableSandbox` erneut versuchen, nachdem die Sandbox ihn blockiert hat. Setzen Sie es auf `false`, damit Claude Code diesen Parameter vollständig ignoriert und jeder Befehl, den Claude ausführt, sandboxed sein oder in [`excludedCommands`](#sandbox-excludedcommands) erscheinen muss. Die `/sandbox` **Overrides**-Registerkarte zeigt diesen Zustand als **Strict sandbox mode** an. Verwenden Sie `false` in verwalteten Einstellungen für Richtlinien, die striktes Sandboxing erfordern.1984Lassen Sie Claude einen Befehl mit dem Parameter `dangerouslyDisableSandbox` außerhalb der Sandbox erneut versuchen, nachdem die Sandbox ihn blockiert hat. Bei `false` ignoriert Claude Code diesen Parameter. Solange die Sandbox läuft, werden Befehle, die Claude ausführt, dann in der Sandbox ausgeführt, es sei denn, sie entsprechen einem [`excludedCommands`](#sandbox-excludedcommands)-Eintrag. Die **Overrides**-Registerkarte von `/sandbox` zeigt diesen Zustand als **Strict sandbox mode** an. Ein `false` in verwalteten Einstellungen aktiviert den strikten Sandbox-Modus für die Entwickler, für die diese Einstellungen gelten.

1882 1985 

1883* **Bereich**: [`Any file`](#scopes)1986* **Bereich**: [`Any file`](#scopes), mit [einer Einschränkung für Projekt- und lokale Einstellungen](/docs/de/sandboxing#turn-off-the-retry-with-strict-sandbox-mode)

1884* **Typ**: Boolescher Wert1987* **Typ**: Boolescher Wert

1885 * `true`: Claude kann einen Befehl außerhalb der Sandbox mit dem Parameter `dangerouslyDisableSandbox` erneut versuchen, nachdem die Sandbox ihn blockiert hat1988 * `true`: Claude kann einen Befehl mit dem Parameter `dangerouslyDisableSandbox` außerhalb der Sandbox erneut versuchen, nachdem die Sandbox ihn blockiert hat

1886 * `false`: Claude Code ignoriert diesen Parameter, daher ist jeder Befehl, den Claude ausführt, sandboxed oder erscheint in `excludedCommands`1989 * `false`: Claude Code ignoriert diesen Parameter, daher werden Befehle, die Claude ausführt, solange die Sandbox läuft, in der Sandbox ausgeführt, es sei denn, sie entsprechen einem `excludedCommands`-Eintrag

1887* **Standard**: `true`1990* **Standard**: `true`

1888 1991 

1889Dies erzwingt den strikten Sandbox-Modus für alle, die die verwalteten Einstellungen abdecken:1992Dies erzwingt den strikten Sandbox-Modus für alle, für die die verwalteten Einstellungen gelten:

1890 1993 

1891```json managed-settings.json theme={null}1994```json managed-settings.json theme={null}

1892{1995{


1897}2000}

1898```2001```

1899 2002 

1900Ein unsandboxed-Wiederholungsversuch durchläuft den regulären Berechtigungsfluss, mit einer Aufforderung im manuellen Modus. Siehe [The unsandboxed retry escape hatch](/docs/de/sandboxing#the-unsandboxed-retry-escape-hatch).2003Ein `false` aus verwalteten Einstellungen oder `--settings` macht die Sandbox außerdem [vom Admin vorgeschrieben](/docs/de/sandboxing#repository-settings-under-an-admin-required-sandbox). Ein `false` in Ihren Benutzereinstellungen setzt sich gegen ein `true` eines Projekts durch, macht die Sandbox aber nicht vom Admin vorgeschrieben. Das Durchsetzen gegen den Wert eines Projekts erfordert Claude Code v2.1.285 oder später.

2004 

2005Wer einen Wiederholungsversuch ohne Sandbox genehmigt, hängt von Ihrem Berechtigungsmodus und Ihren allow-Regeln ab. Siehe [The unsandboxed retry escape hatch](/docs/de/sandboxing#the-unsandboxed-retry-escape-hatch).

1901 2006 

1902Um zu sehen, wann Befehle, die Sie selbst an der [`!`-Shell-Modus-Eingabeaufforderung](/docs/de/interactive-mode#shell-mode-with-prefix) eingeben, sandboxed ausgeführt werden, siehe [strict sandbox mode](/docs/de/sandboxing#the-unsandboxed-retry-escape-hatch).2007Um zu sehen, wann Befehle, die Sie selbst an der [`!`-Shell-Modus-Eingabeaufforderung](/docs/de/interactive-mode#shell-mode-with-prefix) eingeben, in der Sandbox ausgeführt werden, siehe [strict sandbox mode](/docs/de/sandboxing#turn-off-the-retry-with-strict-sandbox-mode).

1903 2008 

1904<h3 id="sandbox-filesystem">2009<h3 id="sandbox-filesystem">

1905 `sandbox.filesystem`2010 `sandbox.filesystem`

1906</h3>2011</h3>

1907 2012 

1908Kontrollieren Sie, welche Pfade sandboxed Befehle lesen und schreiben können. Standardmäßig können sie in das Arbeitsverzeichnis, das Sitzungs-Temp-Verzeichnis und Verzeichnisse schreiben, die Sie mit `--add-dir`, `/add-dir` oder `permissions.additionalDirectories` hinzufügen, und können den Rest des Dateisystems lesen, einschließlich Anmeldedateien. Erweitern oder verengen Sie dies mit den vier Pfadlisten, oder schalten Sie die Dateisystem-Schicht mit `disabled` aus. Siehe [Filesystem isolation](/docs/de/sandboxing#filesystem-isolation) für die Standardgrenzen.2013Legen Sie fest, welche Pfade Befehle in der Sandbox lesen und schreiben können. Standardmäßig können sie in das Arbeitsverzeichnis, das benutzerspezifische Temp-Verzeichnis und Verzeichnisse schreiben, die Sie mit `--add-dir`, `/add-dir` oder `permissions.additionalDirectories` hinzufügen, und können den Rest des Dateisystems lesen, einschließlich Anmeldedateien. Erweitern oder verengen Sie dies mit den vier Pfadlisten, oder schalten Sie die Dateisystem-Schicht mit `disabled` aus. Siehe [Filesystem isolation](/docs/de/sandboxing#filesystem-isolation) für die Standardgrenzen.

1909 2014 

1910* **Bereich**: [`Any file`](#scopes)2015* **Bereich**: [`Any file`](#scopes)

1911* **Typ**: Objekt mit `allowWrite`, `denyWrite`, `denyRead` und `allowRead`-Arrays, plus die booleschen Werte `allowManagedReadPathsOnly` und `disabled`2016* **Typ**: Objekt mit den Arrays `allowWrite`, `denyWrite`, `denyRead` und `allowRead`, plus die booleschen Werte `allowManagedReadPathsOnly` und `disabled`

1912* **Standard**: nicht gesetzt, daher gelten die Standard-Lese- und Schreibgrenzen2017* **Standard**: nicht gesetzt, daher gelten die Standard-Lese- und Schreibgrenzen

1913 2018 

1914Dies lässt sandboxed Befehle in ein Build-Verzeichnis und Ihre kubeconfig schreiben und verbirgt Ihre AWS-Anmeldedatei:2019Dies lässt Befehle in der Sandbox in ein Build-Verzeichnis und Ihre kubeconfig schreiben und verbirgt Ihre AWS-Anmeldedatei:

1915 2020 

1916```json settings.json theme={null}2021```json settings.json theme={null}

1917{2022{


1924}2029}

1925```2030```

1926 2031 

1927Claude Code erzwingt diese Listen an der OS-Sandbox-Grenze, daher gelten sie für jeden Unterprozess, den ein sandboxed Befehl startet, z. B. `kubectl`, `terraform` oder `npm`. Claude Code fügt Ihre [Berechtigungsregeln](/docs/de/sandboxing#permission-rules) zu den gleichen Listen hinzu: `Edit`-Zulassungs- und Ablehnungsregeln zu `allowWrite` und `denyWrite`, `Read`-Ablehnungsregeln zu `denyRead` und `WebFetch(domain:...)`-Zulassungs- und Ablehnungsregeln zu den [`network`](#sandbox-network)-Domänenlisten.2032Claude Code erzwingt diese Listen an der OS-Sandbox-Grenze, daher gelten sie für jeden Unterprozess, den ein Befehl in der Sandbox startet, z. B. `kubectl`, `terraform` oder `npm`. Claude Code fügt Ihre [Berechtigungsregeln](/docs/de/sandboxing#permission-rules) zu denselben Listen hinzu: `Edit`-allow- und -deny-Regeln zu `allowWrite` und `denyWrite`, `Read`-deny-Regeln zu `denyRead` und `WebFetch(domain:...)`-allow- und -deny-Regeln zu den [`network`](#sandbox-network)-Domänenlisten.

1928 2033 

1929Sofern keine verwaltete Sperre gesetzt ist, führt Claude Code jede Liste über die Einstellungsdateien zusammen, die die Sitzung lädt. [`allowManagedReadPathsOnly`](#sandbox-filesystem-allowmanagedreadpathsonly) beschränkt `allowRead` auf Einträge aus verwalteten Einstellungen, und [`allowManagedDomainsOnly`](#sandbox-network-allowmanageddomainsonly) macht dasselbe für zulässige Domänen.2034Sofern keine Sperre greift, führt Claude Code diese Listen über die Einstellungsdateien zusammen, die die Sitzung lädt. [`allowManagedReadPathsOnly`](#sandbox-filesystem-allowmanagedreadpathsonly) beschränkt `allowRead` auf Einträge aus verwalteten Einstellungen, und [`allowManagedDomainsOnly`](#sandbox-network-allowmanageddomainsonly) macht dasselbe für zulässige Domänen. [Repository-Sperren](/docs/de/sandboxing#repository-settings-under-an-admin-required-sandbox) lassen Einträge aus den Einstellungsdateien eines Repositorys weg.

1930 2035 

1931[Configure sandboxing](/docs/de/sandboxing#configure-sandboxing) behandelt Quellen, die Sie mit `--setting-sources` ausschließen. Wenn Sie eine Liste während einer Sitzung bearbeiten, [wendet Claude Code die Änderung auf die laufende Sitzung an](/docs/de/settings#when-edits-take-effect).2036[Configure sandboxing](/docs/de/sandboxing#configure-sandboxing) behandelt Quellen, die Sie mit `--setting-sources` ausschließen. Wenn Sie eine Liste während einer Sitzung bearbeiten, [wendet Claude Code die Änderung auf die laufende Sitzung an](/docs/de/settings#when-edits-take-effect).

1932 2037 


1942| `~/` | Relativ zum Home-Verzeichnis | `~/.kube` wird zu `$HOME/.kube` |2047| `~/` | Relativ zum Home-Verzeichnis | `~/.kube` wird zu `$HOME/.kube` |

1943| `./` oder kein Präfix | Relativ zum Projekt-Root für Projekteinstellungen oder zu `~/.claude` für Benutzereinstellungen | `./output` in `.claude/settings.json` wird zu `<project-root>/output` |2048| `./` oder kein Präfix | Relativ zum Projekt-Root für Projekteinstellungen oder zu `~/.claude` für Benutzereinstellungen | `./output` in `.claude/settings.json` wird zu `<project-root>/output` |

1944 2049 

1945Das Präfix `//path` für absolute Pfade funktioniert auch. Wenn Sie `/path` erwartend verwenden und projektrelative Auflösung erwarten, wechseln Sie zu `./path`. Diese Syntax unterscheidet sich von [Read and Edit permission rules](/docs/de/permissions#read-and-edit), die `//path` für absolut und `/path` für projektrelativ verwenden: Sandbox-Dateisystempfade verwenden Standardkonventionen, daher ist `/tmp/build` ein absoluter Pfad.2050Das Präfix `//path` für absolute Pfade funktioniert ebenfalls. Wenn Sie `/path` mit einem einzelnen Schrägstrich verwenden und eine projektrelative Auflösung erwarten, wechseln Sie zu `./path`. Diese Syntax unterscheidet sich von [Read and Edit permission rules](/docs/de/permissions#read-and-edit), die `//path` für absolute und `/path` für projektrelative Pfade verwenden: Sandbox-Dateisystempfade folgen den Standardkonventionen, daher ist `/tmp/build` ein absoluter Pfad.

1946 2051 

1947Claude Code entfernt einen nachgestellten Schrägstrich aus einem Verzeichnispfad, daher entsprechen `~/.aws` und `~/.aws/` dem gleichen Verzeichnis. Vor v2.1.224 gab Claude Code den nachgestellten Schrägstrich an die Sandbox weiter, und Claude konnte weiterhin Pfade unter einem `denyRead`- oder `denyWrite`-Eintrag lesen oder schreiben, der mit einem geschrieben wurde.2052Claude Code entfernt einen nachgestellten Schrägstrich aus einem Verzeichnispfad, daher entsprechen `~/.aws` und `~/.aws/` demselben Verzeichnis. Vor v2.1.224 gab Claude Code den nachgestellten Schrägstrich an die Sandbox weiter, und Claude konnte weiterhin Pfade unter einem `denyRead`- oder `denyWrite`-Eintrag lesen oder schreiben, der mit einem solchen Schrägstrich geschrieben war.

1948 2053 

1949Claude Code entfernt auch ein nachgestelltes `/**`, daher decken `~/build/**` und `~/build` das gleiche Verzeichnis ab. Ob ein Wildcard wie `*` funktioniert, hängt davon ab, in welcher Liste sich der Eintrag befindet und von der Plattform:2054Claude Code entfernt auch ein nachgestelltes `/**`, daher decken `~/build/**` und `~/build` dasselbe Verzeichnis ab. Ob eine Wildcard wie `*` funktioniert, hängt davon ab, in welcher Liste sich der Eintrag befindet, und von der Plattform:

1950 2055 

1951* **`allowWrite` und `denyWrite`**: auf macOS funktionieren Wildcards. Auf Linux und WSL2 mountet die Sandbox konkrete Pfade, daher überspringt Claude Code einen Eintrag, der `*`, `?` oder `[` enthält, sobald das nachgestellte `/**` entfernt ist, und dieser Eintrag hat keine Auswirkung. Claude Code fügt die Pfade aus Ihren `Edit`-Berechtigungsregeln zu diesen Listen hinzu, daher gilt die gleiche Grenze für sie, und die **Config**-Registerkarte von `/sandbox` warnt vor `Edit`- und `Read`-Berechtigungsregeln, die Wildcards enthalten.2056* **`allowWrite` und `denyWrite`**: Auf macOS funktionieren Wildcards. Auf Linux und WSL2 mountet die Sandbox konkrete Pfade, daher überspringt Claude Code einen Eintrag, der nach dem Entfernen des nachgestellten `/**` noch `*`, `?` oder `[` enthält, und dieser Eintrag hat keine Wirkung. Claude Code fügt die Pfade aus Ihren `Edit`-Berechtigungsregeln zu diesen Listen hinzu, daher gilt für sie dieselbe Einschränkung, und die **Config**-Registerkarte von `/sandbox` warnt vor `Edit`- und `Read`-Berechtigungsregeln, die Wildcards enthalten.

1952* **`denyRead` und `allowRead`**: Wildcards funktionieren auf jeder Plattform. Auf Linux und WSL2 erweitert Claude Code einen Leseeintrag auf die konkreten Pfade, die er abgleicht, was es nicht für die Schreibleisten tut.2057* **`denyRead` und `allowRead`**: Wildcards funktionieren auf jeder Plattform. Auf Linux und WSL2 erweitert Claude Code einen Leseeintrag auf die konkreten Pfade, auf die er passt, was es für die Schreiblisten nicht tut.

1953 2058 

1954<h3 id="sandbox-filesystem-allowwrite">2059<h3 id="sandbox-filesystem-allowwrite">

1955 `sandbox.filesystem.allowWrite`2060 `sandbox.filesystem.allowWrite`

1956</h3>2061</h3>

1957 2062 

1958Fügen Sie Pfade hinzu, in die sandboxed Befehle schreiben können, über das Arbeitsverzeichnis, das Sitzungs-Temp-Verzeichnis und die Verzeichnisse hinaus, die Sie mit `--add-dir`, `/add-dir` oder `permissions.additionalDirectories` hinzugefügt haben. Verwenden Sie es, wenn ein Unterprozess wie `kubectl` oder ein Build-Tool außerhalb des Projekts schreiben muss.2063Fügen Sie Pfade hinzu, in die Befehle in der Sandbox schreiben können, über das Arbeitsverzeichnis, das benutzerspezifische Temp-Verzeichnis und die Verzeichnisse hinaus, die Sie mit `--add-dir`, `/add-dir` oder `permissions.additionalDirectories` hinzugefügt haben. Verwenden Sie es, wenn ein Unterprozess wie `kubectl` oder ein Build-Tool außerhalb des Projekts schreiben muss.

1959 2064 

1960* **Bereich**: [`Any file`](#scopes)2065* **Bereich**: [`Any file`](#scopes), mit [Einschränkungen für Projekt- und lokale Einstellungen](/docs/de/sandboxing#repository-settings-under-an-admin-required-sandbox)

1961* **Typ**: Array von Pfadzeichenfolgen, unter Verwendung der [Sandbox-Pfadpräfixe](#sandbox-path-prefixes)2066* **Typ**: Array von Pfadzeichenfolgen, unter Verwendung der [Sandbox-Pfadpräfixe](#sandbox-path-prefixes)

1962* **Standard**: nicht gesetzt, daher können sandboxed Befehle in das Arbeitsverzeichnis, das Sitzungs-Temp-Verzeichnis, Verzeichnisse, die Sie mit `--add-dir` oder `/add-dir` hinzugefügt haben, und Verzeichnisse in [`permissions.additionalDirectories`](#permissions-additionaldirectories) schreiben2067* **Standard**: nicht gesetzt, daher können Befehle in der Sandbox in das Arbeitsverzeichnis, das benutzerspezifische Temp-Verzeichnis, Verzeichnisse, die Sie mit `--add-dir` oder `/add-dir` hinzugefügt haben, und Verzeichnisse in [`permissions.additionalDirectories`](#permissions-additionaldirectories) schreiben

1963 2068 

1964Dies lässt einen Build unter `/tmp/build` schreiben und lässt `kubectl` Ihre kubeconfig aktualisieren:2069Dies lässt einen Build unter `/tmp/build` schreiben und lässt `kubectl` Ihre kubeconfig aktualisieren:

1965 2070 


1973}2078}

1974```2079```

1975 2080 

1976Claude Code führt Einträge über jeden Einstellungsbereich zusammen, den die Sitzung lädt: Benutzer-, Projekt-, lokale und verwaltete Pfade kombinieren sich, anstatt sich gegenseitig zu ersetzen, und Claude Code fügt die Pfade aus Ihren `Edit(...)`-Zulassungsberechtigungsregeln hinzu. Ein `allowWrite`-Eintrag kann einen [geschützten Pfad](/docs/de/sandboxing#protected-paths) nicht aufheben.2081Claude Code führt `allowWrite`-Einträge und die Pfade aus Ihren `Edit(...)`-allow-Berechtigungsregeln über die Einstellungsbereiche zusammen, die die Sitzung lädt, und lässt dabei die aus Repository-Einstellungen weg, solange [`permissions.blockReadsOutsideWorkingDirectories`](#sandboxed-commands-under-the-block) aktiviert ist. [Repository-Sperren](/docs/de/sandboxing#repository-settings-under-an-admin-required-sandbox) können die Einträge eines Repositorys ebenfalls weglassen. Ein `allowWrite`-Eintrag kann einen [geschützten Pfad](/docs/de/sandboxing#protected-paths) nicht freigeben.

1977 2082 

1978<h3 id="sandbox-filesystem-denywrite">2083<h3 id="sandbox-filesystem-denywrite">

1979 `sandbox.filesystem.denyWrite`2084 `sandbox.filesystem.denyWrite`

1980</h3>2085</h3>

1981 2086 

1982Blockieren Sie sandboxed Befehle vom Schreiben in bestimmte Pfade, einschließlich Pfade in einem Verzeichnis, das ansonsten beschreibbar ist.2087Verhindern Sie, dass Befehle in der Sandbox in bestimmte Pfade schreiben, einschließlich Pfaden in einem Verzeichnis, das ansonsten beschreibbar ist.

1983 2088 

1984* **Bereich**: [`Any file`](#scopes)2089* **Bereich**: [`Any file`](#scopes)

1985* **Typ**: Array von Pfadzeichenfolgen, unter Verwendung der [Sandbox-Pfadpräfixe](#sandbox-path-prefixes)2090* **Typ**: Array von Pfadzeichenfolgen, unter Verwendung der [Sandbox-Pfadpräfixe](#sandbox-path-prefixes)

1986* **Standard**: nicht gesetzt2091* **Standard**: nicht gesetzt

1987 2092 

1988Dies verhindert, dass sandboxed Befehle Systemkonfiguration ändern oder Binärdateien installieren:2093Dies verhindert, dass Befehle in der Sandbox die Systemkonfiguration ändern oder Binärdateien installieren:

1989 2094 

1990```json settings.json theme={null}2095```json settings.json theme={null}

1991{2096{


1997}2102}

1998```2103```

1999 2104 

2000Claude Code führt Einträge über jeden Einstellungsbereich zusammen, den die Sitzung lädt, und fügt die Pfade aus Ihren `Edit(...)`-Ablehnungsberechtigungsregeln hinzu.2105Claude Code führt Einträge über jeden Einstellungsbereich zusammen, den die Sitzung lädt, und fügt die Pfade aus Ihren `Edit(...)`-deny-Berechtigungsregeln hinzu.

2001 2106 

2002<h3 id="sandbox-filesystem-denyread">2107<h3 id="sandbox-filesystem-denyread">

2003 `sandbox.filesystem.denyRead`2108 `sandbox.filesystem.denyRead`

2004</h3>2109</h3>

2005 2110 

2006Blockieren Sie sandboxed Befehle vom Lesen bestimmter Pfade, z. B. Anmeldedateien, die die Standard-Lesrichtlinie ansonsten offenlegen würde. Um eine Anmeldedatei zu schützen und sie durch den Sandbox-Proxy nutzbar zu halten, siehe stattdessen [`sandbox.credentials`](#sandbox-credentials).2111Verhindern Sie, dass Befehle in der Sandbox bestimmte Pfade lesen, z. B. Anmeldedateien, die die Standard-Leserichtlinie ansonsten offenlegen würde. Um eine Anmeldedatei zu schützen und sie über den Sandbox-Proxy nutzbar zu halten, siehe stattdessen [`sandbox.credentials`](#sandbox-credentials).

2007 2112 

2008* **Bereich**: [`Any file`](#scopes)2113* **Bereich**: [`Any file`](#scopes)

2009* **Typ**: Array von Pfadzeichenfolgen, unter Verwendung der [Sandbox-Pfadpräfixe](#sandbox-path-prefixes)2114* **Typ**: Array von Pfadzeichenfolgen, unter Verwendung der [Sandbox-Pfadpräfixe](#sandbox-path-prefixes)

2010* **Standard**: nicht gesetzt, daher behalten sandboxed Befehle den [Standard-Lesezugriff](/docs/de/sandboxing#filesystem-isolation), der Anmeldedateien wie `~/.aws/credentials` einschließt2115* **Standard**: nicht gesetzt, daher behalten Befehle in der Sandbox den [Standard-Lesezugriff](/docs/de/sandboxing#filesystem-isolation), der Anmeldedateien wie `~/.aws/credentials` einschließt

2011 2116 

2012```json settings.json theme={null}2117```json settings.json theme={null}

2013{2118{


2019}2124}

2020```2125```

2021 2126 

2022Claude Code führt Einträge über jeden Einstellungsbereich zusammen, den die Sitzung lädt, und fügt die Pfade aus Ihren `Read(...)`-Ablehnungsberechtigungsregeln hinzu. Wenn [`filesystem.disabled`](#sandbox-filesystem-disabled) `true` ist, erzwingt Claude Code diese Einträge nicht.2127Claude Code führt Einträge über jeden Einstellungsbereich zusammen, den die Sitzung lädt, und fügt die Pfade aus Ihren `Read(...)`-deny-Berechtigungsregeln hinzu. Wenn [`filesystem.disabled`](#sandbox-filesystem-disabled) `true` ist, erzwingt Claude Code diese Einträge nicht.

2023 2128 

2024<h3 id="sandbox-filesystem-allowread">2129<h3 id="sandbox-filesystem-allowread">

2025 `sandbox.filesystem.allowRead`2130 `sandbox.filesystem.allowRead`

2026</h3>2131</h3>

2027 2132 

2028Öffnen Sie das Lesen für bestimmte Pfade in einer Region erneut, die [`denyRead`](#sandbox-filesystem-denyread) blockiert, um Workspace-only-Lesezugriff zu erstellen. Ein exakter oder Wildcard-`denyRead`-Eintrag bleibt in einem breiteren `allowRead` blockiert, wie die [Überlappungstabelle](/docs/de/sandboxing#configure-sandboxing) zeigt. Wenn ein Wildcard-`denyRead`-Eintrag wie `~/**/.env` ein Verzeichnis abgleicht, blockiert Claude Code auch das Lesen seines Inhalts. Vor v2.1.236 auf macOS öffnete Claude Code die Pfade, die ein Wildcard-`denyRead`-Eintrag abglich, überall dort erneut, wo ein breiterer `allowRead`-Eintrag sie abdeckte, und ließ den Inhalt eines abgeglichenen Verzeichnisses lesbar.2133Geben Sie das Lesen für bestimmte Pfade innerhalb eines Bereichs, den [`denyRead`](#sandbox-filesystem-denyread) blockiert, wieder frei, um einen auf den Workspace beschränkten Lesezugriff aufzubauen. Ein exakter oder Wildcard-`denyRead`-Eintrag bleibt innerhalb eines breiteren `allowRead` blockiert, wie die [Überlappungstabelle](/docs/de/sandboxing#configure-sandboxing) zeigt. Wenn ein Wildcard-`denyRead`-Eintrag wie `~/**/.env` auf ein Verzeichnis passt, blockiert Claude Code auch das Lesen seines Inhalts. Vor v2.1.236 gab Claude Code auf macOS die Pfade, auf die ein Wildcard-`denyRead`-Eintrag passte, überall dort wieder frei, wo ein breiterer `allowRead`-Eintrag sie abdeckte, und ließ den Inhalt eines passenden Verzeichnisses lesbar.

2029 2134 

2030* **Bereich**: [`Any file`](#scopes)2135* **Bereich**: [`Any file`](#scopes), mit [Einschränkungen für Projekt- und lokale Einstellungen](/docs/de/sandboxing#repository-settings-under-an-admin-required-sandbox)

2031* **Typ**: Array von Pfadzeichenfolgen, unter Verwendung der [Sandbox-Pfadpräfixe](#sandbox-path-prefixes)2136* **Typ**: Array von Pfadzeichenfolgen, unter Verwendung der [Sandbox-Pfadpräfixe](#sandbox-path-prefixes)

2032* **Standard**: nicht gesetzt2137* **Standard**: nicht gesetzt

2033 2138 

2034Dies blockiert Lesevorgänge Ihres Home-Verzeichnisses außer dem Projekt selbst:2139Dies blockiert Lesevorgänge in Ihrem Home-Verzeichnis mit Ausnahme des Projekts selbst:

2035 2140 

2036```json settings.json theme={null}2141```json settings.json theme={null}

2037{2142{


2044}2149}

2045```2150```

2046 2151 

2047Claude Code löst einen `.`-Eintrag zum Projekt-Root in Projekteinstellungen und zu `~/.claude` in Benutzereinstellungen auf. Claude Code führt Einträge über jede Einstellungsdatei zusammen, die die Sitzung lädt, sofern [`allowManagedReadPathsOnly`](#sandbox-filesystem-allowmanagedreadpathsonly) nicht gesetzt ist.2152Claude Code löst einen `.`-Eintrag in Projekteinstellungen zum Projekt-Root und in Benutzereinstellungen zu `~/.claude` auf. Claude Code führt Einträge über die Einstellungsdateien zusammen, die die Sitzung lädt, sofern [`allowManagedReadPathsOnly`](#sandbox-filesystem-allowmanagedreadpathsonly) nicht gesetzt ist, und lässt Einträge aus Repository-Einstellungen weg, solange [`permissions.blockReadsOutsideWorkingDirectories`](#sandboxed-commands-under-the-block) aktiviert ist. [Repository-Sperren](/docs/de/sandboxing#repository-settings-under-an-admin-required-sandbox) können die Einträge eines Repositorys ebenfalls weglassen.

2048 2153 

2049<h3 id="sandbox-filesystem-allowmanagedreadpathsonly">2154<h3 id="sandbox-filesystem-allowmanagedreadpathsonly">

2050 `sandbox.filesystem.allowManagedReadPathsOnly`2155 `sandbox.filesystem.allowManagedReadPathsOnly`

2051</h3>2156</h3>

2052 2157 

2053Beachten Sie nur die [`allowRead`](#sandbox-filesystem-allowread)-Einträge, die aus verwalteten Einstellungen stammen, damit Entwickler den Lesezugriff auf Pfade, die Ihre Organisation blockiert hat, nicht erneut öffnen können. Claude Code führt weiterhin `denyRead`-Einträge aus jedem Einstellungsbereich zusammen, den die Sitzung lädt.2158Berücksichtigen Sie nur die [`allowRead`](#sandbox-filesystem-allowread)-Einträge, die aus verwalteten Einstellungen stammen, damit Entwickler den Lesezugriff auf Pfade, die Ihre Organisation blockiert hat, nicht wieder freigeben können. Claude Code führt weiterhin `denyRead`-Einträge aus jedem Einstellungsbereich zusammen, den die Sitzung lädt.

2054 2159 

2055* **Bereich**: [`Managed`](#scopes)2160* **Bereich**: [`Managed`](#scopes)

2056* **Typ**: Boolescher Wert2161* **Typ**: Boolescher Wert

2057 * `true`: Claude Code beachtet nur die `allowRead`-Einträge aus verwalteten Einstellungen2162 * `true`: Claude Code berücksichtigt nur die `allowRead`-Einträge aus verwalteten Einstellungen

2058 * `false`: `allowRead`-Einträge werden aus jedem Einstellungsbereich zusammengeführt, den die Sitzung lädt2163 * `false`: `allowRead`-Einträge aus anderen Einstellungsdateien können einfließen

2059* **Standard**: `false`2164* **Standard**: `false`

2060 2165 

2061Dies blockiert Lesevorgänge des Home-Verzeichnisses, öffnet `~/work` erneut und verhindert, dass Entwickler etwas anderes erneut öffnen:2166Dies blockiert Lesevorgänge im Home-Verzeichnis, gibt `~/work` wieder frei und verhindert, dass Entwickler etwas anderes freigeben:

2062 2167 

2063```json managed-settings.json theme={null}2168```json managed-settings.json theme={null}

2064{2169{


2078 `sandbox.filesystem.disabled`2183 `sandbox.filesystem.disabled`

2079</h3>2184</h3>

2080 2185 

2081Überspringen Sie die Dateisystem-Isolierung, während Sie die Netzwerk-Isolierung beibehalten. Sandboxed Befehle erhalten unbeschränkten Lese- und Schreibzugriff auf das Host-Dateisystem, und ihr Netzwerk-Egress bleibt auf [`network.allowedDomains`](#sandbox-network-alloweddomains) beschränkt. Verwenden Sie es, wenn Sie sandboxen, um zu kontrollieren, wo Befehle sich verbinden, anstatt was sie schreiben. Erfordert Claude Code v2.1.216 oder später.2186Überspringen Sie die Dateisystem-Isolierung, während die Netzwerk-Isolierung erhalten bleibt. Befehle in der Sandbox erhalten uneingeschränkten Lese- und Schreibzugriff auf das Host-Dateisystem, und ihr ausgehender Netzwerkverkehr bleibt auf [`network.allowedDomains`](#sandbox-network-alloweddomains) beschränkt. Verwenden Sie es, wenn Sie die Sandbox einsetzen, um zu steuern, wohin Befehle sich verbinden, und nicht, was sie schreiben. Erfordert Claude Code v2.1.216 oder später.

2082 2187 

2083* **Bereich**: [`User or managed`](#scopes). Wenn verwaltete Einstellungen `sandbox.filesystem` überhaupt konfigurieren oder einen `sandbox.credentials.files`-Eintrag mit `"mode": "deny"` auflisten, können nur verwaltete Einstellungen ihn setzen.2188* **Bereich**: [`User or managed`](#scopes). Wenn verwaltete Einstellungen `sandbox.filesystem` überhaupt konfigurieren oder einen `sandbox.credentials.files`-Eintrag mit `"mode": "deny"` auflisten, können nur verwaltete Einstellungen ihn setzen.

2084* **Typ**: Boolescher Wert2189* **Typ**: Boolescher Wert

2085 * `true`: Claude Code überspringt die Dateisystem-Isolierung und behält die Netzwerk-Isolierung bei2190 * `true`: Claude Code überspringt die Dateisystem-Isolierung und behält die Netzwerk-Isolierung bei

2086 * `false`: Dateisystem-Isolierung bleibt an2191 * `false`: Die Dateisystem-Isolierung bleibt aktiv

2087* **Standard**: `false`, daher bleibt die Dateisystem-Isolierung an2192* **Standard**: `false`, daher bleibt die Dateisystem-Isolierung aktiv

2088 2193 

2089Dies lässt das Dateisystem offen und beschränkt den Netzwerk-Egress auf GitHub und npm:2194Dies lässt das Dateisystem offen und beschränkt den ausgehenden Netzwerkverkehr auf GitHub und npm:

2090 2195 

2091```json settings.json theme={null}2196```json settings.json theme={null}

2092{2197{


2102}2207}

2103```2208```

2104 2209 

2105Mit der Schicht aus erzwingt Claude Code `denyRead`- oder `credentials.files`-`deny`-Einträge nicht, während `credentials.envVars`-Einträge und angewendete `mask`-Einträge weiterhin funktionieren. [`autoAllowBashIfSandboxed`](#sandbox-autoallowbashifsandboxed) wird immer noch standardmäßig auf `true` gesetzt, daher setzen Sie es auf `false`, um weiterhin aufzufordern. Siehe [Disable filesystem isolation](/docs/de/sandboxing#disable-filesystem-isolation) für die vollständige Liste der Quellen, die es setzen können, und was sich ändert, wenn die Isolierung aus ist. Erfordert Claude Code v2.1.216 oder später.2210Bei deaktivierter Schicht erzwingt Claude Code weder `denyRead`- noch `credentials.files`-`deny`-Einträge, während `credentials.envVars`-Einträge und angewendete `mask`-Einträge weiterhin funktionieren. [`autoAllowBashIfSandboxed`](#sandbox-autoallowbashifsandboxed) ist weiterhin standardmäßig `true`, setzen Sie es daher auf `false`, damit weiterhin nachgefragt wird. Siehe [Disable filesystem isolation](/docs/de/sandboxing#disable-filesystem-isolation) für die vollständige Liste der Quellen, die es setzen können, und was sich ändert, wenn die Isolierung deaktiviert ist. Erfordert Claude Code v2.1.216 oder später.

2106 2211 

2107<h3 id="sandbox-ignoreviolations">2212<h3 id="sandbox-ignoreviolations">

2108 `sandbox.ignoreViolations`2213 `sandbox.ignoreViolations`

2109</h3>2214</h3>

2110 2215 

2111Unterdrücken Sie Sandbox-Verletzungsberichte für Pfade, bei denen Sie erwarten, dass ein Befehl sie prüft und abgelehnt wird, z. B. ein Tool, das beim Start `/etc/hosts` prüft, damit diese Ablehnungen nicht als Verletzungen angezeigt werden oder in dem, was Claude sieht. Die Sandbox blockiert den Zugriff weiterhin; nur der Bericht wird unterdrückt. Schlüssel sind Teilzeichenfolgen, die mit dem Befehl abgeglichen werden, wobei `*` jeden Befehl abgleicht, und Werte sind Teilzeichenfolgen der Verletzung, die für diesen Befehl ignoriert werden, z. B. ein Dateisystempfad.2216Unterdrücken Sie Sandbox-Verletzungsberichte für Pfade, bei denen Sie erwarten, dass ein Befehl sie prüft und abgewiesen wird, z. B. ein Tool, das beim Start `/etc/hosts` prüft, damit diese Ablehnungen weder als Verletzungen angezeigt werden noch in dem auftauchen, was Claude sieht. Die Sandbox blockiert den Zugriff weiterhin; nur der Bericht wird unterdrückt. Schlüssel sind Teilzeichenfolgen, die mit dem Befehl abgeglichen werden, wobei `*` auf jeden Befehl passt, und Werte sind Teilzeichenfolgen der Verletzung, die für diesen Befehl ignoriert werden sollen, z. B. ein Dateisystempfad.

2112 2217 

2113* **Bereich**: [`Any file`](#scopes)2218* **Bereich**: [`Any file`](#scopes), mit [Einschränkungen für Projekt- und lokale Einstellungen](/docs/de/sandboxing#repository-settings-under-an-admin-required-sandbox)

2114* **Typ**: Objekt, das eine Befehlsteilzeichenfolge einem Array von Verletzungsteilzeichenfolgen zuordnet, normalerweise Pfade2219* **Typ**: Objekt, das eine Befehlsteilzeichenfolge einem Array von Verletzungsteilzeichenfolgen zuordnet, normalerweise Pfade

2115* **Standard**: nicht gesetzt, daher wird jede Verletzung gemeldet2220* **Standard**: nicht gesetzt, daher wird jede Verletzung gemeldet

2116 2221 


2128 `sandbox.enableWeakerNestedSandbox`2233 `sandbox.enableWeakerNestedSandbox`

2129</h3>2234</h3>

2130 2235 

2131Führen Sie die Linux-Sandbox in einem unprivilegierten Docker-Container aus, wo bubblewrap kein frisches `/proc` mounten kann. Stattdessen bindet die innere Sandbox das vorhandene `/proc` des Containers, das Prozessinformationen offenlegt, die ein frisches Mount verbergen würde. Dies reduziert die Sicherheit; verwenden Sie es nur, wenn der äußere Container bereits die Isolierung bietet, die Sie benötigen.2236Führen Sie die Linux-Sandbox in einem unprivilegierten Docker-Container aus, in dem bubblewrap kein frisches `/proc` mounten kann. Stattdessen bindet die innere Sandbox das vorhandene `/proc` des Containers per Bind-Mount ein, wodurch Prozessinformationen offengelegt werden, die ein frisches Mount verbergen würde. Dies verringert die Sicherheit; verwenden Sie es nur, wenn der äußere Container bereits die benötigte Isolierung bietet.

2132 2237 

2133* **Bereich**: [`Any file`](#scopes)2238* **Bereich**: [`Any file`](#scopes), mit [Einschränkungen für Projekt- und lokale Einstellungen](/docs/de/sandboxing#repository-settings-under-an-admin-required-sandbox)

2134* **Typ**: Boolescher Wert2239* **Typ**: Boolescher Wert

2135 * `true`: die innere Sandbox bindet das vorhandene `/proc` des Containers, anstatt ein frisches zu mounten2240 * `true`: Die innere Sandbox bindet das vorhandene `/proc` des Containers per Bind-Mount ein, anstatt ein frisches zu mounten

2136 * `false`: die Sandbox mountet ein frisches `/proc`, das in einem unprivilegierten Docker-Container nicht funktioniert2241 * `false`: Die Sandbox mountet ein frisches `/proc`, was in einem unprivilegierten Docker-Container nicht funktioniert

2137* **Standard**: `false`2242* **Standard**: `false`

2138 2243 

2139```json settings.json theme={null}2244```json settings.json theme={null}


2151 `sandbox.enableWeakerNetworkIsolation`2256 `sandbox.enableWeakerNetworkIsolation`

2152</h3>2257</h3>

2153 2258 

2154Lassen Sie sandboxed Befehle auf macOS den System-TLS-Vertrauensdienst `com.apple.trustd.agent` erreichen. Go-basierte Tools wie `gh`, `gcloud` und `terraform` benötigen ihn, um TLS-Zertifikate zu überprüfen, wenn Sie [`network.httpProxyPort`](#sandbox-network-httpproxyport) mit einem MITM-Proxy und einer benutzerdefinierten CA verwenden. Dies reduziert die Sicherheit, indem ein potenzieller Datenexfiltrationspfad durch den Vertrauensdienst geöffnet wird.2259Lassen Sie Befehle in der Sandbox auf macOS den System-TLS-Vertrauensdienst `com.apple.trustd.agent` erreichen. Go-basierte Tools wie `gh`, `gcloud` und `terraform` benötigen ihn, um TLS-Zertifikate zu überprüfen, wenn Sie [`network.httpProxyPort`](#sandbox-network-httpproxyport) mit einem MITM-Proxy und einer benutzerdefinierten CA verwenden. Dies verringert die Sicherheit, da über den Vertrauensdienst ein potenzieller Pfad zur Datenexfiltration geöffnet wird.

2155 2260 

2156* **Bereich**: [`Any file`](#scopes)2261* **Bereich**: [`Any file`](#scopes), mit [Einschränkungen für Projekt- und lokale Einstellungen](/docs/de/sandboxing#repository-settings-under-an-admin-required-sandbox)

2157* **Typ**: Boolescher Wert2262* **Typ**: Boolescher Wert

2158 * `true`: sandboxed Befehle auf macOS können `com.apple.trustd.agent` erreichen2263 * `true`: Befehle in der Sandbox auf macOS können `com.apple.trustd.agent` erreichen

2159 * `false`: sandboxed Befehle auf macOS können den System-TLS-Vertrauensdienst nicht erreichen2264 * `false`: Befehle in der Sandbox auf macOS können den System-TLS-Vertrauensdienst nicht erreichen

2160* **Standard**: `false`2265* **Standard**: `false`

2161 2266 

2162```json settings.json theme={null}2267```json settings.json theme={null}


2168}2273}

2169```2274```

2170 2275 

2171Wenn Sie keinen MITM-Proxy verwenden, listen Sie stattdessen die fehlgeschlagenen Tools in [`excludedCommands`](#sandbox-excludedcommands) auf; siehe [Go-based CLIs fail TLS verification on macOS](/docs/de/sandboxing#troubleshooting).2276Wenn Sie keinen MITM-Proxy verwenden, listen Sie die fehlschlagenden Tools stattdessen in [`excludedCommands`](#sandbox-excludedcommands) auf; siehe [Go-based CLIs fail TLS verification on macOS](/docs/de/sandboxing#troubleshooting).

2172 2277 

2173<h3 id="sandbox-allowappleevents">2278<h3 id="sandbox-allowappleevents">

2174 `sandbox.allowAppleEvents`2279 `sandbox.allowAppleEvents`

2175</h3>2280</h3>

2176 2281 

2177Lassen Sie sandboxed Befehle auf macOS Apple Events senden, die `open`, `osascript` und Tools, die URLs in einem Browser öffnen, benötigen; ohne dies schlagen sie mit Fehler `-600` fehl. Dies entfernt die Code-Ausführungs-Isolierung: sandboxed Befehle können andere Anwendungen unsandboxed ohne Benutzeraufforderung starten und können AppleScript-Befehle an laufende Anwendungen wie Terminal senden, vorbehaltlich der Pro-App-macOS-Automatisierungszustimmungsaufforderung (TCC).2282Lassen Sie Befehle in der Sandbox auf macOS Apple Events senden, die `open`, `osascript` und Tools, die URLs in einem Browser öffnen, benötigen; ohne diese Einstellung schlagen sie mit dem Fehler `-600` fehl. Dies hebt die Isolierung der Codeausführung auf: Befehle in der Sandbox können andere Anwendungen ohne Sandbox und ohne Benutzerabfrage starten und AppleScript-Befehle an laufende Anwendungen wie Terminal senden, vorbehaltlich der macOS-Abfrage zur Automatisierungszustimmung pro App (TCC).

2178 2283 

2179* **Bereich**: [`User or managed`](#scopes)2284* **Bereich**: [`User or managed`](#scopes)

2180* **Typ**: Boolescher Wert2285* **Typ**: Boolescher Wert

2181 * `true`: sandboxed Befehle auf macOS können Apple Events senden2286 * `true`: Befehle in der Sandbox auf macOS können Apple Events senden

2182 * `false`: sandboxed Befehle auf macOS können keine Apple Events senden, daher schlagen `open` und `osascript` mit Fehler `-600` fehl2287 * `false`: Befehle in der Sandbox auf macOS können keine Apple Events senden, daher schlagen `open` und `osascript` mit dem Fehler `-600` fehl

2183* **Standard**: `false`2288* **Standard**: `false`

2184 2289 

2185```json settings.json theme={null}2290```json settings.json theme={null}


2191}2296}

2192```2297```

2193 2298 

2194Um die Isolierung zu behalten und trotzdem ein solches Tool auszuführen, fügen Sie es stattdessen zu [`excludedCommands`](#sandbox-excludedcommands) hinzu. Siehe [Apple Events on macOS](/docs/de/sandboxing#security-limitations).2299Um die Isolierung beizubehalten und trotzdem ein solches Tool auszuführen, fügen Sie es stattdessen zu [`excludedCommands`](#sandbox-excludedcommands) hinzu. Siehe [Apple Events on macOS](/docs/de/sandboxing#security-limitations).

2195 2300 

2196<h3 id="sandbox-ripgrep">2301<h3 id="sandbox-ripgrep">

2197 `sandbox.ripgrep`2302 `sandbox.ripgrep`

2198</h3>2303</h3>

2199 2304 

2200Zeigen Sie die Sandbox auf eine ripgrep-Binärdatei Ihrer Wahl, z. B. wenn Ihre Plattform eine anders erstellte `rg` benötigt.2305Verweisen Sie die Sandbox auf eine eigene ripgrep-Binärdatei statt auf die, die Claude Code verwendet, z. B. wenn Ihre Plattform ein anders gebautes `rg` benötigt.

2201 2306 

2202* **Bereich**: [`User or managed`](#scopes)2307* **Bereich**: [`User or managed`](#scopes)

2203* **Typ**: Objekt mit `command`, dem Pfad zur ripgrep-Binärdatei, und optional `args`, einem Array von Argumenten zum Voranstellen2308* **Typ**: Objekt mit `command`, dem Pfad zur ripgrep-Binärdatei, und optional `args`, einem Array von Argumenten, die vorangestellt werden

2204* **Standard**: nicht gesetzt, daher verwendet die Sandbox die gleiche ripgrep-Binärdatei wie Claude Code. Das ist die gebündelte Binärdatei, sofern Sie [`USE_BUILTIN_RIPGREP`](/docs/de/env-vars) nicht auf `0` setzen2309* **Standard**: nicht gesetzt, daher verwendet die Sandbox dieselbe ripgrep-Binärdatei wie Claude Code. Das ist die gebündelte Binärdatei, sofern Sie [`USE_BUILTIN_RIPGREP`](/docs/de/env-vars) nicht auf `0` setzen

2205 2310 

2206```json settings.json theme={null}2311```json settings.json theme={null}

2207{2312{


2217 `sandbox.bwrapPath`2322 `sandbox.bwrapPath`

2218</h3>2323</h3>

2219 2324 

2220Zeigen Sie die Sandbox auf eine bubblewrap-Binärdatei, die außerhalb von `PATH` installiert ist, z. B. eine Vendor-Kopie auf einem luftgestützten Host. Claude Code verwendet den Pfad sowohl für die Abhängigkeitsprüfung beim Start als auch wenn es jeden sandboxed Befehl umhüllt.2325Verweisen Sie die Sandbox auf eine bubblewrap-Binärdatei, die außerhalb von `PATH` installiert ist, z. B. eine mitgelieferte Kopie auf einem vom Netzwerk isolierten Host. Claude Code verwendet den Pfad sowohl für die Abhängigkeitsprüfung beim Start als auch beim Umhüllen jedes Befehls in der Sandbox.

2221 2326 

2222* **Bereich**: [`Managed`](#scopes). Claude Code liest es nur aus verwalteten Einstellungen, damit eine Benutzer-, Projekt- oder lokale Datei die Sandbox nicht auf eine andere Binärdatei zeigen kann.2327* **Bereich**: [`Managed`](#scopes). Claude Code liest es nur aus verwalteten Einstellungen, damit eine Benutzer-, Projekt- oder lokale Datei die Sandbox nicht auf eine andere Binärdatei verweisen kann.

2223* **Typ**: Zeichenfolge, ein absoluter Pfad; Claude Code verwirft einen relativen Pfad und fällt auf `PATH`-Suche zurück2328* **Typ**: Zeichenfolge, ein absoluter Pfad; Claude Code verwirft einen relativen Pfad und greift auf die Suche in `PATH` zurück

2224* **Standard**: nicht gesetzt, daher findet Claude Code `bwrap` auf `PATH`2329* **Standard**: nicht gesetzt, daher sucht Claude Code `bwrap` in `PATH`

2225 2330 

2226```json managed-settings.json theme={null}2331```json managed-settings.json theme={null}

2227{2332{


2238 `sandbox.socatPath`2343 `sandbox.socatPath`

2239</h3>2344</h3>

2240 2345 

2241Zeigen Sie den Sandbox-Netzwerk-Proxy auf eine `socat`-Binärdatei, die außerhalb von `PATH` installiert ist.2346Verweisen Sie den Sandbox-Netzwerk-Proxy auf eine `socat`-Binärdatei, die außerhalb von `PATH` installiert ist.

2242 2347 

2243* **Bereich**: [`Managed`](#scopes)2348* **Bereich**: [`Managed`](#scopes)

2244* **Typ**: Zeichenfolge, ein absoluter Pfad; Claude Code verwirft einen relativen Pfad und fällt auf `PATH`-Suche zurück2349* **Typ**: Zeichenfolge, ein absoluter Pfad; Claude Code verwirft einen relativen Pfad und greift auf die Suche in `PATH` zurück

2245* **Standard**: nicht gesetzt, daher findet Claude Code `socat` auf `PATH`2350* **Standard**: nicht gesetzt, daher sucht Claude Code `socat` in `PATH`

2246 2351 

2247```json managed-settings.json theme={null}2352```json managed-settings.json theme={null}

2248{2353{


2259 `sandbox.credentials`2364 `sandbox.credentials`

2260</h3>2365</h3>

2261 2366 

2262Deklarieren Sie die Anmeldedateien und Umgebungsvariablen, um [sie vor sandboxed Befehlen zu schützen](/docs/de/sandboxing#protect-credentials). Jeder Eintrag benennt eine Datei `path` oder eine Variable `name` und einen `mode`: `deny` verbirgt die Anmeldedaten in der Sandbox, und `mask` zeigt sandboxed Befehlen einen Platzhalter, während der [Sandbox-Proxy](/docs/de/sandboxing#mask-credentials) den echten Wert bei ausgehenden Anfragen ersetzt. Claude Code schützt nur die Einträge, die Sie auflisten; es gibt keine integrierte Anmeldedaten-Ablehnungsliste.2367Deklarieren Sie die Anmeldedateien und Umgebungsvariablen, die [vor Befehlen in der Sandbox geschützt werden sollen](/docs/de/sandboxing#protect-credentials). Jeder Eintrag benennt eine Datei `path` oder eine Variable `name` und einen `mode`: `deny` verbirgt die Anmeldedaten in der Sandbox, und `mask` zeigt Befehlen in der Sandbox einen Platzhalter, während der [Sandbox-Proxy](/docs/de/sandboxing#mask-credentials) bei ausgehenden Anfragen den echten Wert einsetzt. Claude Code schützt nur die Einträge, die Sie auflisten; es gibt keine integrierte Denylist für Anmeldedaten.

2263 2368 

2264* **Bereich**: [`Any file`](#scopes). Claude Code beachtet `mask`-Einträge, `allowPlaintextInject`, `awsPairs` und `sigv4` nur aus Benutzereinstellungen, verwalteten Einstellungen und dem `--settings`-Flag.2369* **Bereich**: [`Any file`](#scopes). Claude Code berücksichtigt `mask`-Einträge, `allowPlaintextInject`, `awsPairs` und `sigv4` nur aus Benutzereinstellungen, verwalteten Einstellungen und dem `--settings`-Flag.

2265* **Typ**: Objekt mit `files`, `envVars`, `allowPlaintextInject`, `awsPairs` und `sigv4`2370* **Typ**: Objekt mit `files`, `envVars`, `allowPlaintextInject`, `awsPairs` und `sigv4`

2266* **Standard**: nicht gesetzt, daher werden keine Anmeldedaten geschützt2371* **Standard**: nicht gesetzt, daher werden keine Anmeldedaten geschützt

2267 2372 

2268Dies verbirgt Ihre AWS-Anmeldedatei und entfernt `GITHUB_TOKEN` aus sandboxed Befehlen:2373Dies verbirgt Ihre AWS-Anmeldedatei und entfernt `GITHUB_TOKEN` aus Befehlen in der Sandbox:

2269 2374 

2270```json settings.json theme={null}2375```json settings.json theme={null}

2271{2376{


2278}2383}

2279```2384```

2280 2385 

2281Der `deny`-Dateischutz ist Teil der Dateisystem-Schicht, daher gilt er nicht, wenn Sie [Dateisystem-Isolierung deaktivieren](/docs/de/sandboxing#disable-filesystem-isolation); der Umgebungsvariablenschutz gilt weiterhin.2386Der `deny`-Dateischutz ist Teil der Dateisystem-Schicht, daher gilt er nicht, wenn Sie [die Dateisystem-Isolierung deaktivieren](/docs/de/sandboxing#disable-filesystem-isolation); der Schutz von Umgebungsvariablen gilt weiterhin.

2282 2387 

2283<h4 id="invalid-credential-entries-in-managed-settings">2388<h4 id="invalid-credential-entries-in-managed-settings">

2284 Ungültige Anmeldedaten-Einträge in verwalteten Einstellungen2389 Ungültige Anmeldedaten-Einträge in verwalteten Einstellungen

2285</h4>2390</h4>

2286 2391 

2287Wenn ein verwalteter `sandbox.credentials`-Eintrag die Validierung nicht besteht, schützt Claude Code die Anmeldedaten, wo es kann:2392Wenn ein verwalteter `sandbox.credentials`-Eintrag die Validierung nicht besteht, schützt Claude Code die Anmeldedaten weiterhin, soweit möglich:

2288 2393 

2289* Ein Eintrag in `files` oder `envVars`, der immer noch einen gültigen `path` oder `name` und einen `mode` von `mask` oder `deny` hat, z. B. einer, dessen `extract`-Muster keine Erfassungsgruppe hat, wird mit einer Warnung auf `mode: "deny"` herabgestuft, daher bleibt die Anmeldedaten blockiert, nicht maskiert, bis Sie den Eintrag beheben. Ein herabgestufter `files`-Eintrag fixiert [`filesystem.disabled`](/docs/de/sandboxing#disable-filesystem-isolation) wie ein expliziter `deny`-Eintrag, und die Warnung vermerkt, dass sein Lesblock nicht erzwungen wird, wenn verwaltete Einstellungen die Dateisystem-Isolierung ausschalten.2394* Ein Eintrag in `files` oder `envVars`, der noch einen gültigen `path` oder `name` und einen `mode` von `mask` oder `deny` hat, z. B. einer, dessen `extract`-Muster keine Erfassungsgruppe hat, wird mit einer Warnung auf `mode: "deny"` herabgestuft, sodass die Anmeldedaten blockiert statt maskiert bleiben, bis Sie den Eintrag korrigieren. Ein herabgestufter `files`-Eintrag fixiert [`filesystem.disabled`](/docs/de/sandboxing#disable-filesystem-isolation) wie ein expliziter `deny`-Eintrag, und die Warnung weist darauf hin, dass seine Lesesperre nicht erzwungen wird, wenn verwaltete Einstellungen die Dateisystem-Isolierung ausschalten.

2290* Ein Eintrag mit einem unbekannten `mode` oder einem ungültigen `path` oder `name` wird entfernt.2395* Ein Eintrag mit einem unbekannten `mode` oder einem ungültigen `path` oder `name` wird entfernt.

2291* Jeder Fall warnt; ob ein Eintrag herabgestuft oder entfernt wird, die verbleibenden gültigen Einträge werden weiterhin erzwungen, und ein vollständig ungültiger `credentials`-Wert wird gelöscht, während der Rest von `sandbox` weiterhin gilt.2396* In jedem Fall wird gewarnt; ob ein Eintrag herabgestuft oder entfernt wird, die verbleibenden gültigen Einträge werden weiterhin erzwungen, und ein vollständig ungültiger `credentials`-Wert wird verworfen, während der Rest von `sandbox` weiterhin gilt.

2292 2397 

2293Gilt in v2.1.191 und später; vor v2.1.221 wurde jeder ungültige Eintrag entfernt. Für die anderen verwalteten Schlüssel mit Pro-Feld-Behandlung siehe [Invalid entries in managed settings](/docs/de/managed-settings#invalid-entries-in-managed-settings).2398Gilt in v2.1.191 und später; vor v2.1.221 wurde jeder ungültige Eintrag entfernt. Für die anderen verwalteten Schlüssel mit feldweiser Behandlung siehe [Invalid entries in managed settings](/docs/de/managed-settings#invalid-entries-in-managed-settings).

2294 2399 

2295<h3 id="sandbox-credentials-files">2400<h3 id="sandbox-credentials-files">

2296 `sandbox.credentials.files`2401 `sandbox.credentials.files`

2297</h3>2402</h3>

2298 2403 

2299Schützen Sie Anmeldedateien oder Verzeichnisse vor sandboxed Befehlen. Mit `"mode": "deny"` blockiert Claude Code Lesevorgänge des Pfads in der Sandbox, der gleiche Lesblock wie [`sandbox.filesystem.denyRead`](#sandbox-filesystem-denyread). Mit `"mode": "mask"` lesen sandboxed Befehle auf Linux und WSL2 eine Sentinel-Kopie der Datei, und der Sandbox-Proxy ersetzt den echten Wert bei ausgehenden Anfragen an die `injectHosts` dieses Eintrags; auf macOS ist die Datei in der Sandbox stattdessen nicht lesbar. `"mode": "mask"` erfordert Claude Code v2.1.221 oder später.2404Schützen Sie Anmeldedateien oder Verzeichnisse vor Befehlen in der Sandbox. Mit `"mode": "deny"` blockiert Claude Code Lesevorgänge des Pfads in der Sandbox, dieselbe Lesesperre wie bei [`sandbox.filesystem.denyRead`](#sandbox-filesystem-denyread). Mit `"mode": "mask"` lesen Befehle in der Sandbox auf Linux und WSL2 eine Sentinel-Kopie der Datei, und der Sandbox-Proxy setzt bei ausgehenden Anfragen an die `injectHosts` dieses Eintrags den echten Wert ein; auf macOS ist die Datei in der Sandbox stattdessen nicht lesbar. `"mode": "mask"` erfordert Claude Code v2.1.221 oder später.

2300 2405 

2301* **Bereich**: [`Any file`](#scopes). Claude Code lässt `mask`-Einträge aus Projekt `.claude/settings.json` und lokal `.claude/settings.local.json` fallen.2406* **Bereich**: [`Any file`](#scopes). Claude Code verwirft `mask`-Einträge aus der Projektdatei `.claude/settings.json` und der lokalen Datei `.claude/settings.local.json`.

2302* **Typ**: Array von Objekten, jedes mit `path` und einem `mode` von `"deny"` oder `"mask"`, plus die optionalen [Maskierungsfelder für Dateien](#mask-fields-for-files)2407* **Typ**: Array von Objekten, jedes mit `path` und einem `mode` von `"deny"` oder `"mask"`, plus die optionalen [Maskierungsfelder für Dateien](#mask-fields-for-files)

2303* **Standard**: nicht gesetzt, daher werden keine Anmeldedateien geschützt2408* **Standard**: nicht gesetzt, daher werden keine Anmeldedateien geschützt

2304 2409 

2305Dies verbirgt Ihre AWS-Anmeldedatei und maskiert die `gh`-Hosts-Datei, wobei der echte Wert nur bei Anfragen an `api.github.com` ersetzt wird:2410Dies verbirgt Ihre AWS-Anmeldedatei und maskiert die `gh`-Hosts-Datei, wobei der echte Wert nur bei Anfragen an `api.github.com` eingesetzt wird:

2306 2411 

2307```json settings.json theme={null}2412```json settings.json theme={null}

2308{2413{


2317}2422}

2318```2423```

2319 2424 

2320Pfade verwenden die gleichen [Präfixe](#sandbox-path-prefixes) wie die `sandbox.filesystem.*`-Einstellungen, und Claude Code führt die Arrays aus jedem Einstellungsbereich zusammen, den die Sitzung lädt. [Protect credentials](/docs/de/sandboxing#protect-credentials) behandelt das, was weiterhin aus Quellen gilt, die Sie mit `--setting-sources` ausschließen. `mask`-Einträge erfordern Claude Code v2.1.221 oder später.2425Pfade verwenden dieselben [Präfixe](#sandbox-path-prefixes) wie die `sandbox.filesystem.*`-Einstellungen, und Claude Code führt die Arrays aus jedem Einstellungsbereich zusammen, den die Sitzung lädt. [Protect credentials](/docs/de/sandboxing#protect-credentials) behandelt, was aus Quellen, die Sie mit `--setting-sources` ausschließen, weiterhin gilt. `mask`-Einträge erfordern Claude Code v2.1.221 oder später.

2321 2426 

2322`mask`-Ersetzung läuft nur durch den Sandbox-Proxy, daher setzen Sie [`sandbox.network.tlsTerminate`](#sandbox-network-tlsterminate) oder [`allowPlaintextInject`](#sandbox-credentials-allowplaintextinject) für Plain-HTTP-Test-Netzwerke. `mask` gilt für eine einzelne Datei, daher listen Sie jede Anmeldedatei einzeln auf. Claude Code akzeptiert aber ignoriert die `mask`-Felder auf einem `deny`-Eintrag. [Mask credential files](/docs/de/sandboxing#mask-credential-files) behandelt, welche Einstellungsquellen beachtet werden und wann ein Eintrag auf `deny` zurückfällt.2427Die `mask`-Ersetzung läuft nur über den Sandbox-Proxy, setzen Sie daher [`sandbox.network.tlsTerminate`](#sandbox-network-tlsterminate) oder für Testnetzwerke mit einfachem HTTP [`allowPlaintextInject`](#sandbox-credentials-allowplaintextinject). `mask` gilt für eine einzelne Datei, listen Sie daher jede Anmeldedatei einzeln auf. Claude Code akzeptiert die `mask`-Felder bei einem `deny`-Eintrag, ignoriert sie aber. [Mask credential files](/docs/de/sandboxing#mask-credential-files) behandelt, welche Einstellungsquellen berücksichtigt werden und wann ein Eintrag auf `deny` zurückfällt.

2323 2428 

2324<span id="sandbox-credentials-files-extract" />2429<span id="sandbox-credentials-files-extract" />

2325 2430 


2339 2444 

2340Ein `mask`-Eintrag akzeptiert diese optionalen Felder. Ohne `extract` oder `decode` ersetzt Claude Code den gesamten Dateiinhalt durch einen Sentinel. Auf macOS mit aktivierter Dateisystem-Isolierung wendet Claude Code einen `mask`-Eintrag als `deny` an, bevor `extract` oder `decode` ausgeführt wird; siehe [Mask credential files](/docs/de/sandboxing#mask-credential-files).2445Ein `mask`-Eintrag akzeptiert diese optionalen Felder. Ohne `extract` oder `decode` ersetzt Claude Code den gesamten Dateiinhalt durch einen Sentinel. Auf macOS mit aktivierter Dateisystem-Isolierung wendet Claude Code einen `mask`-Eintrag als `deny` an, bevor `extract` oder `decode` ausgeführt wird; siehe [Mask credential files](/docs/de/sandboxing#mask-credential-files).

2341 2446 

2342| Feld | Typ | Was es tut |2447| Feld | Typ | Funktion |

2343| :- | :- | :- |2448| :- | :- | :- |

2344| `extract` | Zeichenfolge, ein regulärer Ausdruck mit mindestens einer Erfassungsgruppe | Maskieren Sie nur den Text, der von Gruppe 1 jedes Treffers erfasst wird, damit der Rest der Datei analysierbar bleibt. Wenn `decode` auch gesetzt ist, prüft Claude Code jeden Erfassten als mögliches JWT, anstatt ihn direkt zu ersetzen. Erfordert v2.1.221 oder später |2449| `extract` | Zeichenfolge, ein regulärer Ausdruck mit mindestens einer Erfassungsgruppe | Maskiert nur den Text, den Gruppe 1 jedes Treffers erfasst, damit der Rest der Datei parsebar bleibt. Wenn zusätzlich `decode` gesetzt ist, prüft Claude Code jede Erfassung als mögliches JWT, anstatt sie direkt zu ersetzen. Erfordert v2.1.221 oder später |

2345| `onExtractNoMatch` | `"warn"`, `"deny"` oder `"error"`; Standard `"warn"` | Was passiert, wenn `extract` oder `decode` nichts zu maskieren findet. `warn` lässt die Datei in der Sandbox lesbar wie sie ist, `deny` macht sie nicht lesbar, und `error` stoppt das Sandbox-Setup, bis Sie die Konfiguration beheben. Claude Code behandelt `deny` als `error`, wenn der Lesblock nicht erzwungen würde, weil Sie [Dateisystem-Isolierung deaktivieren](/docs/de/sandboxing#disable-filesystem-isolation) oder ein [`sandbox.filesystem.allowRead`](#sandbox-filesystem-allowread)-Eintrag den Pfad erneut öffnet. Erfordert v2.1.221 oder später; der `decode`-Fall erfordert v2.1.224 oder später |2450| `onExtractNoMatch` | `"warn"`, `"deny"` oder `"error"`; Standard `"warn"` | Was passiert, wenn `extract` oder `decode` nichts zum Maskieren findet. `warn` lässt die Datei in der Sandbox unverändert lesbar, `deny` macht sie unlesbar, und `error` stoppt die Einrichtung der Sandbox, bis Sie die Konfiguration korrigieren. Claude Code behandelt `deny` als `error`, wenn die Lesesperre nicht erzwungen würde, weil Sie [die Dateisystem-Isolierung deaktivieren](/docs/de/sandboxing#disable-filesystem-isolation) oder ein [`sandbox.filesystem.allowRead`](#sandbox-filesystem-allowread)-Eintrag den Pfad wieder freigibt. Erfordert v2.1.221 oder später; der `decode`-Fall erfordert v2.1.224 oder später |

2346| `decode` | die Zeichenfolge `"jwt"` | Finden Sie JSON Web Tokens (JWTs) in der Datei, mit einem integrierten Muster oder mit `extract`, wenn gesetzt, überprüfen Sie jeden Kandidaten und ersetzen Sie ihn durch ein strukturell gültiges gefälschtes Token, damit Code in der Sandbox, der das Token dekodiert, weiterhin funktioniert. Wenn kein Kandidat überprüft wird, regiert `onExtractNoMatch` das Ergebnis. Erfordert v2.1.224 oder später |2451| `decode` | die Zeichenfolge `"jwt"` | Findet JSON Web Tokens (JWTs) in der Datei, mit einem integrierten Muster oder mit `extract`, falls gesetzt, verifiziert jeden Kandidaten und ersetzt ihn durch ein strukturell gültiges gefälschtes Token, damit Code in der Sandbox, der das Token dekodiert, weiterhin funktioniert. Wenn kein Kandidat verifiziert wird, bestimmt `onExtractNoMatch` das Ergebnis. Erfordert v2.1.224 oder später |

2347| `maskClaims` | Array von Zeichenfolgen, mindestens ein Anspruchsname; erfordert `decode` | Maskieren Sie nur die benannten Top-Level-Payload-Ansprüche in jedem überprüften JWT und erstellen Sie das Token um die geänderte Payload neu auf, damit die anderen Ansprüche lesbar bleiben. Wenn kein benannter Anspruch übereinstimmt, regiert `onExtractNoMatch` das Ergebnis. Erfordert v2.1.224 oder später |2452| `maskClaims` | Array von Zeichenfolgen, mindestens ein Claim-Name; erfordert `decode` | Maskiert nur die benannten Top-Level-Claims der Payload in jedem verifizierten JWT und baut das Token um die geänderte Payload herum neu auf, damit die anderen Claims lesbar bleiben. Wenn kein benannter Claim passt, bestimmt `onExtractNoMatch` das Ergebnis. Erfordert v2.1.224 oder später |

2348| `maskDuplicates` | Boolescher Wert, Standard `false` | Ersetzen Sie auch wörtliche Kopien jedes maskierten Werts anderswo in der Datei, z. B. ein Geheimnis, das in einen Kommentar eingefügt wurde. Claude Code gleicht rohe Teilzeichenfolgen ab, daher reservieren Sie es für lange, hochentropische Geheimnisse. Wird nur berücksichtigt, wenn `extract` oder `decode` gesetzt ist. Erfordert v2.1.221 oder später |2453| `maskDuplicates` | Boolescher Wert, Standard `false` | Ersetzt auch wörtliche Kopien jedes maskierten Werts an anderen Stellen der Datei, z. B. ein in einen Kommentar eingefügtes Geheimnis. Claude Code gleicht rohe Teilzeichenfolgen ab, verwenden Sie es daher nur für lange Geheimnisse mit hoher Entropie. Wird nur berücksichtigt, wenn `extract` oder `decode` gesetzt ist. Erfordert v2.1.221 oder später |

2349| `injectHosts` | Array von Zeichenfolgen, jede ein Host, den [`sandbox.network.allowedDomains`](#sandbox-network-alloweddomains) auch zulässt | Verengen Sie die Hosts, wo der Sandbox-Proxy den echten Wert ersetzt. Wenn nicht gesetzt, ersetzt der Proxy ihn bei Anfragen an jeden Host in `sandbox.network.allowedDomains`. Erfordert v2.1.221 oder später |2454| `injectHosts` | Array von Zeichenfolgen, jede ein Host, den [`sandbox.network.allowedDomains`](#sandbox-network-alloweddomains) ebenfalls zulässt | Grenzt die Hosts ein, bei denen der Sandbox-Proxy den echten Wert einsetzt. Wenn nicht gesetzt, setzt der Proxy ihn bei Anfragen an jeden Host in `sandbox.network.allowedDomains` ein. Erfordert v2.1.221 oder später |

2350 2455 

2351Dies maskiert nur den `oauth_token`-Wert in der `gh`-Hosts-Datei, ersetzt jede andere Kopie davon in der Datei, macht die Datei nicht lesbar, wenn das Muster nichts abgleicht, und ersetzt das echte Token nur bei Anfragen an `api.github.com`:2456Dies maskiert nur den `oauth_token`-Wert in der `gh`-Hosts-Datei, ersetzt jede andere Kopie davon in der Datei, macht die Datei unlesbar, wenn das Muster auf nichts passt, und setzt das echte Token nur bei Anfragen an `api.github.com` ein:

2352 2457 

2353```json settings.json theme={null}2458```json settings.json theme={null}

2354{2459{


2373 `sandbox.credentials.envVars`2478 `sandbox.credentials.envVars`

2374</h3>2479</h3>

2375 2480 

2376Schützen Sie Umgebungsvariablen vor sandboxed Befehlen. Mit `"mode": "deny"` entfernt Claude Code die Variable aus der Umgebung von sandboxed Befehlen. Mit `"mode": "mask"` sehen sandboxed Befehle einen pro-Sitzungs-Sentinel-Wert, und der Sandbox-Proxy ersetzt den echten Wert bei ausgehenden Anfragen an die `injectHosts` dieses Eintrags, daher behalten Tools wie `gh` und `npm` die Authentifizierung bei, ohne jemals die echte Anmeldedaten zu halten. `"mode": "mask"` erfordert Claude Code v2.1.199 oder später.2481Schützen Sie Umgebungsvariablen vor Befehlen in der Sandbox. Mit `"mode": "deny"` entfernt Claude Code die Variable aus der Umgebung von Befehlen in der Sandbox. Mit `"mode": "mask"` sehen Befehle in der Sandbox einen sitzungsspezifischen Sentinel-Wert, und der Sandbox-Proxy setzt bei ausgehenden Anfragen an die `injectHosts` dieses Eintrags den echten Wert ein, sodass Tools wie `gh` und `npm` sich weiterhin authentifizieren, ohne jemals die echten Anmeldedaten zu besitzen. `"mode": "mask"` erfordert Claude Code v2.1.199 oder später.

2377 2482 

2378* **Bereich**: [`Any file`](#scopes). Claude Code lässt `mask`-Einträge aus Projekt `.claude/settings.json` und lokal `.claude/settings.local.json` fallen.2483* **Bereich**: [`Any file`](#scopes). Claude Code verwirft `mask`-Einträge aus der Projektdatei `.claude/settings.json` und der lokalen Datei `.claude/settings.local.json`.

2379* **Typ**: Array von Objekten, jedes mit `name` und einem `mode` von `"deny"` oder `"mask"`, plus die optionalen [Maskierungsfelder für Umgebungsvariablen](#mask-fields-for-environment-variables)2484* **Typ**: Array von Objekten, jedes mit `name` und einem `mode` von `"deny"` oder `"mask"`, plus die optionalen [Maskierungsfelder für Umgebungsvariablen](#mask-fields-for-environment-variables)

2380* **Standard**: nicht gesetzt, daher werden keine Umgebungsvariablen geschützt2485* **Standard**: nicht gesetzt, daher werden keine Umgebungsvariablen geschützt

2381 2486 

2382Dies entfernt `NPM_TOKEN` aus sandboxed Befehlen und maskiert `GITHUB_TOKEN`, wobei der echte Wert nur bei Anfragen an `api.github.com` ersetzt wird:2487Dies entfernt `NPM_TOKEN` aus Befehlen in der Sandbox und maskiert `GITHUB_TOKEN`, wobei der echte Wert nur bei Anfragen an `api.github.com` eingesetzt wird:

2383 2488 

2384```json settings.json theme={null}2489```json settings.json theme={null}

2385{2490{


2394}2499}

2395```2500```

2396 2501 

2397Der `name` muss mit einem Buchstaben oder Unterstrich beginnen und darf nur Buchstaben, Ziffern und Unterstriche enthalten. Claude Code führt die Arrays aus jedem Einstellungsbereich zusammen, den die Sitzung lädt, und wendet `deny` an, wenn die gleiche Variable mit beiden Modi erscheint. [Protect credentials](/docs/de/sandboxing#protect-credentials) behandelt das, was weiterhin aus Quellen gilt, die Sie mit `--setting-sources` ausschließen. `mask`-Einträge erfordern Claude Code v2.1.199 oder später.2502Der `name` muss mit einem Buchstaben oder Unterstrich beginnen und darf nur Buchstaben, Ziffern und Unterstriche enthalten. Claude Code führt die Arrays aus jedem Einstellungsbereich zusammen, den die Sitzung lädt, und wendet `deny` an, wenn dieselbe Variable mit beiden Modi erscheint. [Protect credentials](/docs/de/sandboxing#protect-credentials) behandelt, was aus Quellen, die Sie mit `--setting-sources` ausschließen, weiterhin gilt. `mask`-Einträge erfordern Claude Code v2.1.199 oder später.

2398 2503 

2399`mask`-Ersetzung läuft nur durch den Sandbox-Proxy, daher setzen Sie [`sandbox.network.tlsTerminate`](#sandbox-network-tlsterminate) oder [`allowPlaintextInject`](#sandbox-credentials-allowplaintextinject) für Plain-HTTP-Test-Netzwerke; siehe [Mask environment variables](/docs/de/sandboxing#mask-environment-variables). Claude Code akzeptiert aber ignoriert die `mask`-Felder auf einem `deny`-Eintrag.2504Die `mask`-Ersetzung läuft nur über den Sandbox-Proxy, setzen Sie daher [`sandbox.network.tlsTerminate`](#sandbox-network-tlsterminate) oder für Testnetzwerke mit einfachem HTTP [`allowPlaintextInject`](#sandbox-credentials-allowplaintextinject); siehe [Mask environment variables](/docs/de/sandboxing#mask-environment-variables). Claude Code akzeptiert die `mask`-Felder bei einem `deny`-Eintrag, ignoriert sie aber.

2400 2505 

2401<span id="sandbox-credentials-envvars-extract" />2506<span id="sandbox-credentials-envvars-extract" />

2402 2507 


2412 Maskierungsfelder für Umgebungsvariablen2517 Maskierungsfelder für Umgebungsvariablen

2413</h4>2518</h4>

2414 2519 

2415Ein `mask`-Eintrag akzeptiert diese optionalen Felder. Ohne `extract` oder `decode` ersetzt Claude Code den gesamten Wert durch einen Sentinel. `extract` und `decode` können nicht auf dem gleichen Eintrag kombiniert werden.2520Ein `mask`-Eintrag akzeptiert diese optionalen Felder. Ohne `extract` oder `decode` ersetzt Claude Code den gesamten Wert durch einen Sentinel. `extract` und `decode` können nicht im selben Eintrag kombiniert werden.

2416 2521 

2417| Feld | Typ | Was es tut |2522| Feld | Typ | Funktion |

2418| :- | :- | :- |2523| :- | :- | :- |

2419| `extract` | Zeichenfolge, ein regulärer Ausdruck mit mindestens einer Erfassungsgruppe | Maskieren Sie nur den Text, der von Gruppe 1 jedes Treffers erfasst wird, z. B. das Passwort in einer `DATABASE_URL`-Verbindungszeichenfolge, damit der Rest des Werts analysierbar bleibt. Erfordert v2.1.224 oder später |2524| `extract` | Zeichenfolge, ein regulärer Ausdruck mit mindestens einer Erfassungsgruppe | Maskiert nur den Text, den Gruppe 1 jedes Treffers erfasst, z. B. das Passwort in einer `DATABASE_URL`-Verbindungszeichenfolge, damit der Rest des Werts parsebar bleibt. Erfordert v2.1.224 oder später |

2420| `onExtractNoMatch` | `"warn"`, `"deny"` oder `"error"`; Standard `"warn"`. Bei einem Eintrag mit `decode` wird nur `"warn"` akzeptiert | Was passiert, wenn `extract` nichts abgleicht. `warn` gibt die Variable unmasked durch, `deny` setzt sie in der Sandbox auf unset, und `error` stoppt das Sandbox-Setup, bis Sie die Konfiguration beheben. Erfordert v2.1.224 oder später |2525| `onExtractNoMatch` | `"warn"`, `"deny"` oder `"error"`; Standard `"warn"`. Bei einem Eintrag mit `decode` wird nur `"warn"` akzeptiert | Was passiert, wenn `extract` auf nichts passt. `warn` gibt die Variable unmaskiert weiter, `deny` entfernt sie in der Sandbox, und `error` stoppt die Einrichtung der Sandbox, bis Sie die Konfiguration korrigieren. Erfordert v2.1.224 oder später |

2421| `decode` | die Zeichenfolge `"jwt"` | Überprüfen Sie, dass der gesamte Wert ein JWT ist und ersetzen Sie ihn durch ein strukturell gültiges gefälschtes Token, damit Code in der Sandbox, der das Token dekodiert, weiterhin funktioniert; der Proxy ersetzt das ganze echte Token bei Egress. Ein Wert, der nicht überprüft wird, wird unmasked mit einer Warnung durchgegeben. Erfordert v2.1.224 oder später |2526| `decode` | die Zeichenfolge `"jwt"` | Verifiziert, dass der gesamte Wert ein JWT ist, und ersetzt ihn durch ein strukturell gültiges gefälschtes Token, damit Code in der Sandbox, der das Token dekodiert, weiterhin funktioniert; der Proxy setzt beim ausgehenden Verkehr das gesamte echte Token ein. Ein Wert, der nicht verifiziert wird, wird mit einer Warnung unmaskiert weitergegeben. Erfordert v2.1.224 oder später |

2422| `maskClaims` | Array von Zeichenfolgen, mindestens ein Anspruchsname; erfordert `decode` | Maskieren Sie nur die benannten Top-Level-Payload-Ansprüche in dem dekodierten JWT und erstellen Sie das Token um die geänderte Payload neu auf, damit die anderen Ansprüche lesbar bleiben. Wenn kein benannter Anspruch übereinstimmt, wird die Variable unmasked mit einer Warnung durchgegeben. Erfordert v2.1.224 oder später |2527| `maskClaims` | Array von Zeichenfolgen, mindestens ein Claim-Name; erfordert `decode` | Maskiert nur die benannten Top-Level-Claims der Payload im dekodierten JWT und baut das Token um die geänderte Payload herum neu auf, damit die anderen Claims lesbar bleiben. Wenn kein benannter Claim passt, wird die Variable mit einer Warnung unmaskiert weitergegeben. Erfordert v2.1.224 oder später |

2423| `injectHosts` | Array von Zeichenfolgen, jede ein Host, den [`sandbox.network.allowedDomains`](#sandbox-network-alloweddomains) auch zulässt | Verengen Sie die Hosts, wo der Sandbox-Proxy den echten Wert ersetzt. Wenn nicht gesetzt, ersetzt der Proxy ihn bei Anfragen an jeden Host in `sandbox.network.allowedDomains`. Schreiben Sie ein IPv6-Ziel als die bloße komprimierte Adresse, z. B. `"::1"`, nicht die geklammerte Form; siehe [IPv6 destinations in `injectHosts`](/docs/de/sandboxing#ipv6-destinations-in-injecthosts). Erfordert v2.1.199 oder später |2528| `injectHosts` | Array von Zeichenfolgen, jede ein Host, den [`sandbox.network.allowedDomains`](#sandbox-network-alloweddomains) ebenfalls zulässt | Grenzt die Hosts ein, bei denen der Sandbox-Proxy den echten Wert einsetzt. Wenn nicht gesetzt, setzt der Proxy ihn bei Anfragen an jeden Host in `sandbox.network.allowedDomains` ein. Schreiben Sie ein IPv6-Ziel als bloße komprimierte Adresse, z. B. `"::1"`, nicht in der geklammerten Form; siehe [IPv6 destinations in `injectHosts`](/docs/de/sandboxing#ipv6-destinations-in-injecthosts). Erfordert v2.1.199 oder später |

2424 2529 

2425Dies maskiert nur das Passwort in `DATABASE_URL`, setzt die Variable auf unset, wenn das Muster nichts abgleicht, und maskiert ein JWT in `SERVICE_JWT`, während jeder Anspruch außer `api_key` lesbar bleibt:2530Dies maskiert nur das Passwort in `DATABASE_URL`, entfernt die Variable, wenn das Muster auf nichts passt, und maskiert ein JWT in `SERVICE_JWT`, wobei jeder Claim außer `api_key` lesbar bleibt:

2426 2531 

2427```json settings.json theme={null}2532```json settings.json theme={null}

2428{2533{


2451 `sandbox.credentials.allowPlaintextInject`2556 `sandbox.credentials.allowPlaintextInject`

2452</h3>2557</h3>

2453 2558 

2454Erlauben Sie `mask`-Ersetzung auf Plain-HTTP-Anfragen sowie TLS-terminiertem HTTPS. Bei Plain-HTTP ist die Upstream-Identität nicht überprüft und die Anmeldedaten reisen im Klartext, daher lassen Sie dies außerhalb vertrauenswürdiger Test-Netzwerke aus. Erfordert Claude Code v2.1.199 oder später.2559Erlauben Sie die `mask`-Ersetzung sowohl bei einfachen HTTP-Anfragen als auch bei TLS-terminiertem HTTPS. Bei einfachem HTTP ist die Identität des Upstream-Servers nicht verifiziert und die Anmeldedaten werden im Klartext übertragen, lassen Sie dies daher außerhalb vertrauenswürdiger Testnetzwerke deaktiviert. Erfordert Claude Code v2.1.199 oder später.

2455 2560 

2456* **Bereich**: [`User or managed`](#scopes)2561* **Bereich**: [`User or managed`](#scopes)

2457* **Typ**: Boolescher Wert2562* **Typ**: Boolescher Wert

2458 * `true`: Claude Code erlaubt `mask`-Ersetzung auf Plain-HTTP-Anfragen sowie TLS-terminiertem HTTPS2563 * `true`: Claude Code erlaubt die `mask`-Ersetzung sowohl bei einfachen HTTP-Anfragen als auch bei TLS-terminiertem HTTPS

2459 * `false`: Claude Code erlaubt `mask`-Ersetzung nur auf TLS-terminiertem HTTPS2564 * `false`: Claude Code erlaubt die `mask`-Ersetzung nur bei TLS-terminiertem HTTPS

2460* **Standard**: `false`2565* **Standard**: `false`

2461 2566 

2462```json settings.json theme={null}2567```json settings.json theme={null}


2475 `sandbox.credentials.awsPairs`2580 `sandbox.credentials.awsPairs`

2476</h3>2581</h3>

2477 2582 

2478Gruppieren Sie maskierte Umgebungsvariablen, die eine AWS-Anmeldedaten für [SigV4-Neusignierung](/docs/de/sandboxing#re-sign-aws-requests) bilden, wenn Ihre Anmeldedaten in Variablen mit nicht standardmäßigen Namen leben. Claude Code verknüpft das konventionelle `AWS_ACCESS_KEY_ID`-, `AWS_SECRET_ACCESS_KEY`- und `AWS_SESSION_TOKEN`-Trio automatisch, wenn Sie ihre ganzen Werte maskieren, daher benötigen Sie diesen Schlüssel nur für andere Namen. Erfordert Claude Code v2.1.224 oder später.2583Gruppieren Sie maskierte Umgebungsvariablen, die zusammen AWS-Anmeldedaten für die [SigV4-Neusignierung](/docs/de/sandboxing#re-sign-aws-requests) bilden, wenn Ihre Anmeldedaten in Variablen mit nicht standardmäßigen Namen liegen. Claude Code verknüpft das konventionelle Trio `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY` und `AWS_SESSION_TOKEN` automatisch, wenn Sie deren vollständige Werte maskieren, daher benötigen Sie diesen Schlüssel nur für andere Namen. Erfordert Claude Code v2.1.224 oder später.

2479 2584 

2480* **Bereich**: [`User or managed`](#scopes)2585* **Bereich**: [`User or managed`](#scopes)

2481* **Typ**: Array von Objekten, jedes mit `accessKeyIdVar`, `secretAccessKeyVar` und optional `sessionTokenVar`, benennend `sandbox.credentials.envVars`-Einträge2586* **Typ**: Array von Objekten, jedes mit `accessKeyIdVar`, `secretAccessKeyVar` und optional `sessionTokenVar`, die `sandbox.credentials.envVars`-Einträge benennen

2482* **Standard**: nicht gesetzt, daher wird nur das konventionelle Trio gepaart2587* **Standard**: nicht gesetzt, daher wird nur das konventionelle Trio gepaart

2483 2588 

2484Dies verknüpft drei benutzerdefiniert benannte Variablen in eine AWS-Anmeldedaten für Neusignierung:2589Dies verknüpft drei benutzerdefiniert benannte Variablen zu einem AWS-Anmeldedatensatz für die Neusignierung:

2485 2590 

2486```json settings.json theme={null}2591```json settings.json theme={null}

2487{2592{


2499}2604}

2500```2605```

2501 2606 

2502Jede benannte Variable muss ein Ganz-Wert-`mask`-Eintrag in [`sandbox.credentials.envVars`](#sandbox-credentials-envvars) sein, ohne `extract` oder `decode`, und kann nur einen Slot über alle Paare hinweg ausfüllen.2607Jede benannte Variable muss ein `mask`-Eintrag für den gesamten Wert in [`sandbox.credentials.envVars`](#sandbox-credentials-envvars) sein, ohne `extract` oder `decode`, und kann über alle Paare hinweg nur einen Slot belegen.

2503 2608 

2504<h3 id="sandbox-credentials-sigv4">2609<h3 id="sandbox-credentials-sigv4">

2505 `sandbox.credentials.sigv4`2610 `sandbox.credentials.sigv4`

2506</h3>2611</h3>

2507 2612 

2508Wählen Sie, was der Sandbox-Proxy mit AWS-Anforderungsformen tut, die er [nicht erneut signieren kann](/docs/de/sandboxing#re-sign-aws-requests): `streaming` für aws-chunked-Streaming-Uploads, `presigned` für vorsignierte URLs und `sigv4a` für SigV4A-asymmetrische Signaturen. Dies gilt nur für Anfragen, die mit einer maskierten Paars Platzhalter-Zugriffschlüssel-ID signiert sind. Erfordert Claude Code v2.1.224 oder später.2613Wählen Sie, was der Sandbox-Proxy mit AWS-Anfrageformen macht, die er [nicht neu signieren kann](/docs/de/sandboxing#re-sign-aws-requests): `streaming` für aws-chunked-Streaming-Uploads, `presigned` für vorsignierte URLs und `sigv4a` für asymmetrische SigV4A-Signaturen. Dies gilt nur für Anfragen, die mit der Platzhalter-Zugriffsschlüssel-ID eines maskierten Paars signiert sind. Erfordert Claude Code v2.1.224 oder später.

2509 2614 

2510* **Bereich**: [`User or managed`](#scopes)2615* **Bereich**: [`User or managed`](#scopes)

2511* **Typ**: Objekt mit `streaming`, `presigned` und `sigv4a`, jedes eines von:2616* **Typ**: Objekt mit `streaming`, `presigned` und `sigv4a`, jeweils einer der folgenden Werte:

2512 * `"deny"`: der Proxy lehnt die Anfrage ab2617 * `"deny"`: Der Proxy lässt die Anfrage fehlschlagen

2513 * `"passthrough"`: der Proxy leitet die Anfrage mit dem maskierten Platzhalter signiert weiter, daher erhält das Tool AWS's eigene Ablehnung2618 * `"passthrough"`: Der Proxy leitet die mit dem maskierten Platzhalter signierte Anfrage weiter, sodass das Tool die eigene Ablehnung von AWS erhält

2514* **Standard**: nicht gesetzt, daher ist jede Form `"deny"`2619* **Standard**: nicht gesetzt, daher ist jede Form `"deny"`

2515 2620 

2516Dies leitet Streaming-Uploads weiter, anstatt sie am Proxy zu fehlschlagen:2621Dies leitet Streaming-Uploads weiter, anstatt sie am Proxy scheitern zu lassen:

2517 2622 

2518```json settings.json theme={null}2623```json settings.json theme={null}

2519{2624{


2527}2632}

2528```2633```

2529 2634 

2530Mit `deny` lehnt der Proxy die Anfrage ab. Mit `passthrough` leitet der Proxy die Anfrage mit ihrer Signatur weiter, die aus dem maskierten Platzhalter berechnet wird, daher lehnt AWS sie ab und das aufrufende Tool erhält AWS's eigene Antwort, anstatt eines Proxy-Fehlers.2635Mit `deny` lässt der Proxy die Anfrage fehlschlagen. Mit `passthrough` leitet der Proxy die Anfrage mit ihrer aus dem maskierten Platzhalter berechneten Signatur weiter, sodass AWS sie ablehnt und das aufrufende Tool die eigene Antwort von AWS statt eines Proxy-Fehlers erhält.

2531 2636 

2532<h3 id="sandbox-network">2637<h3 id="sandbox-network">

2533 `sandbox.network`2638 `sandbox.network`

2534</h3>2639</h3>

2535 2640 

2536Kontrollieren Sie, welche Hosts, Ports und Sockets sandboxed Befehle erreichen können. Die Sandbox leitet ausgehenden Verkehr durch einen Proxy, der diese Listen erzwingt; siehe [Network isolation](/docs/de/sandboxing#network-isolation) für wie der Proxy entscheidet und wann er auffordert.2641Legen Sie fest, welche Hosts, Ports und Sockets Befehle in der Sandbox erreichen können. Die Sandbox leitet ausgehenden Verkehr über einen Proxy, der diese Listen erzwingt; siehe [Network isolation](/docs/de/sandboxing#network-isolation) dafür, wie der Proxy entscheidet und wann er nachfragt.

2537 2642 

2538* **Bereich**: [`Any file`](#scopes). `strictAllowlist`, `allowManagedDomainsOnly` und `tlsTerminate` werden aus weniger Quellen gelesen, wie ihre Einträge sagen.2643* **Bereich**: [`Any file`](#scopes). `strictAllowlist`, `allowManagedDomainsOnly` und `tlsTerminate` werden aus weniger Quellen gelesen, wie ihre Einträge angeben.

2539* **Typ**: Objekt mit den Unterschlüsseln unten2644* **Typ**: Objekt mit den unten aufgeführten Unterschlüsseln

2540* **Standard**: nicht gesetzt, daher werden keine Domänen vorab erlaubt und die Sandbox fordert für jeden neuen Host auf2645* **Standard**: nicht gesetzt, daher werden keine Domänen vorab erlaubt, und Ihr Berechtigungsmodus entscheidet, [was mit jedem neuen Host geschieht](/docs/de/sandboxing#hosts-outside-your-allowed-domains)

2541 2646 

2542Dies erlaubt GitHub und npm vorab, blockiert `uploads.github.com` und lässt Befehle an localhost binden:2647Dies erlaubt GitHub und npm vorab, blockiert `uploads.github.com` und lässt Befehle an localhost binden:

2543 2648 


2553}2658}

2554```2659```

2555 2660 

2556Claude Code führt die Array-Unterschlüssel über Einstellungsbereiche zusammen und dedupliziert sie, daher kann ein Projekt Domänen zu Ihrer Benutzerliste hinzufügen. `WebFetch(domain:...)`-Zulassungs- und Ablehnungs-[Berechtigungsregeln](/docs/de/sandboxing#permission-rules) speisen die gleichen Zulassungs- und Ablehnungslisten.2661Claude Code führt die Array-Unterschlüssel über Einstellungsbereiche zusammen, sodass ein Projekt Domänen zu Ihrer Benutzerliste hinzufügen kann, sofern keine [Repository-Sperre](/docs/de/sandboxing#repository-settings-under-an-admin-required-sandbox) greift. `WebFetch(domain:...)`-allow- und -deny-[Berechtigungsregeln](/docs/de/sandboxing#permission-rules) speisen dieselben Allow- und Deny-Listen.

2557 2662 

2558<h3 id="sandbox-network-allowunixsockets">2663<h3 id="sandbox-network-allowunixsockets">

2559 `sandbox.network.allowUnixSockets`2664 `sandbox.network.allowUnixSockets`

2560</h3>2665</h3>

2561 2666 

2562Listen Sie die Unix-Socket-Pfade auf, mit denen sandboxed Befehle auf macOS verbinden können. Claude Code ignoriert diese Liste auf Linux und WSL2, wo der seccomp-Filter Socket-Pfade nicht überprüfen kann; verwenden Sie stattdessen [`allowAllUnixSockets`](#sandbox-network-allowallunixsockets).2667Listen Sie die Unix-Socket-Pfade auf, mit denen Befehle in der Sandbox auf macOS eine Verbindung herstellen können. Claude Code ignoriert diese Liste auf Linux und WSL2, wo der seccomp-Filter Socket-Pfade nicht prüfen kann; verwenden Sie dort stattdessen [`allowAllUnixSockets`](#sandbox-network-allowallunixsockets).

2563 2668 

2564* **Bereich**: [`Any file`](#scopes)2669* **Bereich**: [`Any file`](#scopes), mit [Einschränkungen für Projekt- und lokale Einstellungen](/docs/de/sandboxing#repository-settings-under-an-admin-required-sandbox)

2565* **Typ**: Array von Zeichenfolgen, jede ein Socket-Pfad2670* **Typ**: Array von Zeichenfolgen, jede ein Socket-Pfad

2566* **Standard**: nicht gesetzt, daher blockiert die macOS-Sandbox jeden Unix-Socket2671* **Standard**: nicht gesetzt, daher blockiert die macOS-Sandbox jeden Unix-Socket

2567 2672 


2575}2680}

2576```2681```

2577 2682 

2578Ein Socket-Pfad kann breiten Zugriff gewähren: Das Zulassen von `/var/run/docker.sock` lässt beispielsweise einen sandboxed Befehl den Docker-Daemon kontrollieren. Siehe [Security limitations](/docs/de/sandboxing#security-limitations).2683Ein Socket-Pfad kann weitreichenden Zugriff gewähren: Wenn Sie beispielsweise `/var/run/docker.sock` erlauben, kann ein Befehl in der Sandbox den Docker-Daemon steuern. Siehe [Security limitations](/docs/de/sandboxing#security-limitations).

2579 2684 

2580<h3 id="sandbox-network-allowallunixsockets">2685<h3 id="sandbox-network-allowallunixsockets">

2581 `sandbox.network.allowAllUnixSockets`2686 `sandbox.network.allowAllUnixSockets`

2582</h3>2687</h3>

2583 2688 

2584Lassen Sie sandboxed Befehle mit jedem Unix-Socket verbinden. Auf Linux und WSL2 blockiert der [seccomp-Filter](/docs/de/sandboxing#set-up-linux-and-wsl2) der Sandbox `socket(AF_UNIX, ...)`-Aufrufe, daher ist dies die einzige Möglichkeit, Unix-Sockets dort zu erlauben. Wenn der Filter fehlt, den `/sandbox` auf seiner Registerkarte Abhängigkeiten meldet, blockiert die Sandbox Unix-Socket-Aufrufe nicht. Siehe [Set up Linux and WSL2](/docs/de/sandboxing#set-up-linux-and-wsl2) für wo der Filter herkommt.2689Lassen Sie Befehle in der Sandbox eine Verbindung zu jedem Unix-Socket herstellen. Auf Linux und WSL2 blockiert der [seccomp-Filter](/docs/de/sandboxing#set-up-linux-and-wsl2) der Sandbox `socket(AF_UNIX, ...)`-Aufrufe, daher ist dies dort die einzige Möglichkeit, Unix-Sockets zu erlauben. Wenn der Filter fehlt, was `/sandbox` auf seiner Registerkarte Dependencies meldet, blockiert die Sandbox Unix-Socket-Aufrufe nicht. Siehe [Set up Linux and WSL2](/docs/de/sandboxing#set-up-linux-and-wsl2) dafür, woher der Filter stammt.

2585 2690 

2586* **Bereich**: [`Any file`](#scopes)2691* **Bereich**: [`Any file`](#scopes), mit [Einschränkungen für Projekt- und lokale Einstellungen](/docs/de/sandboxing#repository-settings-under-an-admin-required-sandbox)

2587* **Typ**: Boolescher Wert2692* **Typ**: Boolescher Wert

2588 * `true`: sandboxed Befehle können mit jedem Unix-Socket verbinden2693 * `true`: Befehle in der Sandbox können eine Verbindung zu jedem Unix-Socket herstellen

2589 * `false`: die Sandbox blockiert Unix-Socket-Verbindungen: auf macOS außer den Pfaden in `allowUnixSockets`, und auf Linux und WSL2 durch den seccomp-Filter, wenn er vorhanden ist2694 * `false`: Die Sandbox blockiert Unix-Socket-Verbindungen: auf macOS mit Ausnahme der Pfade in `allowUnixSockets`, und auf Linux und WSL2 über den seccomp-Filter, sofern er vorhanden ist

2590* **Standard**: `false`2695* **Standard**: `false`

2591 2696 

2592```json settings.json theme={null}2697```json settings.json theme={null}


2599}2704}

2600```2705```

2601 2706 

2602Auf WSL2 öffnet `true` auch den Interop-Socket erneut, der Windows-Binärdateien wie `cmd.exe` und `powershell.exe` startet.2707Auf WSL2 öffnet `true` außerdem wieder den Interop-Socket, der Windows-Binärdateien wie `cmd.exe` und `powershell.exe` startet.

2603 2708 

2604<h3 id="sandbox-network-allowlocalbinding">2709<h3 id="sandbox-network-allowlocalbinding">

2605 `sandbox.network.allowLocalBinding`2710 `sandbox.network.allowLocalBinding`

2606</h3>2711</h3>

2607 2712 

2608Lassen Sie sandboxed Befehle auf macOS an localhost-Ports binden, z. B. um einen Dev-Server zu starten.2713Lassen Sie Befehle in der Sandbox auf macOS an Netzwerk-Ports lauschen, z. B. um einen Dev-Server zu starten, und sich mit jedem Port auf localhost verbinden. Ein Befehl, der auf einer Nicht-Loopback-Adresse lauscht, nimmt Verbindungen von anderen Rechnern an. Der Schlüssel hat auf Linux und WSL2 keine Wirkung, wo jeder Befehl in der Sandbox eine eigene Loopback-Schnittstelle hat. Um von Linux oder WSL2 aus einen Server auf dem Host zu erreichen, siehe [A command fails to reach a server on localhost](/docs/de/sandboxing#a-command-fails-to-reach-a-server-on-localhost).

2609 2714 

2610* **Bereich**: [`Any file`](#scopes)2715* **Bereich**: [`Any file`](#scopes), mit [Einschränkungen für Projekt- und lokale Einstellungen](/docs/de/sandboxing#repository-settings-under-an-admin-required-sandbox)

2611* **Typ**: Boolescher Wert2716* **Typ**: Boolescher Wert

2612 * `true`: sandboxed Befehle können auf macOS an localhost-Ports binden2717 * `true`: Befehle in der Sandbox auf macOS können auf jeder lokalen Adresse lauschen und sich mit jedem Port auf localhost verbinden

2613 * `false`: sandboxed Befehle auf macOS können nicht an localhost-Ports binden2718 * `false`: Befehle in der Sandbox auf macOS können weder auf einem Port lauschen noch sich direkt mit Servern auf localhost verbinden

2614* **Standard**: `false`2719* **Standard**: `false`

2615 2720 

2616```json settings.json theme={null}2721```json settings.json theme={null}


2627 `sandbox.network.allowMachLookup`2732 `sandbox.network.allowMachLookup`

2628</h3>2733</h3>

2629 2734 

2630Listen Sie zusätzliche XPC- und Mach-Servicenamen auf, die die macOS-Sandbox nachschlagen kann. Tools, die über XPC kommunizieren, wie der iOS-Simulator oder Playwright, benötigen ihre Services hier aufgelistet.2735Listen Sie zusätzliche XPC- und Mach-Servicenamen auf, die die macOS-Sandbox nachschlagen darf. Tools, die über XPC kommunizieren, wie der iOS-Simulator oder Playwright, benötigen hier einen Eintrag für ihre Services.

2631 2736 

2632* **Bereich**: [`Any file`](#scopes)2737* **Bereich**: [`Any file`](#scopes), mit [Einschränkungen für Projekt- und lokale Einstellungen](/docs/de/sandboxing#repository-settings-under-an-admin-required-sandbox)

2633* **Typ**: Array von Zeichenfolgen, jede ein Servicename; ein einzelner nachgestellter `*` gleicht ein Präfix ab, und `"*"` allein gleicht jeden Service ab2738* **Typ**: Array von Zeichenfolgen, jede ein Servicename; ein einzelnes nachgestelltes `*` passt auf ein Präfix, und `"*"` allein passt auf jeden Service

2634* **Standard**: nicht gesetzt2739* **Standard**: nicht gesetzt

2635 2740 

2636Dies erlaubt jeden Service unter dem `com.apple.coresimulator.`-Präfix:2741Dies erlaubt jeden Service unter dem Präfix `com.apple.coresimulator.`:

2637 2742 

2638```json settings.json theme={null}2743```json settings.json theme={null}

2639{2744{


2649 `sandbox.network.allowedDomains`2754 `sandbox.network.allowedDomains`

2650</h3>2755</h3>

2651 2756 

2652Erlauben Sie Domänen vorab für ausgehenden Verkehr von sandboxed Befehlen, daher fordert die Sandbox nicht für sie auf. Wildcards wie `*.example.com` gleichen Subdomänen ab, und ein optionales `:port`-Suffix beschränkt einen Eintrag auf einen Port; ein Eintrag ohne Port gleicht jeden Port ab.2757Erlauben Sie Domänen für ausgehenden Verkehr von Befehlen in der Sandbox vorab, sodass die Sandbox für sie nicht nachfragt. Wildcards wie `*.example.com` passen auf Subdomänen, und ein optionales `:port`-Suffix beschränkt einen Eintrag auf einen Port; ein Eintrag ohne Port passt auf jeden Port.

2653 2758 

2654* **Bereich**: [`Any file`](#scopes). Nur verwaltete Einstellungen, wenn [`allowManagedDomainsOnly`](#sandbox-network-allowmanageddomainsonly) gesetzt ist.2759* **Bereich**: [`Any file`](#scopes), mit [Einschränkungen für Projekt- und lokale Einstellungen](/docs/de/sandboxing#repository-settings-under-an-admin-required-sandbox). Nur verwaltete Einstellungen, wenn [`allowManagedDomainsOnly`](#sandbox-network-allowmanageddomainsonly) gesetzt ist.

2655* **Typ**: Array von Zeichenfolgen, jede eine Domäne, ein Wildcard-Muster oder ein IP-Literal, mit einem optionalen `:port`-Suffix2760* **Typ**: Array von Zeichenfolgen, jede eine Domäne, ein Wildcard-Muster oder ein IP-Literal, mit einem optionalen `:port`-Suffix

2656* **Standard**: nicht gesetzt, daher fordert die Sandbox beim ersten Mal auf, wenn ein Befehl einen neuen Host erreicht2761* **Standard**: nicht gesetzt, daher entscheidet Ihr Berechtigungsmodus, [was mit jedem neuen Host geschieht](/docs/de/sandboxing#hosts-outside-your-allowed-domains)

2657 2762 

2658Dies erlaubt GitHub auf jedem Port, jede npm-Subdomain und einen API-Host auf Port 443 nur:2763Dies erlaubt GitHub auf jedem Port, jede npm-Subdomäne und einen API-Host nur auf Port 443 vorab:

2659 2764 

2660```json settings.json theme={null}2765```json settings.json theme={null}

2661{2766{


2667}2772}

2668```2773```

2669 2774 

2670Schreiben Sie IPv6-Literale geklammert, mit einem optionalen Port: `"[::1]"` erlaubt jeden Port und `"[::1]:443"` einen Port. Die geklammerte Form erfordert Claude Code v2.1.229 oder später. Siehe [IPv6 addresses in domain lists](/docs/de/sandboxing#ipv6-addresses-in-domain-lists).2775Schreiben Sie IPv6-Literale in eckigen Klammern, mit optionalem Port: `"[::1]"` erlaubt jeden Port und `"[::1]:443"` einen Port. Die geklammerte Form erfordert Claude Code v2.1.229 oder später. Siehe [IPv6 addresses in domain lists](/docs/de/sandboxing#ipv6-addresses-in-domain-lists).

2671 2776 

2672<h3 id="sandbox-network-denieddomains">2777<h3 id="sandbox-network-denieddomains">

2673 `sandbox.network.deniedDomains`2778 `sandbox.network.deniedDomains`

2674</h3>2779</h3>

2675 2780 

2676Blockieren Sie Domänen für ausgehenden Verkehr von sandboxed Befehlen, unter Verwendung der gleichen Wildcard-, Port- und IPv6-Syntax wie [`allowedDomains`](#sandbox-network-alloweddomains). Eine blockierte Domäne bleibt blockiert, auch wenn ein `allowedDomains`-Eintrag sie auch abgleicht.2781Blockieren Sie Domänen für ausgehenden Verkehr von Befehlen in der Sandbox, mit derselben Wildcard-, Port- und IPv6-Syntax wie bei [`allowedDomains`](#sandbox-network-alloweddomains). Eine blockierte Domäne bleibt blockiert, auch wenn ein `allowedDomains`-Eintrag ebenfalls auf sie passt.

2677 2782 

2678* **Bereich**: [`Any file`](#scopes)2783* **Bereich**: [`Any file`](#scopes)

2679* **Typ**: Array von Zeichenfolgen, jede eine Domäne, ein Wildcard-Muster oder ein IP-Literal, mit einem optionalen `:port`-Suffix2784* **Typ**: Array von Zeichenfolgen, jede eine Domäne, ein Wildcard-Muster oder ein IP-Literal, mit einem optionalen `:port`-Suffix


2689}2794}

2690```2795```

2691 2796 

2692Claude Code führt diese Liste aus jeder Einstellungsquelle zusammen, die die Sitzung lädt, auch wenn `allowManagedDomainsOnly` gesetzt ist, daher kann ein Entwickler immer die Ablehnungsliste verschärfen. Für IPv6-Literale siehe [IPv6 addresses in domain lists](/docs/de/sandboxing#ipv6-addresses-in-domain-lists).2797Claude Code führt diese Liste aus jeder Einstellungsquelle zusammen, die die Sitzung lädt, auch wenn `allowManagedDomainsOnly` gesetzt ist, sodass ein Entwickler die Denylist jederzeit verschärfen kann. Für IPv6-Literale siehe [IPv6 addresses in domain lists](/docs/de/sandboxing#ipv6-addresses-in-domain-lists).

2693 2798 

2694Ein Eintrag, der mit dem nachgestellten Punkt geschrieben ist, der einen vollständig qualifizierten Domänennamen markiert, wie `example.com.`, blockiert die gleichen Verbindungen wie `example.com`.2799Ein Eintrag, der mit dem nachgestellten Punkt geschrieben ist, der einen vollständig qualifizierten Domänennamen kennzeichnet, wie `example.com.`, blockiert dieselben Verbindungen wie `example.com`.

2695 2800 

2696<h3 id="sandbox-network-strictallowlist">2801<h3 id="sandbox-network-strictallowlist">

2697 `sandbox.network.strictAllowlist`2802 `sandbox.network.strictAllowlist`

2698</h3>2803</h3>

2699 2804 

2700Verweigern Sie sandboxed Befehlen Zugriff auf Hosts außerhalb der Zulassungsliste, anstatt zur Genehmigung aufzufordern. Die Zulassungsliste ist [`allowedDomains`](#sandbox-network-alloweddomains) plus Domänen aus `WebFetch(domain:...)`-Zulassungsregeln, oder nur die verwalteten Einstellungseinträge, wenn [`allowManagedDomainsOnly`](#sandbox-network-allowmanageddomainsonly) gesetzt ist. Erfordert Claude Code v2.1.219 oder später.2805Verweigern Sie Befehlen in der Sandbox den Zugriff auf Hosts außerhalb der Allowlist, anstatt um Genehmigung zu bitten. Die Allowlist besteht aus [`allowedDomains`](#sandbox-network-alloweddomains) plus Domänen aus `WebFetch(domain:...)`-allow-Regeln, oder nur aus den Einträgen der verwalteten Einstellungen, wenn [`allowManagedDomainsOnly`](#sandbox-network-allowmanageddomainsonly) gesetzt ist. [Locks that apply without an admin-required sandbox](/docs/de/sandboxing#locks-that-apply-without-an-admin-required-sandbox) behandelt die Einträge eines Repositorys. Erfordert Claude Code v2.1.219 oder später.

2701 2806 

2702* **Bereich**: [`User or managed`](#scopes). Ein Repository kann es nicht ein- oder ausschalten.2807* **Bereich**: [`User or managed`](#scopes). Ein Repository kann es weder ein- noch ausschalten.

2703* **Typ**: Boolescher Wert2808* **Typ**: Boolescher Wert

2704 * `true`: Claude Code verweigert sandboxed Befehlen Zugriff auf Hosts außerhalb der Zulassungsliste2809 * `true`: Claude Code verweigert Befehlen in der Sandbox den Zugriff auf Hosts außerhalb der Allowlist

2705 * `false`: sofern nicht eine andere vertrauenswürdige Einstellungsdatei `true` setzt, entscheidet Claude Code einen Host außerhalb der Zulassungsliste nach Berechtigungsmodus, anstatt ihn direkt zu verweigern: es prüft den Host im Auto-Modus gegen die [per-command allowed domains](/docs/de/sandboxing#per-command-allowed-domains-in-auto-mode) des Befehls, verweigert im `dontAsk`-Modus, erlaubt im `bypassPermissions`-Modus und im Plan-Modus, wenn Bypass verfügbar ist, und fordert Sie ansonsten auf2810 * `false`: Sofern keine andere vertrauenswürdige Einstellungsdatei `true` setzt, entscheidet Claude Code über einen Host außerhalb der Allowlist anhand des Berechtigungsmodus, anstatt ihn direkt zu verweigern: Im Auto-Modus prüft es den Host gegen die [per-command allowed domains](/docs/de/sandboxing#per-command-allowed-domains-in-auto-mode) des Befehls, im `dontAsk`-Modus verweigert es, im `bypassPermissions`-Modus und in interaktiven Terminal-Sitzungen im Plan-Modus, in denen Bypass verfügbar ist, erlaubt es, und andernfalls fragt es bei Ihnen nach

2706* **Standard**: `false`2811* **Standard**: `false`

2707 2812 

2708```json settings.json theme={null}2813```json settings.json theme={null}


2715}2820}

2716```2821```

2717 2822 

2718Claude Code erzwingt dies nur für sandboxed Befehle; In-Process-Tools wie `WebFetch` folgen weiterhin ihren [Berechtigungsregeln](/docs/de/sandboxing#permission-rules). Wenn eine der beachteten Quellen es auf `true` setzt, bleibt es an. Siehe [Network isolation](/docs/de/sandboxing#network-isolation). Erfordert Claude Code v2.1.219 oder später.2823Claude Code erzwingt dies nur für Befehle in der Sandbox; In-Process-Tools wie `WebFetch` folgen weiterhin ihren [Berechtigungsregeln](/docs/de/sandboxing#permission-rules). Wenn eine der berücksichtigten Quellen es auf `true` setzt, bleibt es aktiv. Siehe [Network isolation](/docs/de/sandboxing#network-isolation). Erfordert Claude Code v2.1.219 oder später.

2719 2824 

2720<h3 id="sandbox-network-allowmanageddomainsonly">2825<h3 id="sandbox-network-allowmanageddomainsonly">

2721 `sandbox.network.allowManagedDomainsOnly`2826 `sandbox.network.allowManagedDomainsOnly`

2722</h3>2827</h3>

2723 2828 

2724Sperren Sie die Netzwerk-Zulassungsliste auf das, was verwaltete Einstellungen definieren. Claude Code beachtet dann nur `allowedDomains` und `WebFetch(domain:...)`-Zulassungsregeln aus verwalteten Einstellungen, ignoriert Domänen aus Benutzer-, Projekt-, lokalen und `--settings`-Einstellungen und blockiert eine nicht zulässige Domäne automatisch, anstatt aufzufordern.2829Sperren Sie die Netzwerk-Allowlist auf das, was verwaltete Einstellungen definieren. Claude Code berücksichtigt dann nur `allowedDomains` und `WebFetch(domain:...)`-allow-Regeln aus verwalteten Einstellungen, ignoriert Domänen aus Benutzer-, Projekt-, lokalen und `--settings`-Einstellungen und blockiert eine nicht zulässige Domäne automatisch, anstatt nachzufragen.

2725 2830 

2726* **Bereich**: [`Managed`](#scopes)2831* **Bereich**: [`Managed`](#scopes)

2727* **Typ**: Boolescher Wert2832* **Typ**: Boolescher Wert

2728 * `true`: Claude Code beachtet nur `allowedDomains` und `WebFetch(domain:...)`-Zulassungsregeln aus verwalteten Einstellungen und blockiert eine nicht zulässige Domäne, anstatt aufzufordern2833 * `true`: Claude Code berücksichtigt nur `allowedDomains` und `WebFetch(domain:...)`-allow-Regeln aus verwalteten Einstellungen und blockiert eine nicht zulässige Domäne, anstatt nachzufragen

2729 * `false`: Domänen aus Benutzer-, Projekt-, lokalen und `--settings`-Einstellungen werden in die Zulassungsliste zusammengeführt2834 * `false`: Domänen aus anderen Einstellungsdateien können in die Allowlist einfließen

2730* **Standard**: `false`2835* **Standard**: `false`

2731 2836 

2732Dies sperrt die Zulassungsliste auf GitHub und npm und ignoriert alle Domänen, die Entwickler hinzufügen:2837Dies sperrt die Allowlist auf GitHub und npm und ignoriert alle Domänen, die Entwickler hinzufügen:

2733 2838 

2734```json managed-settings.json theme={null}2839```json managed-settings.json theme={null}

2735{2840{


2742}2847}

2743```2848```

2744 2849 

2850Solange der Schlüssel `true` ist, ist die Sandbox [vom Admin vorgeschrieben](/docs/de/sandboxing#repository-settings-under-an-admin-required-sandbox), und nur verwaltete Einstellungen können einen [Proxy-Port](#sandbox-network-httpproxyport) setzen.

2851 

2745Blockierte Domänen werden weiterhin aus jeder Quelle zusammengeführt, die die Sitzung lädt. Siehe [Keep developers from widening the policy](/docs/de/sandboxing#keep-developers-from-widening-the-policy).2852Blockierte Domänen werden weiterhin aus jeder Quelle zusammengeführt, die die Sitzung lädt. Siehe [Keep developers from widening the policy](/docs/de/sandboxing#keep-developers-from-widening-the-policy).

2746 2853 

2747<h3 id="sandbox-network-httpproxyport">2854<h3 id="sandbox-network-httpproxyport">

2748 `sandbox.network.httpProxyPort`2855 `sandbox.network.httpProxyPort`

2749</h3>2856</h3>

2750 2857 

2751Zeigen Sie die Sandbox auf Ihren eigenen HTTP-Proxy, anstatt auf den, den Claude Code ausführt. Organisationen tun dies, um HTTPS-Verkehr zu überprüfen, ihre eigenen Filterregeln anzuwenden oder jede Anfrage zu protokollieren. Wenn nicht gesetzt, startet Claude Code seinen eigenen Proxy für HTTP-Verkehr.2858Verweisen Sie die Sandbox auf Ihren eigenen HTTP-Proxy statt auf den, den Claude Code ausführt. Organisationen tun dies, um HTTPS-Verkehr zu prüfen, eigene Filterregeln anzuwenden oder Anfragen zu protokollieren. Ihr Proxy übernimmt die Filterung, und Claude Code wendet seine Domänenlisten und Netzwerkabfragen nicht mehr auf den dorthin gesendeten Verkehr an. Wenn nicht gesetzt, startet Claude Code seinen eigenen Proxy für HTTP-Verkehr.

2752 2859 

2753* **Bereich**: [`Any file`](#scopes)2860* **Bereich**: [`Any file`](#scopes), sofern nicht [andere Sandbox-Einstellungen einschränken, welche Dateien einen Port setzen können](/docs/de/sandboxing#custom-proxy-configuration)

2754* **Typ**: Zahl, ein lokaler TCP-Port2861* **Typ**: Zahl, ein lokaler TCP-Port

2755* **Standard**: nicht gesetzt, daher führt Claude Code seinen eigenen Proxy aus2862* **Standard**: nicht gesetzt, daher führt Claude Code seinen eigenen Proxy aus

2756 2863 


2764}2871}

2765```2872```

2766 2873 

2767Setzen Sie auch [`socksProxyPort`](#sandbox-network-socksproxyport), wenn Ihr Proxy auch SOCKS-Verkehr tragen sollte; mit nur einem der beiden gesetzt, führt Claude Code weiterhin seinen eigenen Proxy für das andere Protokoll aus. Siehe [Custom proxy configuration](/docs/de/sandboxing#custom-proxy-configuration).2874Setzen Sie zusätzlich [`socksProxyPort`](#sandbox-network-socksproxyport), wenn Ihr Proxy auch SOCKS-Verkehr übernehmen soll; wenn nur einer der beiden gesetzt ist, führt Claude Code für das andere Protokoll weiterhin seinen eigenen Proxy aus. Siehe [Custom proxy configuration](/docs/de/sandboxing#custom-proxy-configuration).

2768 2875 

2769<h3 id="sandbox-network-socksproxyport">2876<h3 id="sandbox-network-socksproxyport">

2770 `sandbox.network.socksProxyPort`2877 `sandbox.network.socksProxyPort`

2771</h3>2878</h3>

2772 2879 

2773Zeigen Sie die Sandbox auf Ihren eigenen SOCKS5-Proxy, anstatt auf den, den Claude Code ausführt. Wenn nicht gesetzt, startet Claude Code seinen eigenen Proxy für SOCKS-Verkehr.2880Verweisen Sie die Sandbox auf Ihren eigenen SOCKS5-Proxy statt auf den, den Claude Code ausführt. Ihr Proxy übernimmt die Filterung, und Claude Code wendet seine Domänenlisten und Netzwerkabfragen nicht mehr auf den dorthin gesendeten Verkehr an. Wenn nicht gesetzt, startet Claude Code seinen eigenen Proxy für SOCKS-Verkehr.

2774 2881 

2775* **Bereich**: [`Any file`](#scopes)2882* **Bereich**: [`Any file`](#scopes), sofern nicht [andere Sandbox-Einstellungen einschränken, welche Dateien einen Port setzen können](/docs/de/sandboxing#custom-proxy-configuration)

2776* **Typ**: Zahl, ein lokaler TCP-Port2883* **Typ**: Zahl, ein lokaler TCP-Port

2777* **Standard**: nicht gesetzt, daher führt Claude Code seinen eigenen Proxy aus2884* **Standard**: nicht gesetzt, daher führt Claude Code seinen eigenen Proxy aus

2778 2885 


2792 `sandbox.network.tlsTerminate`2899 `sandbox.network.tlsTerminate`

2793</h3>2900</h3>

2794 2901 

2795Lassen Sie den Sandbox-Proxy TLS beenden, damit er den Inhalt von HTTPS-Anfragen lesen kann. Dies ist experimentell, und `mask`-[Anmeldedaten-Ersetzung](/docs/de/sandboxing#mask-credentials) erfordert es. Setzen Sie `{}`, um eine ephemere Zertifizierungsstelle für die Sitzung zu generieren, oder setzen Sie `caCertPath` und `caKeyPath`, um Ihre eigene zu verwenden.2902Lassen Sie den Sandbox-Proxy TLS terminieren, damit er den Inhalt von HTTPS-Anfragen lesen kann. Dies ist experimentell, und die `mask`-[Ersetzung von Anmeldedaten](/docs/de/sandboxing#mask-credentials) erfordert es. Setzen Sie `{}`, um eine kurzlebige Zertifizierungsstelle für die Sitzung zu generieren, oder setzen Sie `caCertPath` und `caKeyPath`, um Ihre eigene zu verwenden.

2796 2903 

2797* **Bereich**: [`User or managed`](#scopes). Ein Repository kann es nicht einschalten oder eine Zertifizierungsstelle bereitstellen.2904* **Bereich**: [`User or managed`](#scopes). Ein Repository kann es weder einschalten noch eine Zertifizierungsstelle bereitstellen.

2798* **Typ**: Objekt mit optionalen `caCertPath`- und `caKeyPath`-Zeichenfolgen, jede ein Dateipfad2905* **Typ**: Objekt mit optionalen Zeichenfolgen `caCertPath` und `caKeyPath`, jeweils ein Dateipfad

2799* **Standard**: nicht gesetzt, daher beendet oder überprüft der Proxy TLS nicht2906* **Standard**: nicht gesetzt, daher terminiert und prüft der Proxy TLS nicht

2800 2907 

2801```json settings.json theme={null}2908```json settings.json theme={null}

2802{2909{


2808}2915}

2809```2916```

2810 2917 

2811Wenn mehr als eine beachtete Quelle es setzt, verwendet Claude Code den Wert aus der Quelle mit der höchsten Priorität: verwaltete Einstellungen, dann das `--settings`-Flag, dann Benutzereinstellungen. Erfordert Claude Code v2.1.199 oder später.2918Wenn mehr als eine berücksichtigte Quelle es setzt, verwendet Claude Code den Wert aus der Quelle mit der höchsten Priorität: verwaltete Einstellungen, dann das `--settings`-Flag, dann Benutzereinstellungen. Erfordert Claude Code v2.1.199 oder später.

2812 2919 

2813<span id="context-and-memory" />2920<span id="context-and-memory" />

2814 2921 

2815<h2 id="memory-and-context">2922<h2 id="memory-and-context">

2816 Speicher und Kontext2923 Memory und Kontext

2817</h2>2924</h2>

2818 2925 

2819Steuern Sie, was Claude Code in den Kontext lädt, wie es komprimiert wird und wo es Speicher und Pläne speichert. Siehe [Kontext verwalten](/docs/de/context-window) und [Speicher](/docs/de/memory).2926Steuern Sie, was Claude Code in den Kontext lädt, wie es komprimiert wird und wo es Memory und Pläne ablegt. Siehe [Kontext verwalten](/docs/de/context-window) und [Memory](/docs/de/memory).

2820 2927 

2821<h3 id="autocompactenabled">2928<h3 id="autocompactenabled">

2822 `autoCompactEnabled`2929 `autoCompactEnabled`


2824 2931 

2825Lassen Sie Claude Code [die Konversation automatisch komprimieren](/docs/de/context-window#when-your-context-fills-up), wenn sich der Kontext dem Limit nähert. Erscheint in `/config` als **Auto-compact**, und das Umschalten dort schreibt diesen Schlüssel in Ihre Benutzereinstellungen.2932Lassen Sie Claude Code [die Konversation automatisch komprimieren](/docs/de/context-window#when-your-context-fills-up), wenn sich der Kontext dem Limit nähert. Erscheint in `/config` als **Auto-compact**, und das Umschalten dort schreibt diesen Schlüssel in Ihre Benutzereinstellungen.

2826 2933 

2827* **Bereich**: [`Any file`](#scopes)2934* **Geltungsbereich**: [`Any file`](#scopes)

2828* **Typ**: Boolean2935* **Typ**: Boolean

2829 * `true`: Claude Code komprimiert die Konversation automatisch, wenn sich der Kontext dem Limit nähert2936 * `true`: Claude Code komprimiert die Konversation automatisch, wenn sich der Kontext dem Limit nähert

2830 * `false`: Claude Code komprimiert nicht automatisch2937 * `false`: Claude Code komprimiert nicht automatisch

2831* **Standard**: `true`2938* **Standard**: `true`

2832* **Sitzungsübersteuerungen**: [`DISABLE_AUTO_COMPACT`](/docs/de/env-vars) deaktiviert Auto-Compact für eine Sitzung; welcher der beiden es deaktiviert, der andere kann es nicht wieder aktivieren2939* **Überschreibungen pro Sitzung**: [`DISABLE_AUTO_COMPACT`](/docs/de/env-vars) deaktiviert die automatische Komprimierung für eine Sitzung; welcher der beiden sie auch deaktiviert, der andere kann sie nicht wieder aktivieren

2833 2940 

2834```json settings.json theme={null}2941```json settings.json theme={null}

2835{2942{


2837}2944}

2838```2945```

2839 2946 

2840Der manuelle `/compact`-Befehl funktioniert weiterhin, während Auto-Compact deaktiviert ist.2947Der manuelle `/compact`-Befehl funktioniert weiterhin, während die automatische Komprimierung deaktiviert ist.

2841 2948 

2842<h3 id="autocompactwindow">2949<h3 id="autocompactwindow">

2843 `autoCompactWindow`2950 `autoCompactWindow`


2845 2952 

2846Legen Sie fest, wie voll das Kontextfenster wird, bevor Claude Code [automatisch komprimiert](/docs/de/context-window#when-your-context-fills-up).2953Legen Sie fest, wie voll das Kontextfenster wird, bevor Claude Code [automatisch komprimiert](/docs/de/context-window#when-your-context-fills-up).

2847 2954 

2848* **Bereich**: [`Any file`](#scopes)2955* **Geltungsbereich**: [`Any file`](#scopes)

2849* **Typ**: Anzahl der Token, von `100000` bis `1000000`. Claude Code begrenzt den Wert auf das Kontextfenster Ihres Modells; die [Modellübersicht](https://platform.claude.com/docs/en/about-claude/models/overview) listet das Fenster jedes Modells auf2956* **Typ**: Anzahl der Token, von `100000` bis `1000000`. Claude Code begrenzt den Wert auf das Kontextfenster Ihres Modells; die [Modellübersicht](https://platform.claude.com/docs/en/about-claude/models/overview) listet das Fenster jedes Modells auf

2850* **Standard**: nicht gesetzt, daher wählt Claude Code ein für Ihr Modell optimiertes Fenster2957* **Standard**: nicht gesetzt, daher wählt Claude Code ein für Ihr Modell optimiertes Fenster

2851* **Sitzungsübersteuerungen**: [`--autocompact`](/docs/de/cli-reference#cli-flags) hat Vorrang vor diesem Schlüssel für eine Sitzung, und [`CLAUDE_CODE_AUTO_COMPACT_WINDOW`](/docs/de/env-vars) hat Vorrang vor beiden2958* **Überschreibungen pro Sitzung**: [`--autocompact`](/docs/de/cli-reference#cli-flags) hat für eine Sitzung Vorrang vor diesem Schlüssel, und [`CLAUDE_CODE_AUTO_COMPACT_WINDOW`](/docs/de/env-vars) hat Vorrang vor beiden

2852 2959 

2853```json settings.json theme={null}2960```json settings.json theme={null}

2854{2961{


2862 `autoMemoryDirectory`2969 `autoMemoryDirectory`

2863</h3>2970</h3>

2864 2971 

2865Speichern Sie [automatischen Speicher](/docs/de/memory#storage-location) in einem Verzeichnis Ihrer Wahl statt in der projektspezifischen Standardeinstellung.2972Speichern Sie [Auto-Memory](/docs/de/memory#storage-location) in einem Verzeichnis Ihrer Wahl statt im projektspezifischen Standardverzeichnis.

2866 2973 

2867* **Bereich**: [`Any file`](#scopes)2974* **Geltungsbereich**: [`Any file`](#scopes)

2868* **Typ**: String, ein absoluter oder mit `~/` präfixierter Verzeichnispfad2975* **Typ**: String, ein absoluter oder mit `~/` präfixierter Verzeichnispfad

2869* **Standard**: nicht gesetzt, daher verwendet Claude Code `~/.claude/projects/<project>/memory/`2976* **Standard**: nicht gesetzt, daher verwendet Claude Code `~/.claude/projects/<project>/memory/`

2870 2977 


2880 `autoMemoryEnabled`2987 `autoMemoryEnabled`

2881</h3>2988</h3>

2882 2989 

2883Schalten Sie [automatischen Speicher](/docs/de/memory#enable-or-disable-auto-memory) ein oder aus. Wenn `false`, liest Claude nicht aus dem automatischen Speicherverzeichnis und schreibt nicht dorthin. Sie können es auch während einer Sitzung mit `/memory` umschalten, was diesen Schlüssel in Ihre Benutzereinstellungen schreibt.2990Schalten Sie [Auto-Memory](/docs/de/memory#enable-or-disable-auto-memory) ein oder aus. Wenn `false`, liest Claude nicht aus dem Auto-Memory-Verzeichnis und schreibt nicht dorthin. Sie können es auch während einer Sitzung mit `/memory` umschalten, was diesen Schlüssel in Ihre Benutzereinstellungen schreibt.

2884 2991 

2885* **Bereich**: [`Any file`](#scopes)2992* **Geltungsbereich**: [`Any file`](#scopes)

2886* **Typ**: Boolean2993* **Typ**: Boolean

2887 * `true`: dasselbe wie nicht gesetzt; automatischer Speicher bleibt aktiviert, es sei denn, etwas, das diesen Schlüssel übertrumpft, deaktiviert ihn für die Sitzung, wie `--bare`, sicherer Modus oder `CLAUDE_CODE_DISABLE_AUTO_MEMORY`2994 * `true`: dasselbe wie nicht gesetzt; Auto-Memory bleibt aktiviert, es sei denn, etwas, das Vorrang vor diesem Schlüssel hat, deaktiviert es für die Sitzung, wie `--bare`, der sichere Modus oder `CLAUDE_CODE_DISABLE_AUTO_MEMORY`

2888 * `false`: Claude liest nicht aus dem automatischen Speicherverzeichnis und schreibt nicht dorthin2995 * `false`: Claude liest nicht aus dem Auto-Memory-Verzeichnis und schreibt nicht dorthin

2889* **Standard**: `true`2996* **Standard**: `true`

2890* **Sitzungsübersteuerungen**: [`CLAUDE_CODE_DISABLE_AUTO_MEMORY`](/docs/de/env-vars) hat Vorrang vor diesem Schlüssel für eine Sitzung, in beide Richtungen2997* **Überschreibungen pro Sitzung**: [`CLAUDE_CODE_DISABLE_AUTO_MEMORY`](/docs/de/env-vars) hat für eine Sitzung Vorrang vor diesem Schlüssel, in beide Richtungen

2891 2998 

2892```json settings.json theme={null}2999```json settings.json theme={null}

2893{3000{


2899 `bashOutputMaxChars`3006 `bashOutputMaxChars`

2900</h3>3007</h3>

2901 3008 

2902Legen Sie fest, wie viele Zeichen der [Ausgabe eines erfolgreichen Bash- oder PowerShell-Befehls Claude inline erhält](/docs/de/tools-reference#output-limits). Wenn die Ausgabe das Limit überschreitet, speichert Claude Code sie in einer Datei und Claude erhält eine kurze Vorschau plus den Pfad der Datei. Erhöhen Sie das Limit, wenn die Befehlsausgabe, wie ein ausführlicher Build oder ein vollständiges Test-Suite-Protokoll, routinemäßig das Standard-Limit überschreitet und Sie möchten, dass Claude es liest, ohne die Datei zu öffnen. Erfordert Claude Code v2.1.261 oder später.3009Legen Sie fest, wie viele Zeichen der [Ausgabe eines erfolgreichen Bash- oder PowerShell-Befehls Claude inline erhält](/docs/de/tools-reference#output-limits). Wenn die Ausgabe das Limit überschreitet, speichert Claude Code sie in einer Datei und Claude erhält eine kurze Vorschau plus den Pfad der Datei. Erhöhen Sie das Limit, wenn die Befehlsausgabe, wie ein ausführlicher Build oder ein vollständiges Test-Suite-Log, routinemäßig das Standardlimit überschreitet und Sie möchten, dass Claude sie liest, ohne die Datei zu öffnen. Erfordert Claude Code v2.1.261 oder später.

2903 3010 

2904* **Bereich**: [`Any file`](#scopes)3011* **Geltungsbereich**: [`Any file`](#scopes)

2905* **Typ**: Anzahl der Zeichen, eine positive ganze Zahl. Claude Code begrenzt den Wert auf den Bereich `4000` bis `128000`3012* **Typ**: Anzahl der Zeichen, eine positive ganze Zahl. Claude Code begrenzt den Wert auf den Bereich `4000` bis `128000`

2906* **Standard**: nicht gesetzt, daher erhält Claude bis zu 30.000 Zeichen inline3013* **Standard**: nicht gesetzt, daher erhält Claude bis zu 30.000 Zeichen inline

2907 3014 


2917 `claudeMd`3024 `claudeMd`

2918</h3>3025</h3>

2919 3026 

2920Injizieren Sie CLAUDE.md-ähnliche Anweisungen als von der Organisation verwalteter Speicher, ohne eine separate Datei bereitzustellen. Claude Code lädt den Text als verwalteten Speichereintrag vor Benutzer- und Projekt-CLAUDE.md-Dateien.3027Fügen Sie CLAUDE.md-ähnliche Anweisungen als von der Organisation verwaltetes Memory ein, ohne eine separate Datei bereitzustellen. Claude Code lädt den Text als verwalteten Memory-Eintrag vor Benutzer- und Projekt-CLAUDE.md-Dateien.

2921 3028 

2922* **Bereich**: [`Managed`](#scopes)3029* **Geltungsbereich**: [`Managed`](#scopes)

2923* **Typ**: String, der Text einer CLAUDE.md-Datei; schreiben Sie ihn wie die Datei, Markdown eingeschlossen, mit Zeilenumbrüchen als `\n`3030* **Typ**: String, der Text einer CLAUDE.md-Datei; schreiben Sie ihn wie die Datei, Markdown eingeschlossen, mit Zeilenumbrüchen als `\n`

2924* **Standard**: nicht gesetzt3031* **Standard**: nicht gesetzt

2925 3032 


2937 `claudeMdExcludes`3044 `claudeMdExcludes`

2938</h3>3045</h3>

2939 3046 

2940Überspringen Sie spezifische `CLAUDE.md`-Dateien, wenn Claude Code [Speicher](/docs/de/memory#exclude-specific-claude-md-files) lädt. In einem großen Monorepo verwenden Sie es, um CLAUDE.md-Dateien von anderen Teams zu überspringen, die für Ihre Arbeit nicht relevant sind; [Irrelevante CLAUDE.md-Dateien ausschließen](/docs/de/large-codebases#exclude-irrelevant-claude-md-files) im Leitfaden für große Codebases führt Sie durch diesen Fall. Muster werden gegen absolute Dateipfade abgeglichen.3047Überspringen Sie bestimmte `CLAUDE.md`-Dateien, wenn Claude Code [Memory](/docs/de/memory#exclude-specific-claude-md-files) lädt. In einem großen Monorepo verwenden Sie es, um CLAUDE.md-Dateien anderer Teams zu überspringen, die für Ihre Arbeit nicht relevant sind; [Irrelevante CLAUDE.md-Dateien ausschließen](/docs/de/large-codebases#exclude-irrelevant-claude-md-files) im Leitfaden für große Codebases führt Sie durch diesen Fall. Muster werden gegen absolute Dateipfade abgeglichen.

2941 3048 

2942* **Bereich**: [`Any file`](#scopes)3049* **Geltungsbereich**: [`Any file`](#scopes)

2943* **Typ**: Array von Strings, jeweils ein Glob-Muster oder absoluter Pfad3050* **Typ**: Array von Strings, jeweils ein Glob-Muster oder absoluter Pfad

2944* **Standard**: nicht gesetzt, daher lädt Claude Code jede CLAUDE.md, die es findet3051* **Standard**: nicht gesetzt, daher lädt Claude Code jede CLAUDE.md, die es findet

2945 3052 


2949}3056}

2950```3057```

2951 3058 

2952Ausschlüsse gelten nur für Benutzer-, Projekt- und lokale Speicherdateien; verwaltete Richtlinien-CLAUDE.md-Dateien können nicht ausgeschlossen werden.3059Ausschlüsse gelten nur für Benutzer-, Projekt- und lokale Memory-Dateien; CLAUDE.md-Dateien aus verwalteten Richtlinien können nicht ausgeschlossen werden.

2953 3060 

2954<span id="environment-variables" />3061<span id="environment-variables" />

2955 3062 


2957 `env`3064 `env`

2958</h3>3065</h3>

2959 3066 

2960Legen Sie Umgebungsvariablen für jede Sitzung und für die Unterprozesse fest, die Claude Code von ihr aus startet. Die meisten Variablen in der [Umgebungsvariablenreferenz](/docs/de/env-vars) können hier gehen, was ist, wie Sie eine auf jede Sitzung anwenden oder sie in Ihrem Team verteilen. Projekt- und lokale Einstellungen können [einige davon](#variables-claude-code-ignores-in-env) nicht setzen.3067Legen Sie Umgebungsvariablen für jede Sitzung und für die Unterprozesse fest, die Claude Code von ihr aus startet. Die meisten Variablen in der [Referenz der Umgebungsvariablen](/docs/de/env-vars) können hier eingetragen werden; so wenden Sie eine Variable auf jede Sitzung an oder verteilen sie an Ihr Team. Projekt- und lokale Einstellungen können [einige davon](#variables-claude-code-ignores-in-env) nicht setzen.

2961 3068 

2962* **Bereich**: [`Any file`](#scopes)3069* **Geltungsbereich**: [`Any file`](#scopes)

2963* **Typ**: Objekt, das Variablennamen auf String-Werte abbildet3070* **Typ**: Objekt, das Variablennamen auf String-Werte abbildet

2964* **Standard**: nicht gesetzt3071* **Standard**: nicht gesetzt

2965 3072 

2966Dieses Beispiel deaktiviert die automatische Komprimierung und leitet API-Anfragen durch einen Proxy:3073Dieses Beispiel deaktiviert die automatische Komprimierung und leitet API-Anfragen über einen Proxy:

2967 3074 

2968```json settings.json theme={null}3075```json settings.json theme={null}

2969{3076{


2978 Wie `env`-Werte mit Ihrer Shell interagieren3085 Wie `env`-Werte mit Ihrer Shell interagieren

2979</h4>3086</h4>

2980 3087 

2981* Ein Wert hier überschreibt die gleiche Variable, die in Ihrer Shell exportiert wird, und wenn mehr als eine Einstellungsdatei eine Variable setzt, gilt die [höchste Priorität](/docs/de/settings#settings-precedence). [Variablen, die Claude Code in `env` ignoriert](#variables-claude-code-ignores-in-env) listet die Ausnahmen für Projekt- und lokale Einstellungen auf.3088* Ein Wert hier überschreibt dieselbe Variable, die in Ihrer Shell exportiert wird, und wenn mehr als eine Einstellungsdatei eine Variable setzt, gilt die mit dem [höchsten Vorrang](/docs/de/settings#settings-precedence). [Variablen, die Claude Code in `env` ignoriert](#variables-claude-code-ignores-in-env) listet die Ausnahmen für Projekt- und lokale Einstellungen auf.

2982* Um einen Shell-Export zu stornieren, setzen Sie die Variable auf `""`. Claude Code behandelt einen leeren Wert als nicht gesetzt für die Anbieterauswahl, und Unterprozesse erben den leeren Wert.3089* Wenn die Claude Desktop-App oder ein Runner einer [selbst gehosteten Umgebung](/docs/de/self-hosted-environments) die Sitzung startet, hat stattdessen die von ihr bzw. ihm erstellte Start-Umgebung Vorrang: Claude Code ignoriert einen `env`-Wert aus jeder Einstellungsdatei für eine Variable, die die Start-Umgebung bereits setzt. Das [Debug-Log](/docs/de/debug-your-config) nennt jede ignorierte Variable.

3090* Um einen Shell-Export aufzuheben, setzen Sie die Variable auf `""`. Claude Code behandelt einen leeren Wert bei der Anbieterauswahl als nicht gesetzt, und Unterprozesse erben den leeren Wert.

2983* `NO_COLOR` und `FORCE_COLOR`, die hier gesetzt sind, erreichen nur Unterprozesse. Um die Farben der Claude Code-Oberfläche selbst zu ändern, setzen Sie sie in Ihrer Shell, bevor Sie `claude` starten.3091* `NO_COLOR` und `FORCE_COLOR`, die hier gesetzt sind, erreichen nur Unterprozesse. Um die Farben der Claude Code-Oberfläche selbst zu ändern, setzen Sie sie in Ihrer Shell, bevor Sie `claude` starten.

2984* Werte hier sind Klartext in der Einstellungsdatei und erreichen jeden Unterprozess, den Claude Code startet. Für ein OTLP-Bearer-Token, das sich dreht, verwenden Sie [`otelHeadersHelper`](#otelheadershelper); für API-Anmeldedaten verwenden Sie [`apiKeyHelper`](#apikeyhelper).3092* Werte hier stehen im Klartext in der Einstellungsdatei und erreichen jeden Unterprozess, den Claude Code startet. Für ein OTLP-Bearer-Token, das rotiert wird, verwenden Sie [`otelHeadersHelper`](#otelheadershelper); für API-Anmeldedaten verwenden Sie [`apiKeyHelper`](#apikeyhelper).

2985 3093 

2986<h4 id="when-claude-code-applies-env-values">3094<h4 id="when-claude-code-applies-env-values">

2987 Wann Claude Code `env`-Werte anwendet3095 Wann Claude Code `env`-Werte anwendet


2989 3097 

2990* Aus Benutzereinstellungen, `--settings` und verwalteten Einstellungen: beim Start und erneut in der laufenden Sitzung, wenn eine gespeicherte Änderung die zusammengeführte `env` ändert.3098* Aus Benutzereinstellungen, `--settings` und verwalteten Einstellungen: beim Start und erneut in der laufenden Sitzung, wenn eine gespeicherte Änderung die zusammengeführte `env` ändert.

2991* Aus Projekt- und lokalen Einstellungen: nachdem Sie dem Workspace vertrauen, oder beim Start im `-p`-Modus, der niemals den Vertrauensdialog anzeigt, und erneut, wenn eine gespeicherte Änderung die zusammengeführte `env` ändert.3099* Aus Projekt- und lokalen Einstellungen: nachdem Sie dem Workspace vertrauen, oder beim Start im `-p`-Modus, der niemals den Vertrauensdialog anzeigt, und erneut, wenn eine gespeicherte Änderung die zusammengeführte `env` ändert.

2992* Variablen, die Claude Code als sicher klassifiziert, wie Modellauswahl, Timeouts und Limits, und Feature-Toggles: beim Start aus jeder Einstellungsdatei, außer den [Variablen, die Projekt- und lokale Einstellungen nicht setzen können](#variables-claude-code-ignores-in-env).3100* Variablen, die Claude Code als sicher einstuft, wie Modellauswahl, Timeouts und Limits sowie Feature-Toggles: beim Start aus jeder Einstellungsdatei, außer den [Variablen, die Projekt- und lokale Einstellungen nicht setzen können](#variables-claude-code-ignores-in-env).

2993* Nachdem Sie die Sitzung mit `/cd` [verschieben](/docs/de/permissions#move-the-session-to-another-directory) auf v2.1.246 oder später: die `env`-Werte des neuen Verzeichnisses, zusätzlich zu denen des vorherigen Verzeichnisses.3101* Nachdem Sie die [Sitzung mit `/cd` verschoben haben](/docs/de/permissions#move-the-session-to-another-directory), ab v2.1.246: die Projekt- und lokalen `env`-Werte des neuen Verzeichnisses, zusätzlich zu denen des vorherigen Verzeichnisses.

2994 3102 

2995<h4 id="variables-claude-code-ignores-in-env">3103<h4 id="variables-claude-code-ignores-in-env">

2996 Variablen, die Claude Code in `env` ignoriert3104 Variablen, die Claude Code in `env` ignoriert

2997</h4>3105</h4>

2998 3106 

2999* Projekt- und lokale Einstellungen können keine Variablen setzen, die ein ausgechecktes Repository nicht kontrollieren sollte; setzen Sie diese stattdessen in Ihrer Shell, Benutzereinstellungen oder verwalteten Einstellungen. Claude Code löscht jede, außer einigen Werten, die Telemetrie ausschalten, und protokolliert eine Warnung, die Sie mit `claude --debug` sehen können. Sie umfassen:3107* Projekt- und lokale Einstellungen können keine Variablen setzen, die ein ausgechecktes Repository nicht steuern sollte; setzen Sie diese stattdessen in Ihrer Shell, in Benutzereinstellungen oder in verwalteten Einstellungen. Claude Code verwirft jede davon, außer einigen Werten, die Telemetrie ausschalten, und protokolliert eine Warnung, die Sie mit `claude --debug` sehen können. Dazu gehören:

3000 3108 

3001 * Variablen, die wählen, wo Claude Code seine eigenen Dateien speichert oder schreibt: `CLAUDE_CONFIG_DIR`, `CLAUDE_CODE_TMPDIR` und die Betriebssystem-Verzeichnisvariablen wie `HOME`, `TMPDIR`, `TMP`, `TEMP` und die `XDG_*`-Familie.3109 * Variablen, die festlegen, wo Claude Code seine eigenen Dateien speichert oder schreibt: `CLAUDE_CONFIG_DIR`, `CLAUDE_CODE_TMPDIR` und die Verzeichnisvariablen des Betriebssystems wie `HOME`, `TMPDIR`, `TMP`, `TEMP` und die `XDG_*`-Familie.

3002 * Variablen, die Sitzungsinhalte exportieren: [`OTEL_LOG_RAW_API_BODIES`](/docs/de/env-vars#variables) und das detaillierte Beta-Tracing-Paar `ENABLE_BETA_TRACING_DETAILED` und `BETA_TRACING_ENDPOINT`.3110 * Variablen, die Sitzungsinhalte exportieren: [`OTEL_LOG_RAW_API_BODIES`](/docs/de/env-vars#variables) und das detaillierte Beta-Tracing-Paar `ENABLE_BETA_TRACING_DETAILED` und `BETA_TRACING_ENDPOINT`.

3003 * Die [OpenTelemetry-Exporter](/docs/de/monitoring-usage)-Variablen, die Telemetrie aktivieren, wählen, wohin sie geht, oder wählen, welche Inhalte sie erfasst:3111 * Die Variablen des [OpenTelemetry-Exporters](/docs/de/monitoring-usage), die Telemetrie aktivieren, festlegen, wohin sie gesendet wird, oder festlegen, welche Inhalte sie erfasst:

3004 3112 

3005 * `CLAUDE_CODE_ENABLE_TELEMETRY`, plus das erweiterte Telemetrie-Beta-Paar `CLAUDE_CODE_ENHANCED_TELEMETRY_BETA` und `ENABLE_ENHANCED_TELEMETRY_BETA`3113 * `CLAUDE_CODE_ENABLE_TELEMETRY`, plus das Beta-Paar für erweiterte Telemetrie `CLAUDE_CODE_ENHANCED_TELEMETRY_BETA` und `ENABLE_ENHANCED_TELEMETRY_BETA`

3006 * Die Exporter-Selektoren `OTEL_LOGS_EXPORTER`, `OTEL_METRICS_EXPORTER` und `OTEL_TRACES_EXPORTER`3114 * Die Exporter-Selektoren `OTEL_LOGS_EXPORTER`, `OTEL_METRICS_EXPORTER` und `OTEL_TRACES_EXPORTER`

3007 * Die Inhaltsvariablen `OTEL_LOG_USER_PROMPTS`, `OTEL_LOG_ASSISTANT_RESPONSES`, `OTEL_LOG_TOOL_CONTENT` und `OTEL_LOG_TOOL_DETAILS`3115 * Die Inhaltsvariablen `OTEL_LOG_USER_PROMPTS`, `OTEL_LOG_ASSISTANT_RESPONSES`, `OTEL_LOG_TOOL_CONTENT` und `OTEL_LOG_TOOL_DETAILS`

3008 * `OTEL_EXPORTER_OTLP_*`-Variablen, deren Namen auf `_ENDPOINT`, `_HEADERS`, `_PROTOCOL`, `_CERTIFICATE`, `_CLIENT_KEY` oder `_INSECURE` enden, in den generischen und pro-Signal-Formen, wie `OTEL_EXPORTER_OTLP_ENDPOINT` und `OTEL_EXPORTER_OTLP_METRICS_HEADERS`3116 * `OTEL_EXPORTER_OTLP_*`-Variablen, deren Namen auf `_ENDPOINT`, `_HEADERS`, `_PROTOCOL`, `_CERTIFICATE`, `_CLIENT_KEY` oder `_INSECURE` enden, in der generischen und der signalspezifischen Form, wie `OTEL_EXPORTER_OTLP_ENDPOINT` und `OTEL_EXPORTER_OTLP_METRICS_HEADERS`

3009 * `OTEL_EXPORTER_PROMETHEUS_HOST` und `OTEL_EXPORTER_PROMETHEUS_PORT`3117 * `OTEL_EXPORTER_PROMETHEUS_HOST` und `OTEL_EXPORTER_PROMETHEUS_PORT`

3010 3118 

3011 Nur diese Werte gelten weiterhin aus Projekt- und lokalen Einstellungen, da sie etwas ausschalten: `none` für die drei Exporter-Selektoren und ein Aus-Wert wie `0` für `OTEL_LOG_USER_PROMPTS`, `OTEL_LOG_TOOL_CONTENT` und `OTEL_LOG_TOOL_DETAILS`. Ein solcher Wert überschreibt die gleiche Variable in Ihren Benutzereinstellungen, aber nicht eine, die die Umgebung, von der Sie Claude Code starten, eine `--settings`-Datei oder verwaltete Einstellungen setzen.3119 Nur diese Werte gelten weiterhin aus Projekt- und lokalen Einstellungen, da sie etwas ausschalten: `none` für die drei Exporter-Selektoren und ein Aus-Wert wie `0` für `OTEL_LOG_USER_PROMPTS`, `OTEL_LOG_TOOL_CONTENT` und `OTEL_LOG_TOOL_DETAILS`. Ein solcher Wert überschreibt dieselbe Variable in Ihren Benutzereinstellungen, aber nicht eine, die die Umgebung, aus der Sie Claude Code starten, eine `--settings`-Datei oder verwaltete Einstellungen setzen.

3012 3120 

3013 Wenn eine Projekt- oder lokale Einstellungsdatei eine Variable in dieser Gruppe setzt, zeigt eine lokale interaktive Sitzung beim Start einen Hinweis. Führen Sie `/status` oder `claude doctor` aus, um zu sehen, welche Claude Code ignoriert hat und welche Telemetrie ausgeschaltet haben; beide listen Namen auf, niemals Werte. Ein nicht-interaktiver Lauf mit `-p` oder eine Agent SDK-Sitzung zeigt keinen Hinweis, daher überprüfen Sie, ob Ihr Collector nach dem Upgrade noch Daten empfängt. Wenn nicht, setzen Sie die Variablen in Ihren Benutzereinstellungen, verwalteten Einstellungen, der Umgebung des Jobs oder einer Datei, die Sie mit `--settings` übergeben.3121 Wenn eine Projekt- oder lokale Einstellungsdatei eine Variable aus dieser Gruppe setzt, zeigt eine lokale interaktive Sitzung beim Start einen Hinweis. Führen Sie `/status` oder `claude doctor` aus, um zu sehen, welche Claude Code ignoriert hat und welche die Telemetrie ausgeschaltet haben; beide listen Namen auf, niemals Werte. Ein nicht interaktiver Lauf mit `-p` oder eine Agent SDK-Sitzung zeigt keinen Hinweis, überprüfen Sie daher nach dem Upgrade, ob Ihr Collector noch Daten empfängt. Wenn nicht, setzen Sie die Variablen in Ihren Benutzereinstellungen, in verwalteten Einstellungen, in der Umgebung des Jobs oder in einer Datei, die Sie mit `--settings` übergeben.

3014 3122 

3015 Das Ignorieren dieser Gruppe in Projekt- und lokalen Einstellungen erfordert Claude Code v2.1.282 oder später.3123 Das Ignorieren dieser Gruppe in Projekt- und lokalen Einstellungen erfordert Claude Code v2.1.282 oder später.

3016 * Variablen, die ändern, wie Claude Code startet oder synchronisiert, wie `CLAUDE_CODE_PROCESS_WRAPPER`, `CLAUDE_CODE_SYNC_SKILLS`, `CLAUDE_CODE_SYNC_PLUGINS`, `CLAUDE_CODE_PLUGIN_CACHE_DIR` und `CLAUDE_CODE_PLUGIN_SEED_DIR`.3124 * Variablen, die ändern, wie Claude Code startet oder synchronisiert, wie `CLAUDE_CODE_PROCESS_WRAPPER`, `CLAUDE_CODE_SYNC_SKILLS`, `CLAUDE_CODE_SYNC_PLUGINS`, `CLAUDE_CODE_PLUGIN_CACHE_DIR` und `CLAUDE_CODE_PLUGIN_SEED_DIR`.

3017 3125 

3018 Vor v2.1.251 konnten Projekt- und lokale Einstellungen auch die Variablen in dieser Liste setzen, die wählen, wo Claude Code seine Dateien schreibt oder die Sitzungsinhalte exportieren, außer `HOME` und `XDG_CONFIG_HOME`.3126 Vor v2.1.251 konnten Projekt- und lokale Einstellungen auch die Variablen in dieser Liste setzen, die festlegen, wo Claude Code seine Dateien schreibt, oder die Sitzungsinhalte exportieren, außer `HOME` und `XDG_CONFIG_HOME`.

3019* Identitätsvariablen, die Claude Codes Hosting-Umgebungen besitzen, wie `CLAUDE_CODE_REMOTE` und `CLAUDE_CODE_ACCOUNT_UUID`, werden aus jeder Datei ignoriert.3127* Identitätsvariablen, die den Hosting-Umgebungen von Claude Code gehören, wie `CLAUDE_CODE_REMOTE` und `CLAUDE_CODE_ACCOUNT_UUID`, werden aus jeder Datei ignoriert.

3020* [`CLAUDE_CODE_MESSAGING_SOCKET` und `CLAUDE_CODE_MESSAGING_TOKEN`](/docs/de/env-vars#variables), die Claude Code selbst exportiert, werden aus jeder Datei ignoriert. Das Ignorieren der Socket-Variable erfordert Claude Code v2.1.224 oder später, und das Ignorieren des Tokens erfordert v2.1.228 oder später.3128* [`CLAUDE_CODE_MESSAGING_SOCKET` und `CLAUDE_CODE_MESSAGING_TOKEN`](/docs/de/env-vars#variables), die Claude Code selbst exportiert, werden aus jeder Datei ignoriert. Das Ignorieren der Socket-Variable erfordert Claude Code v2.1.224 oder später, und das Ignorieren des Tokens erfordert v2.1.228 oder später.

3021* [`CLAUDE_CODE_PROJECT_DIR_NAME`](/docs/de/sessions#name-the-project-directory-yourself), das Claude Code nur aus der Start-Umgebung liest, wird aus jeder Datei ignoriert; erfordert v2.1.234 oder später.3129* [`CLAUDE_CODE_PROJECT_DIR_NAME`](/docs/de/sessions#name-the-project-directory-yourself), das Claude Code nur aus der Start-Umgebung liest, wird aus jeder Datei ignoriert; erfordert v2.1.234 oder später.

3022* [`CLAUDE_CODE_RESTRICTED`](/docs/de/env-vars#variables), das Claude Code nur aus der Start-Umgebung liest, wird aus jeder Datei ignoriert.3130* [`CLAUDE_CODE_RESTRICTED`](/docs/de/env-vars#variables), das Claude Code nur aus der Start-Umgebung liest, wird aus jeder Datei ignoriert.

3131* [`CLAUDE_CODE_DISABLE_POWERSHELL_CMD_RM_DENY`](/docs/de/env-vars#variables), das Claude Code nur aus der Start-Umgebung liest, wird aus jeder Datei ignoriert. Die Variable erfordert Claude Code v2.1.283 oder später.

3132* [`CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT` und `CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT`](/docs/de/env-vars#variables), die Claude Code nur aus der Start-Umgebung liest, werden aus jeder Datei ignoriert.

3023 3133 

3024<h3 id="filecheckpointingenabled">3134<h3 id="filecheckpointingenabled">

3025 `fileCheckpointingEnabled`3135 `fileCheckpointingEnabled`

3026</h3>3136</h3>

3027 3137 

3028Lassen Sie Claude Code Dateien vor jeder Bearbeitung als Snapshot erstellen, damit [`/rewind`](/docs/de/checkpointing) sie wiederherstellen kann. Erscheint in `/config` als **Rewind code (checkpoints)**, und das Umschalten dort schreibt diesen Schlüssel in Ihre Benutzereinstellungen.3138Lassen Sie Claude Code vor jeder Bearbeitung Snapshots von Dateien erstellen, damit [`/rewind`](/docs/de/checkpointing) sie wiederherstellen kann. Erscheint in `/config` als **Rewind code (checkpoints)**, und das Umschalten dort schreibt diesen Schlüssel in Ihre Benutzereinstellungen.

3029 3139 

3030* **Bereich**: [`Any file`](#scopes)3140* **Geltungsbereich**: [`Any file`](#scopes)

3031* **Typ**: Boolean3141* **Typ**: Boolean

3032 * `true`: Claude Code erstellt Snapshots von Dateien vor jeder Bearbeitung, damit `/rewind` sie wiederherstellen kann3142 * `true`: Claude Code erstellt vor jeder Bearbeitung Snapshots von Dateien, damit `/rewind` sie wiederherstellen kann

3033 * `false`: Claude Code erstellt keine Snapshots von Dateien, daher kann `/rewind` sie nicht wiederherstellen3143 * `false`: Claude Code erstellt keine Snapshots von Dateien, daher kann `/rewind` sie nicht wiederherstellen

3034* **Standard**: `true`3144* **Standard**: `true`

3035* **Sitzungsübersteuerungen**: [`CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING`](/docs/de/env-vars) deaktiviert Checkpointing für eine Sitzung; welcher der beiden es deaktiviert, der andere kann es nicht wieder aktivieren3145* **Überschreibungen pro Sitzung**: [`CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING`](/docs/de/env-vars) deaktiviert Checkpointing für eine Sitzung; welcher der beiden es auch deaktiviert, der andere kann es nicht wieder aktivieren

3036 3146 

3037```json settings.json theme={null}3147```json settings.json theme={null}

3038{3148{


3040}3150}

3041```3151```

3042 3152 

3043In einem `-p`-Lauf oder einer Agent SDK-Sitzung ignoriert Claude Code diesen Schlüssel. Das SDK aktiviert Checkpointing mit seiner `enableFileCheckpointing`-Option, und ein einfacher `-p`-Lauf benötigt `CLAUDE_CODE_ENABLE_SDK_FILE_CHECKPOINTING=true`. Siehe [Datei-Checkpointing im Agent SDK](/docs/de/agent-sdk/file-checkpointing).3153In einem `-p`-Lauf oder einer Agent SDK-Sitzung ignoriert Claude Code diesen Schlüssel. Das SDK aktiviert Checkpointing mit seiner Option `enableFileCheckpointing`, und ein einfacher `-p`-Lauf benötigt `CLAUDE_CODE_ENABLE_SDK_FILE_CHECKPOINTING=true`. Siehe [Datei-Checkpointing im Agent SDK](/docs/de/agent-sdk/file-checkpointing).

3044 3154 

3045<h3 id="plansdirectory">3155<h3 id="plansdirectory">

3046 `plansDirectory`3156 `plansDirectory`


3048 3158 

3049Wählen Sie, wo Claude Code die Plandateien speichert, die es im [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode) schreibt. Claude Code löst den Pfad relativ zum Projektstamm auf und behält den Standard bei, wenn der Pfad außerhalb davon aufgelöst wird.3159Wählen Sie, wo Claude Code die Plandateien speichert, die es im [Plan-Modus](/docs/de/permission-modes#analyze-before-you-edit-with-plan-mode) schreibt. Claude Code löst den Pfad relativ zum Projektstamm auf und behält den Standard bei, wenn der Pfad außerhalb davon aufgelöst wird.

3050 3160 

3051* **Bereich**: [`Any file`](#scopes)3161* **Geltungsbereich**: [`Any file`](#scopes)

3052* **Typ**: String, ein Pfad relativ zum Projektstamm3162* **Typ**: String, ein Pfad relativ zum Projektstamm

3053* **Standard**: nicht gesetzt, daher verwendet Claude Code `~/.claude/plans`3163* **Standard**: nicht gesetzt, daher verwendet Claude Code `~/.claude/plans`

3054 3164 


3062 `skillListingBudgetFraction`3172 `skillListingBudgetFraction`

3063</h3>3173</h3>

3064 3174 

3065Jede Runde sieht Claude eine [Auflistung Ihrer Skills](/docs/de/skills#skill-descriptions-are-cut-short) mit ihren Beschreibungen, und Claude Code begrenzt diese Auflistung auf einen Anteil des Kontextfensters. Wenn die Auflistung über der Obergrenze liegt, behält Claude Code jeden Skill-Namen, löscht aber die Beschreibungen der am wenigsten verwendeten Skills, damit Claude diese Skills immer noch aufrufen kann, aber weniger wahrscheinlich selbst einen auswählt. Erhöhen Sie diesen Schlüssel, um mehr Beschreibungen sichtbar zu halten, auf Kosten von mehr Kontext pro Runde.3175In jedem Turn sieht Claude eine [Auflistung Ihrer Skills](/docs/de/skills#skill-descriptions-are-cut-short) mit ihren Beschreibungen, und Claude Code begrenzt diese Auflistung auf einen Anteil des Kontextfensters. Wenn die Auflistung die Obergrenze überschreitet, behält Claude Code den Namen jedes Skills bei, entfernt aber die Beschreibungen der am wenigsten verwendeten Skills, sodass Claude diese Skills weiterhin aufrufen kann, aber seltener von sich aus einen davon auswählt. Erhöhen Sie diesen Schlüssel, um mehr Beschreibungen sichtbar zu halten, auf Kosten von mehr Kontext pro Turn.

3066 3176 

3067* **Bereich**: [`Any file`](#scopes)3177* **Geltungsbereich**: [`Any file`](#scopes)

3068* **Typ**: Zahl, ein Bruch größer als `0` und höchstens `1`3178* **Typ**: Zahl, ein Bruchteil größer als `0` und höchstens `1`

3069* **Standard**: `0.01`, das 1% des Kontextfensters reserviert3179* **Standard**: `0.01`, was 1 % des Kontextfensters reserviert

3070 3180 

3071```json settings.json theme={null}3181```json settings.json theme={null}

3072{3182{


3080 `skillListingMaxDescChars`3190 `skillListingMaxDescChars`

3081</h3>3191</h3>

3082 3192 

3083Jede Runde sieht Claude eine [Auflistung Ihrer Skills](/docs/de/skills#skill-descriptions-are-cut-short), die den `description`- und `when_to_use`-Text jedes Skills zeigt. Dieser Schlüssel begrenzt, wie viele Zeichen dieses Textes Claude Code pro Skill anzeigt; längerer Text wird bei der Obergrenze abgeschnitten.3193In jedem Turn sieht Claude eine [Auflistung Ihrer Skills](/docs/de/skills#skill-descriptions-are-cut-short), die den `description`- und `when_to_use`-Text jedes Skills zeigt. Dieser Schlüssel begrenzt, wie viele Zeichen dieses Textes Claude Code pro Skill anzeigt; längerer Text wird an der Obergrenze abgeschnitten.

3084 3194 

3085* **Bereich**: [`Any file`](#scopes)3195* **Geltungsbereich**: [`Any file`](#scopes)

3086* **Typ**: Anzahl der Zeichen, eine positive ganze Zahl3196* **Typ**: Anzahl der Zeichen, eine positive ganze Zahl

3087* **Standard**: `1536`3197* **Standard**: `1536`

3088 3198 


3092}3202}

3093```3203```

3094 3204 

3095Erhöhen Sie es, um lange Beschreibungen intakt zu halten, auf Kosten von mehr Kontext pro Runde; senken Sie es, um mehr Skills unter [`skillListingBudgetFraction`](#skilllistingbudgetfraction) zu passen.3205Erhöhen Sie den Wert, um lange Beschreibungen vollständig zu erhalten, auf Kosten von mehr Kontext pro Turn; senken Sie ihn, um mehr Skills innerhalb von [`skillListingBudgetFraction`](#skilllistingbudgetfraction) unterzubringen.

3096 3206 

3097<h3 id="taskoutputmaxchars">3207<h3 id="taskoutputmaxchars">

3098 `taskOutputMaxChars`3208 `taskOutputMaxChars`

3099</h3>3209</h3>

3100 3210 

3101<Warning>3211<Warning>

3102 Entfernt in v2.1.277, zusammen mit dem `TaskOutput`-Tool, das es dimensioniert. Das Setzen hat keine Auswirkung auf aktuelle Versionen. Claude liest eine [Ausgabedatei](/docs/de/tools-reference#background-commands) einer Hintergrundaufgabe stattdessen mit `Read`.3212 Entfernt in v2.1.277, zusammen mit dem `TaskOutput`-Tool, dessen Ausgabegröße es festlegte. Das Setzen hat in aktuellen Versionen keine Auswirkung. Claude liest die [Ausgabedatei](/docs/de/tools-reference#background-commands) einer Hintergrundaufgabe stattdessen mit `Read`.

3103</Warning>3213</Warning>

3104 3214 

3105Bis v2.1.276 setzen Sie diesen Schlüssel auf die Anzahl der Zeichen einer [Hintergrundaufgabe](/docs/de/tools-reference#background-commands) Ausgabe, die Claude inline erhielt, wenn es die Aufgabe mit dem `TaskOutput`-Tool las.3215Bis v2.1.276 legten Sie mit diesem Schlüssel die Anzahl der Zeichen der Ausgabe einer [Hintergrundaufgabe](/docs/de/tools-reference#background-commands) fest, die Claude inline erhielt, wenn es die Aufgabe mit dem `TaskOutput`-Tool las.

3106 3216 

3107<h2 id="interface-and-terminal">3217<h2 id="interface-and-terminal">

3108 Schnittstelle und Terminal3218 Oberfläche und Terminal

3109</h2>3219</h2>

3110 3220 

3111Ändern Sie das Aussehen und Verhalten von Claude Code in Ihrem Terminal: Design, Editor-Modus, Statuszeile, Spinner, Benachrichtigungen innerhalb der Sitzung und Barrierefreiheit. Siehe [Terminal-Konfiguration](/docs/de/terminal-config).3221Ändern Sie, wie Claude Code in Ihrem Terminal aussieht und sich verhält: Theme, Editor-Modus, Statuszeile, Spinner, Benachrichtigungen innerhalb der Sitzung und Barrierefreiheit. Siehe [Terminal-Konfiguration](/docs/de/terminal-config).

3112 3222 

3113<h3 id="askuserquestiontimeout">3223<h3 id="askuserquestiontimeout">

3114 `askUserQuestionTimeout`3224 `askUserQuestionTimeout`

3115</h3>3225</h3>

3116 3226 

3117Lassen Sie einen unbeantworteten [`AskUserQuestion`](/docs/de/tools-reference)-Dialog nach einer Leerlaufzeit automatisch fortfahren und dabei alle bereits ausgewählten Optionen einreichen. Legen Sie dies fest, wenn Sie sich abmelden und möchten, dass Claude ohne Sie fortfährt. Mit der Standardeinstellung warten Fragen, bis Sie sie beantworten. Erfordert Claude Code v2.1.200 oder später.3227Lassen Sie einen unbeantworteten [`AskUserQuestion`](/docs/de/tools-reference)-Dialog nach einer Leerlaufzeit automatisch fortfahren, wobei die bereits ausgewählten Optionen übermittelt werden. Setzen Sie diesen Schlüssel, wenn Sie sich entfernen und möchten, dass Claude ohne Sie weiterarbeitet. Mit dem Standardwert warten Fragen, bis Sie sie beantworten. Erfordert Claude Code v2.1.200 oder höher.

3118 3228 

3119* **Bereich**: [`Benutzer oder verwaltet`](#scopes)3229* **Geltungsbereich**: [`User or managed`](#scopes)

3120* **Typ**: String, einer von `"60s"`, `"5m"`, `"10m"` oder `"never"`3230* **Typ**: String, einer von `"60s"`, `"5m"`, `"10m"` oder `"never"`

3121* **Standard**: `"never"`3231* **Standard**: `"never"`

3122* **Sitzungsübergreifende Außerkraftsetzungen**: [`CLAUDE_AFK_TIMEOUT_MS`](/docs/de/env-vars) hat Vorrang vor diesem Schlüssel für eine Sitzung3232* **Überschreibungen pro Sitzung**: [`CLAUDE_AFK_TIMEOUT_MS`](/docs/de/env-vars) hat für eine Sitzung Vorrang vor diesem Schlüssel

3123 3233 

3124```json settings.json theme={null}3234```json settings.json theme={null}

3125{3235{


3127}3237}

3128```3238```

3129 3239 

3130Erscheint in `/config` als **Frage automatisch fortsetzen Timeout**, das diesen Schlüssel in Benutzereinstellungen schreibt; Claude Code blendet die Zeile aus, während verwaltete Einstellungen oder das Flag `--settings` den Schlüssel setzen. Erfordert Claude Code v2.1.200 oder später.3240Erscheint in `/config` als **Question auto-continue timeout**, das diesen Schlüssel in die Benutzereinstellungen schreibt; Claude Code blendet die Zeile aus, solange verwaltete Einstellungen oder das Flag `--settings` den Schlüssel setzen. Erfordert Claude Code v2.1.200 oder höher.

3131 3241 

3132<h3 id="autocontinueatusagelimit">3242<h3 id="autocontinueatusagelimit">

3133 `autoContinueAtUsageLimit`3243 `autoContinueAtUsageLimit`

3134</h3>3244</h3>

3135 3245 

3136Nachdem ein claude.ai-Nutzungslimit Ihre Sitzung stoppt, warten Sie in der offenen Sitzung und fahren Sie die Aufgabe nach dem Zurücksetzen automatisch fort. Siehe [Automatisches Fortsetzen ausschalten](/docs/de/interactive-mode#turn-automatic-continue-off). Erfordert Claude Code v2.1.234 oder später.3246Nachdem ein claude.ai-Nutzungslimit Ihre Sitzung angehalten hat, in der geöffneten Sitzung warten und die Aufgabe nach dem Zurücksetzen automatisch fortsetzen. Siehe [Automatisches Fortsetzen ausschalten](/docs/de/interactive-mode#turn-automatic-continue-off). Erfordert Claude Code v2.1.234 oder höher.

3137 3247 

3138* **Bereich**: [`Benutzer oder verwaltet`](#scopes). Lesen Sie aus Benutzereinstellungen, `--settings` und verwalteten Einstellungen nur. Wenn keiner dieser Einstellungen den Schlüssel setzt, schaltet eine Projekt- oder lokale Einstellungsdatei, die ihn setzt, die Funktion aus, anstatt ignoriert zu werden.3248* **Geltungsbereich**: [`User or managed`](#scopes). Wird nur aus den Benutzereinstellungen, `--settings` und verwalteten Einstellungen gelesen. Wenn keine davon den Schlüssel setzt, schaltet eine Projekt- oder lokale Einstellungsdatei, die ihn setzt, die Funktion aus, statt ignoriert zu werden.

3139* **Typ**: Boolean3249* **Typ**: Boolean

3140 * `true`: Nachdem ein claude.ai-Nutzungslimit Ihre Sitzung stoppt, wartet Claude Code in der offenen Sitzung und setzt die Aufgabe nach dem Zurücksetzen automatisch fort3250 * `true`: Nachdem ein claude.ai-Nutzungslimit Ihre Sitzung angehalten hat, wartet Claude Code in der geöffneten Sitzung und setzt die Aufgabe nach dem Zurücksetzen automatisch fort

3141 * `false`: Claude Code startet das Warten nicht von selbst. Sie können immer noch [ein Warten selbst starten](/docs/de/interactive-mode#start-a-wait-yourself) aus dem Menü der Nutzungslimit-Optionen3251 * `false`: Claude Code startet das Warten nicht von selbst. Sie können [das Warten weiterhin selbst starten](/docs/de/interactive-mode#start-a-wait-yourself), und zwar über das Optionsmenü für Nutzungslimits

3142* **Standard**: `true`3252* **Standard**: `true`

3143 3253 

3144```json settings.json theme={null}3254```json settings.json theme={null}


3147}3257}

3148```3258```

3149 3259 

3150Erscheint in `/config` als **Automatisch bei Nutzungslimit fortsetzen**, das diesen Schlüssel in Benutzereinstellungen schreibt; Claude Code blendet die Zeile aus, während verwaltete Einstellungen oder das Flag `--settings` den Schlüssel setzen.3260Erscheint in `/config` als **Continue automatically at usage limit**, das diesen Schlüssel in die Benutzereinstellungen schreibt; Claude Code blendet die Zeile aus, solange verwaltete Einstellungen oder das Flag `--settings` den Schlüssel setzen.

3151 3261 

3152<h3 id="autoscrollenabled">3262<h3 id="autoscrollenabled">

3153 `autoScrollEnabled`3263 `autoScrollEnabled`

3154</h3>3264</h3>

3155 3265 

3156Folgen Sie neuer Ausgabe zum unteren Ende des Gesprächs in [Vollbilddarstellung](/docs/de/fullscreen). Schalten Sie es aus, um dort zu bleiben, wo Sie gescrollt haben, während Claude weiterarbeitet; Berechtigungsaufforderungen werden immer noch in die Ansicht gescrollt.3266Neuer Ausgabe bis zum Ende der Konversation folgen, im [Vollbild-Rendering](/docs/de/fullscreen). Schalten Sie es aus, um an der Stelle zu bleiben, zu der Sie gescrollt haben, während Claude weiterarbeitet; Berechtigungsabfragen werden weiterhin in den sichtbaren Bereich gescrollt.

3157 3267 

3158* **Bereich**: [`Beliebige Datei`](#scopes)3268* **Geltungsbereich**: [`Any file`](#scopes)

3159* **Typ**: Boolean3269* **Typ**: Boolean

3160 * `true`: Das Gespräch folgt neuer Ausgabe zum unteren Ende3270 * `true`: Die Konversation folgt neuer Ausgabe bis zum Ende

3161 * `false`: Sie bleiben dort, wo Sie gescrollt haben, während Claude weiterarbeitet; Berechtigungsaufforderungen werden immer noch unter dem Transkript angezeigt3271 * `false`: Sie bleiben an der Stelle, zu der Sie gescrollt haben, während Claude weiterarbeitet; Berechtigungsabfragen erscheinen weiterhin unterhalb des Transkripts

3162* **Standard**: `true`3272* **Standard**: `true`

3163 3273 

3164```json settings.json theme={null}3274```json settings.json theme={null}


3167}3277}

3168```3278```

3169 3279 

3170Erscheint in `/config` als **Automatisches Scrollen**, wenn Vollbilddarstellung aktiviert ist, das diesen Schlüssel in Benutzereinstellungen schreibt.3280Erscheint in `/config` als **Auto-scroll**, wenn das Vollbild-Rendering aktiv ist, und schreibt diesen Schlüssel in die Benutzereinstellungen.

3171 3281 

3172<h3 id="axscreenreader">3282<h3 id="axscreenreader">

3173 `axScreenReader`3283 `axScreenReader`

3174</h3>3284</h3>

3175 3285 

3176Rendern Sie bildschirmleserfreundliche Ausgabe: flacher Text ohne dekorative Rahmen oder Animationen. Der Bildschirmlesermodus verwendet den klassischen Renderer, daher hat die Einstellung `tui` keine Auswirkung, während er aktiv ist; angehängte [Hintergrundsitzungen](/docs/de/agent-view) werden immer noch im Vollbild gerendert.3286Screenreader-freundliche Ausgabe rendern: einfacher Text ohne dekorative Rahmen oder Animationen. Der Screenreader-Modus verwendet den klassischen Renderer, daher hat die Einstellung `tui` keine Wirkung, solange er aktiv ist; angehängte [Hintergrundsitzungen](/docs/de/agent-view) werden weiterhin im Vollbild gerendert.

3177 3287 

3178* **Bereich**: [`Beliebige Datei`](#scopes)3288* **Geltungsbereich**: [`Any file`](#scopes)

3179* **Typ**: Boolean3289* **Typ**: Boolean

3180 * `true`: Claude Code rendert flachen Text ohne dekorative Rahmen oder Animationen mit dem klassischen Renderer3290 * `true`: Claude Code rendert einfachen Text ohne dekorative Rahmen oder Animationen und verwendet den klassischen Renderer

3181 * `false`: Claude Code rendert normal3291 * `false`: Claude Code rendert normal

3182* **Standard**: nicht gesetzt, daher ist der Bildschirmlesermodus aus3292* **Standard**: nicht gesetzt, daher ist der Screenreader-Modus aus

3183* **Sitzungsübergreifende Außerkraftsetzungen**: [`--ax-screen-reader`](/docs/de/cli-reference#cli-flags) hat Vorrang vor [`CLAUDE_AX_SCREEN_READER`](/docs/de/env-vars), und beide haben Vorrang vor diesem Schlüssel für eine Sitzung3293* **Überschreibungen pro Sitzung**: [`--ax-screen-reader`](/docs/de/cli-reference#cli-flags) hat Vorrang vor [`CLAUDE_AX_SCREEN_READER`](/docs/de/env-vars), und beide haben für eine Sitzung Vorrang vor diesem Schlüssel

3184 3294 

3185```json settings.json theme={null}3295```json settings.json theme={null}

3186{3296{


3192 `bashEditDiffEnabled`3302 `bashEditDiffEnabled`

3193</h3>3303</h3>

3194 3304 

3195Wählen Sie, ob Claude Code die Dateien aufzeichnet, die ein Bash-Befehl in einem Git-Repository ändert. Wenn es sie aufzeichnet, sehen Sie ihren Diff im Terminal nach dem Befehl, und Ihre [PostToolUse Bash Hooks](/docs/de/hooks#bash) erhalten die Liste der geänderten Dateien.3305Legen Sie fest, ob Claude Code aufzeichnet, welche Dateien sich in einem Git-Repository geändert haben, während ein Bash-Befehl läuft. Wenn es sie aufzeichnet, sehen Sie nach dem Befehl deren Diff im Terminal, und Ihre [PostToolUse-Bash-Hooks](/docs/de/hooks#bash) erhalten die Liste der geänderten Dateien.

3196 3306 

3197Eine aufgelistete Datei ist nicht immer eine, die der Befehl geändert hat. Eine Änderung, die ein anderes Programm oder ein anderer Bash-Aufruf vorgenommen hat, während der Befehl lief, kann dort auch erscheinen.3307Eine aufgeführte Datei ist nicht immer eine, die der Befehl geändert hat. Auch eine Änderung, die ein anderes Programm oder ein anderer Bash-Aufruf vorgenommen hat, während der Befehl lief, kann dort erscheinen.

3198 3308 

3199Setzen Sie den Schlüssel auf `true`, um sie in jedem Berechtigungsmodus aufzuzeichnen. Erfordert Claude Code v2.1.269 oder später.3309Setzen Sie den Schlüssel auf `true`, um sie in jedem Berechtigungsmodus aufzuzeichnen. Erfordert Claude Code v2.1.269 oder höher.

3200 3310 

3201* **Bereich**: [`Benutzer oder verwaltet`](#scopes). Ein `true` zählt nur aus Ihren Benutzereinstellungen, JSON, das mit `--settings` übergeben wird, oder [verwalteten Einstellungen](/docs/de/managed-settings), daher kann ein `true` in der `.claude/settings.json` oder `.claude/settings.local.json` eines Repositories die Aufzeichnung nicht einschalten. Ein `false` in einer der Repository-Dateien schaltet es immer noch aus, es sei denn, eine [höher priorisierte](/docs/de/settings#settings-precedence) Datei setzt `true`.3311* **Geltungsbereich**: [`User or managed`](#scopes). Ein `true` zählt nur aus Ihren Benutzereinstellungen, aus mit `--settings` übergebenem JSON oder aus [verwalteten Einstellungen](/docs/de/managed-settings), daher kann ein `true` in der `.claude/settings.json` oder `.claude/settings.local.json` eines Repositorys die Aufzeichnung nicht einschalten. Ein `false` in einer der beiden Repository-Dateien schaltet sie dennoch aus, es sei denn, eine Datei mit [höherem Vorrang](/docs/de/settings#settings-precedence) setzt `true`.

3202* **Typ**: Boolean3312* **Typ**: Boolean

3203* **Standard**: nicht gesetzt, daher zeichnet Claude Code Änderungen im Auto-Modus und `bypassPermissions`-Modus auf, wenn es Claude anweist, Dateien über Bash zu bearbeiten3313* **Standard**: nicht gesetzt, daher zeichnet Claude Code Änderungen im Auto-Modus und im Modus `bypassPermissions` auf, wenn es Claude anweist, Dateien über Bash zu bearbeiten

3204* **Sitzungsübergreifende Außerkraftsetzungen**: [`CLAUDE_CODE_BASH_EDIT_DIFF`](/docs/de/env-vars) hat Vorrang vor diesem Schlüssel für eine Sitzung3314* **Überschreibungen pro Sitzung**: [`CLAUDE_CODE_BASH_EDIT_DIFF`](/docs/de/env-vars) hat für eine Sitzung Vorrang vor diesem Schlüssel

3205 3315 

3206```json settings.json theme={null}3316```json settings.json theme={null}

3207{3317{


3213 `companyAnnouncements`3323 `companyAnnouncements`

3214</h3>3324</h3>

3215 3325 

3216Zeigen Sie die Ankündigungen Ihrer Organisation den Benutzern beim Start an. Wenn Sie mehr als eine auflisten, wählt Claude Code für jede Sitzung zufällig eine aus; beim allerersten Start eines Benutzers wird der erste Eintrag angezeigt.3326Den Benutzern beim Start die Ankündigungen Ihrer Organisation anzeigen. Wenn Sie mehr als eine auflisten, wählt Claude Code für jede Sitzung eine zufällig aus; beim allerersten Start einer Person zeigt es den ersten Eintrag.

3217 3327 

3218* **Bereich**: [`Beliebige Datei`](#scopes)3328* **Geltungsbereich**: [`Any file`](#scopes)

3219* **Typ**: Array von Strings3329* **Typ**: Array von Strings

3220* **Standard**: nicht gesetzt, daher wird keine Ankündigung angezeigt3330* **Standard**: nicht gesetzt, daher wird keine Ankündigung angezeigt

3221 3331 


3231 `defaultShell`3341 `defaultShell`

3232</h3>3342</h3>

3233 3343 

3234Wählen Sie, ob Bash oder PowerShell die Shell-Befehle ausführt, die Sie mit dem Präfix [`!`](/docs/de/interactive-mode#shell-mode-with-prefix) im Eingabefeld eingeben, die Claude Code direkt ausführt und zur Sitzung hinzufügt.3344Legen Sie fest, ob Bash oder PowerShell die Shell-Befehle ausführt, die Sie mit dem [`!`-Präfix](/docs/de/interactive-mode#shell-mode-with-prefix) in das Eingabefeld eingeben, also die Befehle, die Claude Code direkt ausführt und der Sitzung hinzufügt.

3235 3345 

3236`"powershell"` funktioniert nur, wenn das [PowerShell-Tool](/docs/de/tools-reference#powershell-tool) aktiviert ist. Das Tool ist standardmäßig unter Windows ohne Git Bash aktiviert und unter Windows mit Git Bash für claude.ai- und Console-Konten. In Amazon Bedrock-, Google Cloud Agent Platform- und Microsoft Foundry-Sitzungen sowie unter macOS, Linux und WSL setzen Sie `CLAUDE_CODE_USE_POWERSHELL_TOOL=1`, um das Tool zu aktivieren. Setzen Sie diese Variable auf `0`, um das Tool auszuschalten.3346`"powershell"` funktioniert nur, solange das [PowerShell-Tool](/docs/de/tools-reference#powershell-tool) eingeschaltet ist. Das Tool ist standardmäßig unter Windows ohne Git Bash eingeschaltet sowie unter Windows mit Git Bash für claude.ai- und Console-Konten. In Sitzungen mit Amazon Bedrock, Google Clouds Agent Platform und Microsoft Foundry sowie unter macOS, Linux und WSL setzen Sie `CLAUDE_CODE_USE_POWERSHELL_TOOL=1`, um das Tool einzuschalten. Setzen Sie diese Variable auf `0`, um das Tool auszuschalten.

3237 3347 

3238* **Bereich**: [`Beliebige Datei`](#scopes)3348* **Geltungsbereich**: [`Any file`](#scopes)

3239* **Typ**: String, einer von:3349* **Typ**: String, einer von:

3240 * `"bash"`: Claude Code führt Ihre `!`-Befehle in Bash aus3350 * `"bash"`: Claude Code führt Ihre `!`-Befehle in Bash aus

3241 * `"powershell"`: Claude Code führt Ihre `!`-Befehle in PowerShell aus3351 * `"powershell"`: Claude Code führt Ihre `!`-Befehle in PowerShell aus

3242* **Standard**: `"bash"` oder `"powershell"` unter Windows, wenn Bash nicht verfügbar ist3352* **Standard**: `"bash"`, oder `"powershell"` unter Windows, wenn Bash nicht verfügbar ist

3243 3353 

3244```json settings.json theme={null}3354```json settings.json theme={null}

3245{3355{


3247}3357}

3248```3358```

3249 3359 

3250Wenn die Shell, die Sie benennen, nicht verfügbar ist, verwendet Claude Code die andere: `"powershell"` fällt auf Bash zurück, wenn das PowerShell-Tool aus ist, und `"bash"` fällt auf PowerShell zurück, wenn Bash nicht installiert ist.3360Wenn die angegebene Shell nicht verfügbar ist, verwendet Claude Code die jeweils andere: `"powershell"` fällt auf Bash zurück, wenn das PowerShell-Tool ausgeschaltet ist, und `"bash"` fällt auf PowerShell zurück, wenn Bash nicht installiert ist.

3251 3361 

3252<h3 id="dialogexpiry">3362<h3 id="dialogexpiry">

3253 `dialogExpiry`3363 `dialogExpiry`

3254</h3>3364</h3>

3255 3365 

3256Legen Sie die Frist für Dialoge fest, die Claude Code [an einen Remote-Client weiterleitet](/docs/de/remote-control#limitations), wie einen Remote Control oder SDK-Host, und für den Genehmigungsdialog für eine [gehaltene sitzungsübergreifende Nachricht](/docs/de/cross-session-messaging#control-inbound-messages). In Claude Code v2.1.236 oder später begrenzt die gleiche Frist die Aufforderung zur Zustimmung für Fable-Nutzungsguthaben in der Mitte der Sitzung]\(/de/model-config#fable-and-usage-credits) in einer Sitzung, in der möglicherweise niemand am Terminal ist. Wenn vor der Frist keine Antwort eintrifft, bricht Claude Code den Dialog ab und fährt mit seinem Standardwert ohne Aktion fort. Erfordert Claude Code v2.1.224 oder später.3366Legen Sie die Frist für Dialoge fest, die Claude Code [an einen Remote-Client weiterleitet](/docs/de/remote-control#limitations), etwa einen Remote-Control- oder SDK-Host, sowie für den Genehmigungsdialog einer [zurückgehaltenen sitzungsübergreifenden Nachricht](/docs/de/cross-session-messaging#control-inbound-messages). Ab Claude Code v2.1.236 begrenzt dieselbe Frist auch die während der Sitzung erscheinende [Zustimmungsabfrage für Fable-Nutzungsguthaben](/docs/de/model-config#fable-and-usage-credits) in einer Sitzung, in der möglicherweise niemand am Terminal ist. Wenn vor Ablauf der Frist keine Antwort eingeht, bricht Claude Code den Dialog ab und fährt mit seinem Standard ohne Aktion fort. Erfordert Claude Code v2.1.224 oder höher.

3257 3367 

3258* **Bereich**: [`Benutzer oder verwaltet`](#scopes)3368* **Geltungsbereich**: [`User or managed`](#scopes)

3259* **Typ**: String, einer von `"60s"`, `"5m"`, `"10m"` oder `"never"`, das die Frist deaktiviert3369* **Typ**: String, einer von `"60s"`, `"5m"`, `"10m"` oder `"never"`, was die Frist deaktiviert

3260* **Standard**: `"5m"`3370* **Standard**: `"5m"`

3261* **Sitzungsübergreifende Außerkraftsetzungen**: [`CLAUDE_CODE_USER_DIALOG_TIMEOUT_MS`](/docs/de/env-vars) hat Vorrang vor diesem Schlüssel für eine Sitzung3371* **Überschreibungen pro Sitzung**: [`CLAUDE_CODE_USER_DIALOG_TIMEOUT_MS`](/docs/de/env-vars) hat für eine Sitzung Vorrang vor diesem Schlüssel

3262 3372 

3263```json settings.json theme={null}3373```json settings.json theme={null}

3264{3374{


3266}3376}

3267```3377```

3268 3378 

3269Berechtigungsaufforderungen und [`AskUserQuestion`](/docs/de/tools-reference#askuserquestion-tool-behavior)-Fragen verwenden ihre eigenen Abläufe und werden nicht durch diese Frist geregelt. Erscheint in `/config` als **Dialog-Ablauf**, das diesen Schlüssel in Benutzereinstellungen schreibt; die Zeile erfordert Claude Code v2.1.232 oder später, und Claude Code blendet sie aus, während verwaltete Einstellungen oder das Flag `--settings` den Schlüssel setzen.3379Berechtigungsabfragen und [`AskUserQuestion`](/docs/de/tools-reference#askuserquestion-tool-behavior)-Fragen verwenden eigene Abläufe und unterliegen dieser Frist nicht. Erscheint in `/config` als **Dialog expiry**, das diesen Schlüssel in die Benutzereinstellungen schreibt; die Zeile erfordert Claude Code v2.1.232 oder höher, und Claude Code blendet sie aus, solange verwaltete Einstellungen oder das Flag `--settings` den Schlüssel setzen.

3270 3380 

3271<h3 id="editormode">3381<h3 id="editormode">

3272 `editorMode`3382 `editorMode`

3273</h3>3383</h3>

3274 3384 

3275Wählen Sie den Tastenbindungsmodus für die Eingabeaufforderung.3385Wählen Sie den Tastenbelegungsmodus für die Eingabeaufforderung.

3276 3386 

3277* **Bereich**: [`Beliebige Datei`](#scopes)3387* **Geltungsbereich**: [`Any file`](#scopes)

3278* **Typ**: String, einer von:3388* **Typ**: String, einer von:

3279 * `"normal"`: Standard-Tastenbindungen in der Eingabeaufforderung3389 * `"normal"`: Standard-Tastenbelegungen in der Prompt-Eingabe

3280 * `"vim"`: Vim-ähnliche Bearbeitung mit NORMAL-, INSERT- und VISUAL-Modi3390 * `"vim"`: Bearbeitung im vim-Stil mit den Modi NORMAL, INSERT und VISUAL

3281* **Standard**: `"normal"`3391* **Standard**: `"normal"`

3282 3392 

3283```json settings.json theme={null}3393```json settings.json theme={null}


3286}3396}

3287```3397```

3288 3398 

3289Erscheint in `/config` als **Editor-Modus**, das diesen Schlüssel in Benutzereinstellungen schreibt.3399Erscheint in `/config` als **Editor mode**, das diesen Schlüssel in die Benutzereinstellungen schreibt.

3290 3400 

3291<h3 id="emojicompletionenabled">3401<h3 id="emojicompletionenabled">

3292 `emojiCompletionEnabled`3402 `emojiCompletionEnabled`

3293</h3>3403</h3>

3294 3404 

3295Zeigen Sie Emoji-Vorschläge an, wenn Sie `:` plus einen Shortcode in der Eingabeaufforderung eingeben, und ersetzen Sie einen abgeschlossenen Shortcode wie `:heart:` durch sein Emoji. Setzen Sie es auf `false`, um beides auszuschalten.3405Emoji-Vorschläge anzeigen, wenn Sie in der Prompt-Eingabe `:` plus einen Shortcode eingeben, und einen vollständigen Shortcode wie `:heart:` durch sein Emoji ersetzen. Setzen Sie den Schlüssel auf `false`, um beides auszuschalten.

3296 3406 

3297* **Bereich**: [`Beliebige Datei`](#scopes)3407* **Geltungsbereich**: [`Any file`](#scopes)

3298* **Typ**: Boolean3408* **Typ**: Boolean

3299 * `true`: Claude Code zeigt Emoji-Vorschläge nach `:` an und ersetzt einen abgeschlossenen Shortcode durch sein Emoji3409 * `true`: Claude Code zeigt nach `:` Emoji-Vorschläge an und ersetzt einen vollständigen Shortcode durch sein Emoji

3300 * `false`: Claude Code schlägt weder Emoji vor noch ersetzt Shortcodes3410 * `false`: Claude Code schlägt weder Emojis vor noch ersetzt es Shortcodes

3301* **Standard**: `true`3411* **Standard**: `true`

3302 3412 

3303```json settings.json theme={null}3413```json settings.json theme={null}


3306}3416}

3307```3417```

3308 3418 

3309Siehe [Emoji-Shortcodes](/docs/de/interactive-mode#emoji-shortcodes). Erfordert Claude Code v2.1.217 oder später.3419Siehe [Emoji-Shortcodes](/docs/de/interactive-mode#emoji-shortcodes). Erfordert Claude Code v2.1.217 oder höher.

3310 3420 

3311<span id="file-suggestion-settings" />3421<span id="file-suggestion-settings" />

3312 3422 


3314 `fileSuggestion`3424 `fileSuggestion`

3315</h3>3425</h3>

3316 3426 

3317Führen Sie Ihren eigenen Befehl aus, um `@`-Dateipfad-Autovervollständigung anstelle des integrierten Dateivorschlags bereitzustellen. Der integrierte Vorschlag verwendet schnelle Dateisystem-Durchquerung; ein großes Monorepo könnte von projektspezifischer Indizierung wie einem vordefinierten Dateiindex profitieren.3427Einen eigenen Befehl ausführen, um die `@`-Autovervollständigung für Dateipfade anstelle der integrierten Dateivorschläge bereitzustellen. Die integrierten Vorschläge verwenden eine schnelle Dateisystemdurchsuchung; bei einem großen Monorepo kann eine projektspezifische Indizierung, etwa ein vorab erstellter Dateiindex, besser geeignet sein.

3318 3428 

3319* **Bereich**: [`Beliebige Datei`](#scopes). Unter den [Statuszeilen- und Dateivorschlag-Gates](#status-line-and-file-suggestion-gates) schaltet Claude Code den Befehl aus oder führt nur einen verwalteten Wert aus und überspringt Ihren ohne Warnung.3429* **Geltungsbereich**: [`Any file`](#scopes). Unter den [Sperren für Statuszeile und Dateivorschläge](#status-line-and-file-suggestion-gates) schaltet Claude Code den Befehl aus oder führt nur einen verwalteten Wert aus und überspringt Ihren ohne Warnung.

3320* **Typ**: Objekt mit `type`, immer `"command"`, und `command`, dem auszuführenden Shell-Befehl3430* **Typ**: Objekt mit `type`, immer `"command"`, und `command`, dem auszuführenden Shell-Befehl

3321* **Standard**: nicht gesetzt, daher verwendet Claude Code den integrierten Dateivorschlag3431* **Standard**: nicht gesetzt, daher verwendet Claude Code die integrierten Dateivorschläge

3322 3432 

3323```json settings.json theme={null}3433```json settings.json theme={null}

3324{3434{


3329}3439}

3330```3440```

3331 3441 

3332Nachdem Sie dies gespeichert haben, geben Sie `@` gefolgt von Teil eines Pfads in der Eingabeaufforderung ein: Die Vorschläge stammen aus der Ausgabe Ihres Befehls.3442Nachdem Sie dies gespeichert haben, geben Sie im Prompt `@` gefolgt von einem Teil eines Pfads ein: Die Vorschläge stammen aus der Ausgabe Ihres Befehls.

3333 3443 

3334<h4 id="command-input-and-output">3444<h4 id="command-input-and-output">

3335 Befehlseingabe und -ausgabe3445 Ein- und Ausgabe des Befehls

3336</h4>3446</h4>

3337 3447 

3338Claude Code führt den Befehl mit den gleichen Umgebungsvariablen wie [Hooks](/docs/de/hooks) aus, einschließlich `CLAUDE_PROJECT_DIR`, und stoppt das Warten nach fünf Sekunden. Der Befehl empfängt JSON auf stdin mit einem `query`-Feld, das enthält, was Sie bisher eingegeben haben:3448Claude Code führt den Befehl mit denselben Umgebungsvariablen wie [Hooks](/docs/de/hooks) aus, einschließlich `CLAUDE_PROJECT_DIR`, und hört nach fünf Sekunden auf zu warten. Der Befehl erhält auf stdin JSON mit einem Feld `query`, das enthält, was Sie bisher eingegeben haben:

3339 3449 

3340```json theme={null}3450```json theme={null}

3341{"query": "src/comp"}3451{"query": "src/comp"}

3342```3452```

3343 3453 

3344Geben Sie zeilengetrennte Dateipfade auf stdout aus. Claude Code zeigt höchstens 15:3454Geben Sie durch Zeilenumbrüche getrennte Dateipfade auf stdout aus. Claude Code zeigt höchstens 15 an:

3345 3455 

3346```text theme={null}3456```text theme={null}

3347src/components/Button.tsx3457src/components/Button.tsx


3349src/components/Form.tsx3459src/components/Form.tsx

3350```3460```

3351 3461 

3352Das folgende Skript liest die Abfrage und übergibt sie an einen Repository-Dateiindex:3462Das folgende Skript liest die Abfrage und übergibt sie an einen Dateiindex des Repositorys:

3353 3463 

3354```bash theme={null}3464```bash theme={null}

3355#!/bin/bash3465#!/bin/bash


3364 `footerLinksRegexes`3474 `footerLinksRegexes`

3365</h3>3475</h3>

3366 3476 

3367Rendern Sie zusätzliche anklickbare Abzeichen in der Fußzeile unter dem Eingabefeld, wenn ein Regex die Ausgabe einer Runde abgleicht: Tool-Ergebnisse, einschließlich Dateiinhalte und abgerufene Seiten, und Claudes eigene Antworten. Verwenden Sie es, um IDs, die von Projekt-CLIs wie Review-Tools und Issue-Trackern gedruckt werden, in Sitzungslinks umzuwandeln.3477Zusätzliche anklickbare Badges in der Fußzeile unterhalb des Eingabefelds rendern, wenn ein regulärer Ausdruck auf die Ausgabe eines Turns passt: Tool-Ergebnisse, einschließlich Dateiinhalten und abgerufener Seiten, sowie Claudes eigene Antworten. Verwenden Sie dies, um IDs, die von Projekt-CLIs wie Review-Tools und Issue-Trackern ausgegeben werden, in Sitzungslinks umzuwandeln.

3368 3478 

3369* **Bereich**: [`Benutzer oder verwaltet`](#scopes)3479* **Geltungsbereich**: [`User or managed`](#scopes)

3370* **Typ**: Array von Objekten, jedes mit `type` auf `"regex"` gesetzt, einem `pattern`-Regex, einer `url`-Vorlage und einem optionalen `label`; `{name}`-Platzhalter in `url` und `label` werden aus benannten Erfassungsgruppen in `pattern` gefüllt3480* **Typ**: Array von Objekten, jeweils mit `type` auf `"regex"` gesetzt, einem regulären Ausdruck `pattern`, einer `url`-Vorlage und einem optionalen `label`; `{name}`-Platzhalter in `url` und `label` werden aus benannten Erfassungsgruppen in `pattern` befüllt

3371* **Standard**: nicht gesetzt, daher werden keine Abzeichen gerendert3481* **Standard**: nicht gesetzt, daher werden keine Badges gerendert

3372 3482 

3373Dieses Beispiel gleicht Issue-Schlüssel wie `PROJ-1234` ab und erstellt jeden Link aus dem erfassten Schlüssel:3483Dieses Beispiel erkennt Issue-Schlüssel wie `PROJ-1234` und erstellt jeden Link aus dem erfassten Schlüssel:

3374 3484 

3375```json settings.json theme={null}3485```json settings.json theme={null}

3376{3486{


3385}3495}

3386```3496```

3387 3497 

3388Mit dieser Konfiguration wird, wenn `PROJ-1234` in einem Tool-Ergebnis oder in Claudes Antwort erscheint, ein `PROJ-1234`-Abzeichen in der Fußzeile angezeigt, das auf `https://issues.example.com/browse/PROJ-1234` verlinkt.3498Wenn dies konfiguriert ist und `PROJ-1234` in einem Tool-Ergebnis oder in Claudes Antwort erscheint, erscheint in der Fußzeile ein Badge `PROJ-1234`, das auf `https://issues.example.com/browse/PROJ-1234` verlinkt.

3389 3499 

3390<h4 id="badge-constraints">3500<h4 id="badge-constraints">

3391 Abzeichen-Einschränkungen3501 Einschränkungen für Badges

3392</h4>3502</h4>

3393 3503 

3394Die URL, das Label und die Abzeichen-Anzahl jedes Eintrags sind wie folgt begrenzt:3504URL, Beschriftung und Badge-Anzahl jedes Eintrags sind wie folgt begrenzt:

3395 3505 

3396| Einschränkung | Verhalten |3506| Einschränkung | Verhalten |

3397| :- | :- |3507| :- | :- |

3398| URL-Ursprung | Erfasste Werte werden URL-codiert und die konstruierte URL muss den Ursprung der Vorlage teilen. Eine Erfassung kann ein Pfadsegment oder einen Abfragewert ausfüllen, kann aber nicht ändern, wohin der Link verweist |3508| URL-Ursprung | Erfasste Werte werden URL-kodiert, und die erstellte URL muss denselben literalen Ursprung wie die Vorlage haben. Eine Erfassung kann ein Pfadsegment oder einen Abfragewert füllen, aber nicht ändern, wohin der Link verweist |

3399| URL-Länge | Konstruierte URLs länger als 2048 Zeichen werden verworfen |3509| URL-Länge | Erstellte URLs mit mehr als 2048 Zeichen werden verworfen |

3400| URL-Schema | Muss `https`, `http` oder ein erkanntes Editor- oder Workspace-Deep-Link-Schema sein: `vscode`, `vscode-insiders`, `cursor`, `windsurf`, `zed`, `jetbrains`, `idea`, `slack`, `linear`, `notion`, `figma` |3510| URL-Schema | Muss `https`, `http` oder ein anerkanntes Deep-Link-Schema für Editoren oder Workspaces sein: `vscode`, `vscode-insiders`, `cursor`, `windsurf`, `zed`, `jetbrains`, `idea`, `slack`, `linear`, `notion`, `figma` |

3401| Label | Standardmäßig der abgeglichene Text und wird auf 28 Anzeigespalten gekürzt |3511| Beschriftung | Standardmäßig der übereinstimmende Text, gekürzt auf 28 Anzeigespalten |

3402| Abzeichen-Anzahl | Höchstens 5 Abzeichen werden gerendert. Das älteste wird durch neuere Übereinstimmungen verdrängt und `/clear` entfernt sie |3512| Badge-Anzahl | Höchstens 5 Badges werden gerendert. Das älteste wird durch neuere Treffer verdrängt, und `/clear` entfernt sie |

3403 3513 

3404Wenn eine Runde abgeschlossen ist, gleicht Claude Code jeden `pattern`-Regex des Eintrags gegen die Ausgabe der Runde im Hauptthread ab, daher blockiert ein langsamer Regex die Benutzeroberfläche, bis er fertig ist. Verschachtelte Quantoren wie `(a+)+$` können gegen bestimmte Eingaben exponentiell lange dauern und die Sitzung einfrieren, daher halten Sie jeden `pattern` linear und vermeiden Sie Verschachtelung von `+` oder `*`.3514Wenn ein Turn abgeschlossen ist, gleicht Claude Code den regulären Ausdruck `pattern` jedes Eintrags im Hauptthread mit der Ausgabe des Turns ab, daher blockiert ein langsamer regulärer Ausdruck die Oberfläche, bis er fertig ist. Verschachtelte Quantifizierer wie `(a+)+$` können bei bestimmten Eingaben exponentiell lange dauern und die Sitzung einfrieren, halten Sie daher jedes `pattern` linear und vermeiden Sie verschachtelte `+` oder `*`.

3405 3515 

3406Fußzeilen-Abzeichen werden neben einer [benutzerdefinierten Statuszeile](/docs/de/statusline) gerendert, wenn eine konfiguriert ist; keiner ersetzt den anderen. Verwenden Sie eine Statuszeile für eine skriptgesteuerte Zeile, die ihren eigenen Inhalt aus Sitzungsdaten berechnet, und Fußzeilen-Abzeichen, um IDs aus dem Gespräch in Links umzuwandeln, ohne ein Skript.3516Footer-Badges werden neben einer [benutzerdefinierten Statuszeile](/docs/de/statusline) gerendert, wenn eine konfiguriert ist; keines ersetzt das andere. Verwenden Sie eine Statuszeile für eine skriptgesteuerte Zeile, die ihren Inhalt selbst aus Sitzungsdaten berechnet, und Footer-Badges, um IDs aus der Konversation ohne Skript in Links umzuwandeln.

3407 3517 

3408<h3 id="keybindingflavor">3518<h3 id="keybindingflavor">

3409 `keybindingFlavor`3519 `keybindingFlavor`

3410</h3>3520</h3>

3411 3521 

3412<Warning>3522<Warning>

3413 Veraltet seit v2.1.261 und hat keine Auswirkung. Die Wort-Bearbeitungstasten der Eingabeaufforderung folgen immer [Readline-Konventionen](/docs/de/interactive-mode#make-ctrl-w-delete-back-to-whitespace), wie in Bash. Claude Code akzeptiert immer noch `keybindingFlavor`, daher bleibt eine Einstellungsdatei, die es setzt, gültig.3523 Seit v2.1.261 veraltet und ohne Wirkung. Die Tasten zur Wortbearbeitung im Prompt [folgen immer den readline-Konventionen](/docs/de/interactive-mode#make-ctrl-w-delete-back-to-whitespace), wie in Bash. Claude Code akzeptiert `keybindingFlavor` weiterhin, sodass eine Einstellungsdatei, die den Schlüssel setzt, gültig bleibt.

3414</Warning>3524</Warning>

3415 3525 

3416In v2.1.238 bis v2.1.260 machte das Setzen auf `"readline"` `Ctrl+W` zum Löschen zurück zum vorherigen Leerzeichen anstatt nur zum vorherigen Wort.3526In v2.1.238 bis v2.1.260 bewirkte der Wert `"readline"`, dass `Ctrl+W` bis zum vorherigen Leerraum löschte statt nur das vorherige Wort.

3417 3527 

3418* **Bereich**: [`Beliebige Datei`](#scopes)3528* **Geltungsbereich**: [`Any file`](#scopes)

3419* **Typ**: String, `"classic"` oder `"readline"`3529* **Typ**: String, `"classic"` oder `"readline"`

3420* **Standard**: nicht gesetzt3530* **Standard**: nicht gesetzt

3421 3531 


3423 `maxProseWidth`3533 `maxProseWidth`

3424</h3>3534</h3>

3425 3535 

3426Begrenzen Sie die Breite der Prosa in Claudes Antworten, damit Zeilen in einem breiten Terminal lesbar bleiben. Absätze, Überschriften, Listen und Blockzitate werden in dieser Anzahl von Spalten umgebrochen, während Tabellen und Code-Blöcke die volle Terminal-Breite behalten. Erfordert Claude Code v2.1.282 oder später.3536Die Breite des Fließtexts in Claudes Antworten begrenzen, damit Zeilen in einem breiten Terminal lesbar bleiben. Absätze, Überschriften, Listen und Blockzitate werden innerhalb dieser Anzahl von Spalten umbrochen, während Tabellen und Codeblöcke die volle Terminalbreite behalten. Erfordert Claude Code v2.1.282 oder höher.

3427 3537 

3428* **Bereich**: [`Beliebige Datei`](#scopes)3538* **Geltungsbereich**: [`Any file`](#scopes)

3429* **Typ**: Anzahl der Terminal-Spalten, eine ganze Zahl, Minimum `40`. Claude Code ignoriert jeden anderen Wert3539* **Typ**: Anzahl der Terminalspalten, eine ganze Zahl, mindestens `40`. Claude Code ignoriert jeden anderen Wert

3430* **Standard**: nicht gesetzt, daher wird Prosa am Terminal-Rand umgebrochen3540* **Standard**: nicht gesetzt, daher wird Fließtext am Rand des Terminals umbrochen

3431 3541 

3432```json settings.json theme={null}3542```json settings.json theme={null}

3433{3543{


3439 `prefersReducedMotion`3549 `prefersReducedMotion`

3440</h3>3550</h3>

3441 3551 

3442Reduzieren oder schalten Sie Schnittstellen-Animationen wie den Spinner, Shimmer und Flash-Effekte aus. Erscheint in `/config` als **Bewegung reduzieren**.3552Animationen der Oberfläche wie den Spinner sowie Schimmer- und Blitzeffekte reduzieren oder ausschalten. Erscheint in `/config` als **Reduce motion**.

3443 3553 

3444* **Bereich**: [`Beliebige Datei`](#scopes)3554* **Geltungsbereich**: [`Any file`](#scopes)

3445* **Typ**: Boolean3555* **Typ**: Boolean

3446 * `true`: Claude Code reduziert oder schaltet Schnittstellen-Animationen wie den Spinner, Shimmer und Flash-Effekte aus3556 * `true`: Claude Code reduziert Animationen der Oberfläche wie den Spinner sowie Schimmer- und Blitzeffekte oder schaltet sie aus

3447 * `false`: das gleiche wie nicht gesetzt; Claude Code zeigt seine Animationen3557 * `false`: wie nicht gesetzt; Claude Code zeigt seine Animationen

3448* **Standard**: `false`3558* **Standard**: `false`

3449 3559 

3450```json settings.json theme={null}3560```json settings.json theme={null}


3457 `promptSuggestionEnabled`3567 `promptSuggestionEnabled`

3458</h3>3568</h3>

3459 3569 

3460Zeigen Sie [Eingabeaufforderungs-Vorschläge](/docs/de/interactive-mode#prompt-suggestions) an oder verbergen Sie sie, die ausgegraut Vorhersagen, die in Ihrer Eingabeaufforderung erscheinen. Setzen Sie es auf `false` oder schalten Sie **Eingabeaufforderungs-Vorschläge** in `/config` aus, um sie zu verbergen.3570[Prompt-Vorschläge](/docs/de/interactive-mode#prompt-suggestions) anzeigen oder ausblenden, also die ausgegrauten Vorhersagen, die in Ihrer Prompt-Eingabe erscheinen. Setzen Sie den Schlüssel auf `false` oder schalten Sie **Prompt suggestions** in `/config` aus, um sie auszublenden.

3461 3571 

3462* **Bereich**: [`Beliebige Datei`](#scopes)3572* **Geltungsbereich**: [`Any file`](#scopes)

3463* **Typ**: Boolean3573* **Typ**: Boolean

3464 * `true`: Sie sehen Eingabeaufforderungs-Vorschläge in Ihrer Eingabeaufforderung3574 * `true`: Sie sehen Prompt-Vorschläge in Ihrer Prompt-Eingabe

3465 * `false`: Claude Code verbirgt Eingabeaufforderungs-Vorschläge3575 * `false`: Claude Code blendet Prompt-Vorschläge aus

3466* **Standard**: `true`3576* **Standard**: `true`

3467* **Sitzungsübergreifende Außerkraftsetzungen**: [`CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION`](/docs/de/env-vars) hat Vorrang vor diesem Schlüssel für eine Sitzung3577* **Überschreibungen pro Sitzung**: [`CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION`](/docs/de/env-vars) hat für eine Sitzung Vorrang vor diesem Schlüssel

3468 3578 

3469```json settings.json theme={null}3579```json settings.json theme={null}

3470{3580{


3472}3582}

3473```3583```

3474 3584 

3475Eingabeaufforderungs-Vorschläge benötigen ein claude.ai- oder Console-Konto mit aktivierter Telemetrie. In Amazon Bedrock, Google Cloud Agent Platform und Microsoft Foundry oder mit ausgeschalteter Telemetrie, wie durch [`DISABLE_TELEMETRY`](/docs/de/env-vars), hat dieser Schlüssel keine Auswirkung und nur `CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION=1` schaltet sie ein.3585Prompt-Vorschläge erfordern ein claude.ai- oder Console-Konto mit eingeschalteter Telemetrie. Bei Amazon Bedrock, Google Clouds Agent Platform und Microsoft Foundry oder bei ausgeschalteter Telemetrie, etwa durch [`DISABLE_TELEMETRY`](/docs/de/env-vars), hat dieser Schlüssel keine Wirkung, und nur `CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION=1` schaltet sie ein.

3476 3586 

3477<h3 id="respectgitignore">3587<h3 id="respectgitignore">

3478 `respectGitignore`3588 `respectGitignore`

3479</h3>3589</h3>

3480 3590 

3481Kontrollieren Sie, ob der `@`-Datei-Picker Dateien auslässt, die `.gitignore`-Muster entsprechen. Erscheint in `/config` als **Respektiere .gitignore im Datei-Picker**.3591Steuern, ob die `@`-Dateiauswahl Dateien auslässt, die auf `.gitignore`-Muster passen. Erscheint in `/config` als **Respect .gitignore in file picker**.

3482 3592 

3483* **Bereich**: [`Beliebige Datei`](#scopes). Wenn keine Einstellungsdatei es setzt, fällt Claude Code auf `respectGitignore` in `~/.claude.json` zurück, das der `/config`-Toggle schreibt.3593* **Geltungsbereich**: [`Any file`](#scopes). Wenn keine Einstellungsdatei den Schlüssel setzt, greift Claude Code auf `respectGitignore` in `~/.claude.json` zurück, das vom Schalter in `/config` geschrieben wird.

3484* **Typ**: Boolean3594* **Typ**: Boolean

3485 * `true`: Der `@`-Datei-Picker lässt Dateien aus, die `.gitignore`-Muster entsprechen3595 * `true`: Die `@`-Dateiauswahl lässt Dateien aus, die auf `.gitignore`-Muster passen

3486 * `false`: Der `@`-Datei-Picker enthält Dateien, die `.gitignore`-Muster entsprechen3596 * `false`: Die `@`-Dateiauswahl schließt Dateien ein, die auf `.gitignore`-Muster passen

3487* **Standard**: `true`3597* **Standard**: `true`

3488 3598 

3489```json settings.json theme={null}3599```json settings.json theme={null}


3496 `respondToBashCommands`3606 `respondToBashCommands`

3497</h3>3607</h3>

3498 3608 

3499Wählen Sie, ob Claude antwortet, nachdem Sie einen Shell-Befehl mit dem Präfix [`!`](/docs/de/interactive-mode#shell-mode-with-prefix) im Eingabefeld ausführen. Standardmäßig fügt Claude Code die Ausgabe des Befehls zum Gespräch hinzu und Claude antwortet darauf. Setzen Sie diesen Schlüssel auf `false`, um die Ausgabe zum Kontext hinzuzufügen, ohne eine Antwort zu geben, damit Sie mehrere Befehle ausführen und zusammen darüber sprechen können.3609Legen Sie fest, ob Claude antwortet, nachdem Sie einen Shell-Befehl mit dem [`!`-Präfix](/docs/de/interactive-mode#shell-mode-with-prefix) im Eingabefeld ausgeführt haben. Standardmäßig fügt Claude Code die Ausgabe des Befehls der Konversation hinzu, und Claude antwortet darauf. Setzen Sie diesen Schlüssel auf `false`, um die Ausgabe ohne Antwort dem Kontext hinzuzufügen, sodass Sie mehrere Befehle ausführen und gemeinsam danach fragen können.

3500 3610 

3501* **Bereich**: [`Beliebige Datei`](#scopes)3611* **Geltungsbereich**: [`Any file`](#scopes)

3502* **Typ**: Boolean3612* **Typ**: Boolean

3503 * `true`: Claude Code fügt die Ausgabe des Befehls zum Gespräch hinzu und Claude antwortet darauf3613 * `true`: Claude Code fügt die Ausgabe des Befehls der Konversation hinzu, und Claude antwortet darauf

3504 * `false`: Claude Code fügt die Ausgabe zum Kontext hinzu, ohne eine Antwort zu geben3614 * `false`: Claude Code fügt die Ausgabe ohne Antwort dem Kontext hinzu

3505* **Standard**: `true`3615* **Standard**: `true`

3506 3616 

3507```json settings.json theme={null}3617```json settings.json theme={null}


3516 `showClearContextOnPlanAccept`3626 `showClearContextOnPlanAccept`

3517</h3>3627</h3>

3518 3628 

3519Wenn Claude einen Plan im [Plan-Modus](/docs/de/permission-modes#review-and-approve-a-plan) abschließt, zeigt es ein Genehmigungsmenü. Die Planung kann viel Kontext verwenden, daher fügt dieser Schlüssel eine erste Option zu diesem Menü hinzu, **Ja, Kontext löschen und …**, die den Plan genehmigt, den Gesprächskontext löscht und die Implementierung nur aus dem Plan startet. Der Rest des Labels benennt den Berechtigungsmodus, in dem die Sitzung fortgesetzt wird, und zeigt, wie viel Ihres Kontexts die Planung verwendet hat.3629Wenn Claude im [Plan-Modus](/docs/de/permission-modes#review-and-approve-a-plan) einen Plan fertigstellt, zeigt es ein Genehmigungsmenü an. Das Planen kann viel Kontext verbrauchen, daher fügt dieser Schlüssel dem Menü eine erste Option hinzu, **Yes, clear context and …**, die den Plan genehmigt, den Konversationskontext leert und die Implementierung allein auf Grundlage des Plans beginnt. Der Rest der Beschriftung nennt den Berechtigungsmodus, in dem die Sitzung fortgesetzt wird, und zeigt, wie viel Ihres Kontexts das Planen verbraucht hat.

3520 3630 

3521* **Bereich**: [`Beliebige Datei`](#scopes)3631* **Geltungsbereich**: [`Any file`](#scopes)

3522* **Typ**: Boolean3632* **Typ**: Boolean

3523 * `true`: Das Plan-Genehmigungsmenü erhält eine erste Option, **Ja, Kontext löschen und …**, die den Plan genehmigt und den Gesprächskontext löscht3633 * `true`: Das Menü zur Plan-Genehmigung erhält eine erste Option, **Yes, clear context and …**, die den Plan genehmigt und den Konversationskontext leert

3524 * `false`: Das Plan-Genehmigungsmenü zeigt keine Clear-Context-Option3634 * `false`: Das Menü zur Plan-Genehmigung zeigt keine Option zum Leeren des Kontexts

3525* **Standard**: `false`3635* **Standard**: `false`

3526 3636 

3527```json settings.json theme={null}3637```json settings.json theme={null}


3534 `showTurnDuration`3644 `showTurnDuration`

3535</h3>3645</h3>

3536 3646 

3537Zeigen Sie die Nachricht zur Rundendauer nach jeder Antwort an oder verbergen Sie sie, wie z. B. „Cooked for 1m 6s · done 6:05 PM". Die Uhr nach „done" zeigt, wann die Runde fertig war; [`timeFormat`](#timeformat) und [`timeZone`](#timezone) kontrollieren ihr Format und ihre Zone. Erscheint in `/config` als **Rundendauer anzeigen**.3647Die Meldung zur Turn-Dauer nach jeder Antwort anzeigen oder ausblenden, etwa „Cooked for 1m 6s · done 6:05 PM“. Die Uhrzeit nach „done“ zeigt, wann der Turn beendet wurde; [`timeFormat`](#timeformat) und [`timeZone`](#timezone) steuern ihr Format und ihre Zeitzone. Erscheint in `/config` als **Show turn duration**.

3538 3648 

3539* **Bereich**: [`Beliebige Datei`](#scopes). Ein Wert in `~/.claude.json` aus einer älteren Version gilt, wenn keine Einstellungsdatei es setzt.3649* **Geltungsbereich**: [`Any file`](#scopes). Ein Wert in `~/.claude.json` aus einer älteren Version gilt, wenn keine Einstellungsdatei den Schlüssel setzt.

3540* **Typ**: Boolean3650* **Typ**: Boolean

3541 * `true`: Sie sehen die Nachricht zur Rundendauer nach jeder Antwort3651 * `true`: Sie sehen nach jeder Antwort die Meldung zur Turn-Dauer

3542 * `false`: Claude Code verbirgt die Nachricht zur Rundendauer3652 * `false`: Claude Code blendet die Meldung zur Turn-Dauer aus

3543* **Standard**: `true`3653* **Standard**: `true`

3544 3654 

3545```json settings.json theme={null}3655```json settings.json theme={null}


3552 `spellcheck`3662 `spellcheck`

3553</h3>3663</h3>

3554 3664 

3555Unterstreichen Sie falsch geschriebene Wörter in der Eingabeaufforderung, während Sie eingeben, mit einem Rechtschreibprüfer, den Sie installieren. Claude Code prüft nur den Text im Eingabefeld. [Rechtschreibung während der Eingabe prüfen](/docs/de/interactive-mode#check-spelling-as-you-type) behandelt die Installation von aspell, hunspell oder ispell und was der Checker abdeckt. Erfordert Claude Code v2.1.235 oder später.3665Falsch geschriebene Wörter in der Prompt-Eingabe während der Eingabe unterstreichen, mithilfe einer von Ihnen installierten Rechtschreibprüfung. Claude Code prüft nur den Text im Eingabefeld. [Rechtschreibung während der Eingabe prüfen](/docs/de/interactive-mode#check-spelling-as-you-type) behandelt die Installation von aspell, hunspell oder ispell und was die Prüfung abdeckt. Erfordert Claude Code v2.1.235 oder höher.

3556 3666 

3557* **Bereich**: [`Benutzer oder verwaltet`](#scopes). Der Block aus der höchsten Ebene, die ihn setzt, gilt als Ganzes.3667* **Geltungsbereich**: [`User or managed`](#scopes). Der Block aus der höchsten Ebene, die den Schlüssel setzt, gilt als Ganzes.

3558* **Typ**: Objekt mit `enabled` (Boolean), `checker` (`"aspell"`, `"hunspell"`, `"ispell"` oder `"auto"`), `language` (String, an den Checker als sein Wörterbuchname übergeben) und `color` (String, ein Terminal-Farbname, `#rrggbb`, `rgb(r,g,b)`, `ansi256(n)` oder `ansi:<name>`)3668* **Typ**: Objekt mit `enabled` (Boolean), `checker` (`"aspell"`, `"hunspell"`, `"ispell"` oder `"auto"`), `language` (String, wird an die Prüfung als Name ihres Wörterbuchs übergeben) und `color` (String, ein Terminal-Farbname, `#rrggbb`, `rgb(r,g,b)`, `ansi256(n)` oder `ansi:<name>`)

3559* **Standard**: nicht gesetzt, daher ist die Rechtschreibprüfung aus; `checker` standardmäßig auf `"auto"`, das erste der drei auf `PATH` gefundenen; `language` standardmäßig auf das eigene Wörterbuch des Checkers; `color` standardmäßig auf die Fehlerfarbe des Designs3669* **Standard**: nicht gesetzt, daher ist die Rechtschreibprüfung aus; `checker` ist standardmäßig `"auto"`, also die erste der drei Prüfungen, die auf dem `PATH` gefunden wird; `language` ist standardmäßig das eigene Wörterbuch der Prüfung; `color` ist standardmäßig die Fehlerfarbe des Themes

3560 3670 

3561```json settings.json theme={null}3671```json settings.json theme={null}

3562{3672{


3568 `spinnerTipsEnabled`3678 `spinnerTipsEnabled`

3569</h3>3679</h3>

3570 3680 

3571Während Claude arbeitet, rotiert die Spinner-Zeile durch kurze Tipps zu Claude Code-Funktionen, wie z. B. „Use Plan Mode to prepare for a complex request before making changes. Press Shift+Tab twice to enable." Setzen Sie diesen Schlüssel auf `false`, um sie zu verbergen. Erscheint in `/config` als **Tipps anzeigen**.3681Während Claude arbeitet, zeigt die Spinner-Zeile abwechselnd kurze Tipps zu Funktionen von Claude Code an, etwa „Use Plan Mode to prepare for a complex request before making changes. Press Shift+Tab twice to enable.“ Setzen Sie diesen Schlüssel auf `false`, um sie auszublenden. Erscheint in `/config` als **Show tips**.

3572 3682 

3573* **Bereich**: [`Beliebige Datei`](#scopes)3683* **Geltungsbereich**: [`Any file`](#scopes)

3574* **Typ**: Boolean3684* **Typ**: Boolean

3575 * `true`: Sie sehen Tipps im Spinner, während Claude arbeitet3685 * `true`: Sie sehen Tipps im Spinner, während Claude arbeitet

3576 * `false`: Claude Code verbirgt Spinner-Tipps3686 * `false`: Claude Code blendet Spinner-Tipps aus

3577* **Standard**: `true`3687* **Standard**: `true`

3578 3688 

3579```json settings.json theme={null}3689```json settings.json theme={null}


3586 `spinnerTipsOverride`3696 `spinnerTipsOverride`

3587</h3>3697</h3>

3588 3698 

3589Fügen Sie Ihre eigenen Tipps zu den [Spinner-Tipps](#spinnertipsenabled) hinzu, die Claude Code zeigt, während Claude arbeitet, oder ersetzen Sie die integrierten Tipps durch Ihre. Claude Code setzt Ihre Tipps in die gleiche Rotation wie die integrierten: Es wählt den Tipp, der am längsten nicht angezeigt wurde, überspringt Tipps, die sich noch in ihrer Abklingzeit befinden, und bricht Unentschieden nach Priorität auf.3699Eigene Tipps zu den [Spinner-Tipps](#spinnertipsenabled) hinzufügen, die Claude Code anzeigt, während Claude arbeitet, oder die integrierten Tipps durch Ihre ersetzen. Claude Code nimmt Ihre Tipps in dieselbe Rotation auf wie die integrierten.

3590 3700 

3591Wenn Sie [`spinnerTipsEnabled`](#spinnertipsenabled) auf `false` setzen, verbirgt Claude Code alle Tipps, einschließlich Ihrer.3701Wenn Sie [`spinnerTipsEnabled`](#spinnertipsenabled) auf `false` setzen, blendet Claude Code alle Tipps aus, auch Ihre.

3592 3702 

3593* **Bereich**: [`Beliebige Datei`](#scopes). Claude Code berücksichtigt Tipp-Objekte, `tipsFile`, `label` und `excludeDefault` aus Benutzereinstellungen, dem Flag `--settings` und verwalteten Einstellungen; aus Projekt- und lokalen Einstellungen liest es nur einfache String-Tipps.3703* **Geltungsbereich**: [`Any file`](#scopes). Claude Code berücksichtigt Tipp-Objekte, `tipsFile`, `label` und `excludeDefault` aus den Benutzereinstellungen, dem Flag `--settings` und verwalteten Einstellungen; aus Projekt- und lokalen Einstellungen liest es nur einfache String-Tipps.

3594* **Typ**: Objekt mit `tips`, `tipsFile`, `label` und `excludeDefault`-Feldern, jeweils optional3704* **Typ**: Objekt mit den Feldern `tips`, `tipsFile`, `label` und `excludeDefault`, jeweils optional

3595* **Standard**: nicht gesetzt, daher zeigt Claude Code nur die integrierten Tipps3705* **Standard**: nicht gesetzt, daher zeigt Claude Code nur die integrierten Tipps

3596 3706 

3597Tipp-Objekte, `tipsFile`, `label` und die Regel in der Bereich-Zeile, dass Projekt- und lokale Einstellungen nur einfache Strings beitragen, erfordern Claude Code v2.1.247 oder später. In früheren Versionen gilt auch `excludeDefault` einer Projekt- oder lokalen Datei.3707Tipp-Objekte, `tipsFile`, `label` und die Regel aus der Zeile zum Geltungsbereich, dass Projekt- und lokale Einstellungen nur einfache Strings beitragen, erfordern Claude Code v2.1.247 oder höher.

3598 3708 

3599Jeder `tips`-Eintrag ist ein einfacher String oder ein Objekt mit diesen Feldern:3709Jeder `tips`-Eintrag ist ein einfacher String oder ein Objekt mit diesen Feldern:

3600 3710 

3601| Feld | Erforderlich | Beschreibung |3711| Feld | Erforderlich | Beschreibung |

3602| :- | :- | :- |3712| :- | :- | :- |

3603| `id` | Ja | Bis zu 64 Buchstaben, Ziffern, `.`, `_` oder `-`. Claude Code schlüsselt die Show-Historie des Tipps darauf auf, daher überlebt die Abklingzeit des Tipps eine Neuordnung der Liste. Von zwei Einträgen mit der gleichen ID verwendet Claude Code den ersten |3713| `id` | Ja | Bis zu 64 Buchstaben, Ziffern, `.`, `_` oder `-`. Claude Code verknüpft den Anzeigeverlauf des Tipps mit diesem Wert, sodass die Wartezeit des Tipps ein Umsortieren der Liste übersteht. Von zwei Einträgen mit derselben ID verwendet Claude Code den ersten |

3604| `text` | Ja | Der Tipp, eine Zeile mit bis zu 500 Zeichen. Claude Code entfernt ANSI-Escapes und Steuerzeichen und reduziert Leerzeichen |3714| `text` | Ja | Der Tipp, eine Zeile mit bis zu 500 Zeichen. Claude Code entfernt ANSI-Escape-Sequenzen und Steuerzeichen und fasst Leerraum zusammen |

3605| `cooldownSessions` | Nein | Sitzungen, die Claude Code wartet, bevor der Tipp erneut angezeigt wird, `0` bis `1000`, Standard `0` |3715| `cooldownSessions` | Nein | Anzahl der Sitzungen, die Claude Code wartet, bevor es den Tipp erneut anzeigt, `0` bis `1000`, Standard `0` |

3606| `priority` | Nein | Reihenfolge unter Tipps, die gleich lange nicht angezeigt wurden, höher zuerst, `-10` bis `10`, Standard `0` |3716| `priority` | Nein | Reihenfolge unter Tipps, die gleich lange nicht angezeigt wurden, höhere zuerst, `-10` bis `10`, Standard `0` |

3607 3717 

3608Claude Code liest einen einfachen String als Tipp mit diesen Standards und einer positionsbasierten ID, daher setzt sich seine Show-Historie zurück, wenn Sie die Liste neu ordnen. Geben Sie einem Tipp eine `id`, um seine Historie über Bearbeitungen hinweg zu behalten.3718Claude Code liest einen einfachen String als Tipp mit diesen Standardwerten und einer positionsbasierten ID, sodass sein Anzeigeverlauf zurückgesetzt wird, wenn Sie die Liste umsortieren. Geben Sie einem Tipp eine `id`, um seinen Verlauf über Bearbeitungen hinweg zu behalten.

3609 3719 

3610Claude Code liest höchstens 200 Tipps über `tips` und `tipsFile` und verwirft einen ungültigen Eintrag mit einer Debug-Warnung, anstatt die Einstellungsdatei abzulehnen.3720Claude Code liest höchstens 200 Tipps aus `tips` und `tipsFile` zusammen und verwirft einen ungültigen Eintrag mit einer Debug-Warnung, statt die Einstellungsdatei abzulehnen.

3611 3721 

3612Verwenden Sie die verbleibenden Felder, um eine Tipps-Datei zu benennen, das Präfix zu setzen und die integrierten Tipps zu verbergen:3722Verwenden Sie die übrigen Felder, um eine Tipp-Datei anzugeben, das Präfix festzulegen und die integrierten Tipps auszublenden:

3613 3723 

3614* `tipsFile`: ein absoluter oder `~/`-Pfad zu einer lokalen JSON-Datei mit einem Array der gleichen Einträge oder ein Objekt mit einem `tips`-Array, bis zu 256 KB. Claude Code liest die Datei einmal pro Prozess, daher lädt es Ihre Bearbeitungen beim nächsten Start. Sie können es nicht durch [server-verwaltete Einstellungen](/docs/de/server-managed-settings) setzen; stellen Sie inline `tips` dort bereit oder stellen Sie den Pfad in einer auf der Festplatte gespeicherten `managed-settings.json` bereit.3724* `tipsFile`: ein absoluter oder mit `~/` beginnender Pfad zu einer lokalen JSON-Datei, die ein Array derselben Einträge oder ein Objekt mit einem `tips`-Array enthält, bis zu 256 KB. Claude Code liest die Datei einmal pro Prozess, daher lädt es Ihre Änderungen beim nächsten Start. Sie können sie nicht über [serververwaltete Einstellungen](/docs/de/server-managed-settings) festlegen; stellen Sie dort Inline-`tips` bereit, oder stellen Sie den Pfad in einer `managed-settings.json` auf dem Datenträger bereit.

3615* `label`: das Präfix, das Claude Code vor Tipps aus Benutzer-, `--settings`- und verwalteten Einstellungen anzeigt, bis zu 40 Zeichen. Der Standard ist `Tip`, das gleiche Präfix wie die integrierten Tipps, und Tipps aus Projekt- und lokalen Einstellungen verwenden es immer.3725* `label`: das Präfix, das Claude Code vor Tipps aus Benutzereinstellungen, `--settings` und verwalteten Einstellungen anzeigt, bis zu 40 Zeichen. Der Standard ist `Tip`, dasselbe Präfix wie bei den integrierten Tipps, und Tipps aus Projekt- und lokalen Einstellungen verwenden es immer.

3616* `excludeDefault`: setzen Sie es auf `true`, um die integrierten Tipps zu verbergen und nur Ihre anzuzeigen. Wenn Claude Code keine Ihrer Tipps laden kann, z. B. weil `tipsFile` nicht existiert oder jeder Eintrag ungültig ist, behält es die integrierte Rotation anstelle einer leeren Spinner bei.3726* `excludeDefault`: Setzen Sie es auf `true`, um die integrierten Tipps auszublenden und nur Ihre anzuzeigen. Wenn Claude Code keinen Ihrer Tipps laden kann, zum Beispiel weil `tipsFile` nicht existiert oder jeder Eintrag ungültig ist, behält es die integrierte Rotation bei, statt einen leeren Spinner anzuzeigen.

3617 3727 

3618Wenn mehr als eine Einstellungsdatei den Schlüssel setzt, zeigt Claude Code Tipps aus allen und nimmt `tipsFile`, `label` und `excludeDefault` von welcher der verwalteten Einstellungen, dem Flag `--settings` und den Benutzereinstellungen die höchste Priorität hat, die jeweils setzt.3728Wenn mehr als eine Einstellungsdatei den Schlüssel setzt, zeigt Claude Code Tipps aus allen an und übernimmt `tipsFile`, `label` und `excludeDefault` jeweils aus derjenigen der verwalteten Einstellungen, des Flags `--settings` und der Benutzereinstellungen, die den höchsten Vorrang hat und das jeweilige Feld setzt.

3619 3729 

3620Dieses Beispiel in Ihren Benutzereinstellungen fügt einen einfachen String-Tipp und einen Objekt-Tipp zur Rotation unter dem Präfix `Acme tip` hinzu:3730Dieses Beispiel in Ihren Benutzereinstellungen fügt der Rotation einen einfachen String-Tipp und einen Objekt-Tipp unter dem Präfix `Acme tip` hinzu:

3621 3731 

3622```json settings.json theme={null}3732```json settings.json theme={null}

3623{3733{


3636}3746}

3637```3747```

3638 3748 

3639Jedes Feld im Beispiel ändert eine Sache daran, wie Claude Code die Tipps anzeigt:3749Jedes Feld im Beispiel ändert einen Aspekt daran, wie Claude Code die Tipps anzeigt:

3640 3750 

3641* `label`: Claude Code zeigt beide Tipps als `Acme tip: ...` anstelle von `Tip: ...`.3751* `label`: Claude Code zeigt beide Tipps als `Acme tip: ...` statt `Tip: ...` an.

3642* Der einfache String: Claude Code gibt ihm die Standards, daher kann er in der nächsten Sitzung erneut auftauchen.3752* Der einfache String: Claude Code gibt ihm die Standardwerte, daher kann er gleich in der nächsten Sitzung wieder erscheinen.

3643* `id`: Claude Code schlüsselt die Show-Historie des zweiten Tipps auf `gateway-errors` auf, daher gilt seine Abklingzeit immer noch nach dem Hinzufügen oder Neuordnen von Tipps.3753* `id`: Claude Code verknüpft den Anzeigeverlauf des zweiten Tipps mit `gateway-errors`, sodass seine Wartezeit weiterhin gilt, nachdem Sie Tipps hinzufügen oder umsortieren.

3644* `cooldownSessions`: Nachdem Claude Code den `gateway-errors`-Tipp angezeigt hat, zeigt es diesen Tipp nicht erneut an, bis fünf Sitzungen später.3754* `cooldownSessions`: Nachdem Claude Code den Tipp `gateway-errors` angezeigt hat, zeigt es ihn erst fünf Sitzungen später wieder an.

3645* `priority`: Wenn der `gateway-errors`-Tipp und ein anderer Tipp gleich lange nicht angezeigt wurden, z. B. wenn keiner noch angezeigt wurde, zeigt Claude Code `gateway-errors` zuerst. Der einfache String hat die Standard-Priorität, `0`.3755* `priority`: Wenn der Tipp `gateway-errors` und ein anderer Tipp gleich viele Sitzungen lang nicht angezeigt wurden, zum Beispiel wenn noch keiner von beiden angezeigt wurde, zeigt Claude Code `gateway-errors` zuerst an. Der einfache String hat die Standardpriorität `0`.

3646 3756 

3647Während Claude arbeitet, zeigt Claude Code Ihre Tipps im Spinner mit Ihrem Präfix an, wie z. B. `Acme tip: Run /review before opening a PR`.3757Während Claude arbeitet, zeigt Claude Code Ihre Tipps im Spinner mit Ihrem Präfix an, etwa `Acme tip: Run /review before opening a PR`.

3648 3758 

3649<h3 id="spinnerverbs">3759<h3 id="spinnerverbs">

3650 `spinnerVerbs`3760 `spinnerVerbs`

3651</h3>3761</h3>

3652 3762 

3653Während eine Runde läuft, zeigt der Spinner ein rotierendes Verb wie „Accomplishing", „Architecting" oder „Baking". Verwenden Sie diesen Schlüssel, um Ihre eigenen Verben zu dieser Rotation hinzuzufügen oder die integrierte Liste durch Ihre zu ersetzen.3763Während ein Turn läuft, zeigt der Spinner ein wechselndes Verb wie „Accomplishing“, „Architecting“ oder „Baking“. Verwenden Sie diesen Schlüssel, um dieser Rotation eigene Verben hinzuzufügen oder die integrierte Liste durch Ihre zu ersetzen.

3654 3764 

3655* **Bereich**: [`Beliebige Datei`](#scopes)3765* **Geltungsbereich**: [`Any file`](#scopes)

3656* **Typ**: Objekt mit einem `verbs`-Array von Strings und `mode`, einer von:3766* **Typ**: Objekt mit einem Array `verbs` aus Strings und `mode`, einer von:

3657 * `"append"`: Claude Code fügt Ihre Verben zum integrierten Satz hinzu3767 * `"append"`: Claude Code fügt Ihre Verben zum integrierten Satz hinzu

3658 * `"replace"`: Claude Code zeigt nur Ihre Verben3768 * `"replace"`: Claude Code zeigt nur Ihre Verben

3659* **Standard**: nicht gesetzt, daher verwendet Claude Code die integrierten Verben3769* **Standard**: nicht gesetzt, daher verwendet Claude Code die integrierten Verben

3660 3770 

3661Dieses Beispiel fügt zwei Verben zum integrierten Satz hinzu:3771Dieses Beispiel fügt dem integrierten Satz zwei Verben hinzu:

3662 3772 

3663```json settings.json theme={null}3773```json settings.json theme={null}

3664{3774{


3669}3779}

3670```3780```

3671 3781 

3672Im `"replace"`-Modus mit einem leeren `verbs`-Array behält Claude Code die integrierten Verben.3782Im Modus `"replace"` mit einem leeren Array `verbs` behält Claude Code die integrierten Verben bei.

3673 3783 

3674<h3 id="statusline">3784<h3 id="statusline">

3675 `statusLine`3785 `statusLine`

3676</h3>3786</h3>

3677 3787 

3678Führen Sie Ihren eigenen Befehl aus, um eine [Statuszeile](/docs/de/statusline) unter der Eingabeaufforderung mit Kontext wie dem Modell, den Kosten oder dem Git-Branch zu rendern. Optionale Felder passen den Abstand an, fügen periodische Neuausführungen hinzu und verbergen den integrierten Vim-Modus-Indikator, wenn Ihr Skript `vim.mode` selbst rendert.3788Einen eigenen Befehl ausführen, um unterhalb des Prompts eine [Statuszeile](/docs/de/statusline) mit Kontext wie dem Modell, den Kosten oder dem Git-Branch zu rendern. Optionale Felder passen den Abstand an, fügen periodische erneute Ausführungen hinzu und blenden die integrierte vim-Modusanzeige aus, wenn Ihr Skript `vim.mode` selbst rendert.

3679 3789 

3680* **Bereich**: [`Beliebige Datei`](#scopes). Wenn [`allowManagedHooksOnly`](#allowmanagedhooksonly) aktiviert ist oder [`disableAllHooks`](#disableallhooks) außerhalb verwalteter Einstellungen gesetzt ist, wird nur der verwaltete Einstellungswert ausgeführt.3790* **Geltungsbereich**: [`Any file`](#scopes). Wenn [`allowManagedHooksOnly`](#allowmanagedhooksonly) eingeschaltet ist oder [`disableAllHooks`](#disableallhooks) außerhalb verwalteter Einstellungen gesetzt ist, wird nur der Wert aus den verwalteten Einstellungen ausgeführt.

3681* **Typ**: Objekt mit `type` auf `"command"` gesetzt und einem `command`-String, plus optionales `padding` als Anzahl von Zeichen, `refreshInterval` als Anzahl von Sekunden, Minimum `1`, und `hideVimModeIndicator` als Boolean3791* **Typ**: Objekt mit `type` auf `"command"` gesetzt und einem String `command`, dazu optional `padding` als Anzahl von Zeichen, `refreshInterval` als Anzahl von Sekunden, mindestens `1`, und `hideVimModeIndicator` als Boolean

3682* **Standard**: nicht gesetzt, daher keine Statuszeile3792* **Standard**: nicht gesetzt, daher keine Statuszeile

3683 3793 

3684Dieses Beispiel druckt den Modellnamen und die Kontextnutzung und fügt zwei Zeichen horizontalen Abstand hinzu:3794Dieses Beispiel gibt den Modellnamen und die Kontextnutzung aus und fügt zwei Zeichen horizontalen Abstand hinzu:

3685 3795 

3686```json settings.json theme={null}3796```json settings.json theme={null}

3687{3797{


3693}3803}

3694```3804```

3695 3805 

3696Das Beispiel benötigt [`jq`](https://jqlang.org/) installiert und läuft in einer Shell. Für PowerShell- und Git Bash-Äquivalente siehe [Windows-Konfiguration](/docs/de/statusline#windows-configuration); für die vollständige Einrichtung siehe [Statuszeile manuell konfigurieren](/docs/de/statusline#manually-configure-a-status-line).3806Das Beispiel erfordert ein installiertes [`jq`](https://jqlang.org/) und läuft in einer Shell. Entsprechungen für PowerShell und Git Bash finden Sie unter [Windows-Konfiguration](/docs/de/statusline#windows-configuration); die vollständige Einrichtung finden Sie unter [Eine Statuszeile manuell konfigurieren](/docs/de/statusline#manually-configure-a-status-line).

3697 3807 

3698<h3 id="subagentstatusline">3808<h3 id="subagentstatusline">

3699 `subagentStatusLine`3809 `subagentStatusLine`

3700</h3>3810</h3>

3701 3811 

3702Wenn Claude [Subagenten](/docs/de/sub-agents) ausführt, listet Claude Code sie in einer Task-Anzeige unter der Eingabeaufforderung auf, eine Zeile pro Subagent mit `name · description · token count`. Dieser Schlüssel lässt Sie Ihren eigenen Befehl ausführen, um diese Zeilen umzuschreiben, z. B. um die Kontextnutzung jedes Subagenten als Prozentsatz anzuzeigen. Bei jeder Aktualisierung sendet Claude Code die sichtbaren Zeilen als ein JSON-Objekt auf stdin mit einem `tasks`-Array, das die `id`, `name`, `status`, `model`, `tokenCount` und mehr jedes Subagenten trägt, und ersetzt die Zeile für jede `id`, die Sie als `{"id", "content"}`-Zeile zurückschreiben. Zeilen, die Sie nicht zurückschreiben, behalten das Standard-Rendering.3812Wenn Claude [Subagenten](/docs/de/sub-agents) ausführt, listet Claude Code sie in einer Aufgabenanzeige unterhalb des Prompts auf, eine Zeile pro Subagent mit `name · description · token count`. Mit diesem Schlüssel können Sie einen eigenen Befehl ausführen, um diese Zeilen umzuschreiben, zum Beispiel um die Kontextnutzung jedes Subagenten als Prozentsatz anzuzeigen. Bei jeder Aktualisierung sendet Claude Code die sichtbaren Zeilen als ein JSON-Objekt auf stdin, mit einem Array `tasks`, das für jeden Subagenten `id`, `name`, `status`, `model`, `tokenCount` und mehr enthält, und ersetzt die Zeile für jede `id`, die Sie als `{"id", "content"}`-Zeile zurückschreiben. Zeilen, die Sie nicht zurückschreiben, behalten die Standarddarstellung.

3703 3813 

3704* **Bereich**: [`Beliebige Datei`](#scopes). Wenn [`allowManagedHooksOnly`](#allowmanagedhooksonly) aktiviert ist oder [`disableAllHooks`](#disableallhooks) außerhalb verwalteter Einstellungen gesetzt ist, wird nur der verwaltete Einstellungswert ausgeführt.3814* **Geltungsbereich**: [`Any file`](#scopes). Wenn [`allowManagedHooksOnly`](#allowmanagedhooksonly) eingeschaltet ist oder [`disableAllHooks`](#disableallhooks) außerhalb verwalteter Einstellungen gesetzt ist, wird nur der Wert aus den verwalteten Einstellungen ausgeführt.

3705* **Typ**: Objekt mit `type` auf `"command"` gesetzt und einem `command`-String3815* **Typ**: Objekt mit `type` auf `"command"` gesetzt und einem String `command`

3706* **Standard**: nicht gesetzt, daher rendert Claude Code die Standard-Zeilen3816* **Standard**: nicht gesetzt, daher rendert Claude Code die Standardzeilen

3707 3817 

3708```json settings.json theme={null}3818```json settings.json theme={null}

3709{3819{


3714}3824}

3715```3825```

3716 3826 

3717Siehe [Subagent-Statuszeilen](/docs/de/statusline#subagent-status-lines).3827Siehe [Statuszeilen für Subagenten](/docs/de/statusline#subagent-status-lines).

3718 3828 

3719<h3 id="syntaxhighlightingdisabled">3829<h3 id="syntaxhighlightingdisabled">

3720 `syntaxHighlightingDisabled`3830 `syntaxHighlightingDisabled`

3721</h3>3831</h3>

3722 3832 

3723Claude Code färbt Code nach Sprache in den Diffs, Code-Blöcken und Datei-Vorschauen, die es im Terminal anzeigt, mit seinem integrierten Highlighter; kein Plugin oder Language Server ist beteiligt. Setzen Sie diesen Schlüssel auf `true`, um sie stattdessen als einfachen Text anzuzeigen, z. B. wenn die Farben mit Ihrem Terminal-Design kollidieren oder einen Bildschirmleser verlangsamen.3833Claude Code färbt Code in den Diffs, Codeblöcken und Dateivorschauen, die es im Terminal anzeigt, mit seinem integrierten Highlighter sprachabhängig ein; dabei ist weder ein Plugin noch ein Language Server beteiligt. Setzen Sie diesen Schlüssel auf `true`, um sie stattdessen als einfachen Text anzuzeigen, zum Beispiel wenn die Farben nicht zu Ihrem Terminal-Theme passen oder einen Screenreader verlangsamen.

3724 3834 

3725* **Bereich**: [`Beliebige Datei`](#scopes)3835* **Geltungsbereich**: [`Any file`](#scopes)

3726* **Typ**: Boolean3836* **Typ**: Boolean

3727 * `true`: Claude Code schaltet die Syntaxhervorhebung in Diffs, Code-Blöcken und Datei-Vorschauen aus3837 * `true`: Claude Code schaltet die Syntaxhervorhebung in Diffs, Codeblöcken und Dateivorschauen aus

3728 * `false`: Claude Code hebt Syntax hervor3838 * `false`: Claude Code hebt die Syntax hervor

3729* **Standard**: `false`3839* **Standard**: `false`

3730 3840 

3731```json settings.json theme={null}3841```json settings.json theme={null}


3738 `terminalProgressBarEnabled`3848 `terminalProgressBarEnabled`

3739</h3>3849</h3>

3740 3850 

3741Einige Terminals können einen Fortschrittsindikator auf der Registerkarte oder in der Taskleiste für das darin laufende Programm anzeigen. Während Claude arbeitet, meldet Claude Code einen laufenden Status dem Terminal, damit Sie von einer anderen Registerkarte oder einem anderen Fenster aus sehen können, ob die Sitzung noch beschäftigt ist. Der Indikator bleibt sichtbar, nachdem die Runde endet, während [Hintergrund-Subagenten](/docs/de/sub-agents#run-subagents-in-foreground-or-background) oder [dynamische Workflows](/docs/de/workflows) noch laufen, und wird gelöscht, sobald die Sitzung untätig ist.3851Manche Terminals können für das darin laufende Programm eine Fortschrittsanzeige auf dem Tab oder in der Taskleiste anzeigen. Während Claude arbeitet, meldet Claude Code dem Terminal einen laufenden Zustand, sodass Sie von einem anderen Tab oder Fenster aus sehen können, ob die Sitzung noch beschäftigt ist. Die Anzeige bleibt nach dem Ende des Turns sichtbar, solange [Hintergrund-Subagenten](/docs/de/sub-agents#run-subagents-in-foreground-or-background) oder [dynamische Workflows](/docs/de/workflows) noch laufen, und verschwindet, sobald die Sitzung im Leerlauf ist.

3742 3852 

3743Claude Code meldet es nur in Terminals, die den Indikator unterstützen: ConEmu, Ghostty 1.2.0 oder später und iTerm2 3.6.6 oder später. Setzen Sie diesen Schlüssel auf `false`, um Claude Code davon abzuhalten, es zu melden. Erscheint in `/config` als **Terminal-Fortschrittsbalken**.3853Claude Code meldet sie nur in Terminals, die die Anzeige unterstützen: ConEmu, Ghostty 1.2.0 oder höher und iTerm2 3.6.6 oder höher. Setzen Sie diesen Schlüssel auf `false`, damit Claude Code sie nicht mehr meldet. Erscheint in `/config` als **Terminal progress bar**.

3744 3854 

3745* **Bereich**: [`Beliebige Datei`](#scopes). Ein Wert in `~/.claude.json` aus einer älteren Version gilt, wenn keine Einstellungsdatei es setzt.3855* **Geltungsbereich**: [`Any file`](#scopes). Ein Wert in `~/.claude.json` aus einer älteren Version gilt, wenn keine Einstellungsdatei den Schlüssel setzt.

3746* **Typ**: Boolean3856* **Typ**: Boolean

3747 * `true`: Sie sehen den Terminal-Fortschrittsbalken in Terminals, die ihn unterstützen3857 * `true`: Sie sehen die Terminal-Fortschrittsanzeige in Terminals, die sie unterstützen

3748 * `false`: Claude Code verbirgt den Terminal-Fortschrittsbalken3858 * `false`: Claude Code blendet die Terminal-Fortschrittsanzeige aus

3749* **Standard**: `true`3859* **Standard**: `true`

3750 3860 

3751```json settings.json theme={null}3861```json settings.json theme={null}


3758 `terminalTitleFromRename`3868 `terminalTitleFromRename`

3759</h3>3869</h3>

3760 3870 

3761Claude Code setzt den Titel Ihrer Terminal-Registerkarte. Standardmäßig verwendet es einen Titel, den es aus dem Gespräch generiert, und sobald Sie der Sitzung einen [Namen](/docs/de/sessions#name-your-sessions) mit `/rename` oder `--name` geben, zeigt die Registerkarte stattdessen diesen Namen. Setzen Sie diesen Schlüssel auf `false`, um den generierten Titel auf der Registerkarte zu behalten, auch nachdem Sie die Sitzung benannt haben. Der Name selbst gilt immer noch, daher finden `/resume <name>` und der Sitzungs-Picker ihn.3871Claude Code setzt den Titel Ihres Terminal-Tabs. Standardmäßig verwendet es einen Titel, den es aus der Konversation generiert, und sobald Sie der Sitzung mit `/rename` oder `--name` einen [Namen](/docs/de/sessions#name-your-sessions) geben, zeigt der Tab stattdessen diesen Namen. Setzen Sie diesen Schlüssel auf `false`, um den generierten Titel auf dem Tab zu behalten, auch nachdem Sie die Sitzung benannt haben. Der Name selbst gilt weiterhin, sodass `/resume <name>` und die Sitzungsauswahl ihn finden.

3762 3872 

3763* **Bereich**: [`Beliebige Datei`](#scopes)3873* **Geltungsbereich**: [`Any file`](#scopes)

3764* **Typ**: Boolean3874* **Typ**: Boolean

3765 * `true`: Der Terminal-Registerkartentitel zeigt den Sitzungsnamen, den Sie setzen3875 * `true`: Der Titel des Terminal-Tabs zeigt den von Ihnen festgelegten Sitzungsnamen

3766 * `false`: Die Registerkarte behält den Titel, den Claude Code aus Ihrem Gespräch generiert3876 * `false`: Der Tab behält den Titel, den Claude Code aus Ihrer Konversation generiert

3767* **Standard**: `true`3877* **Standard**: `true`

3768 3878 

3769```json settings.json theme={null}3879```json settings.json theme={null}


3772}3882}

3773```3883```

3774 3884 

3775Um Claude Code davon abzuhalten, den Terminal-Titel überhaupt zu aktualisieren, setzen Sie stattdessen [`CLAUDE_CODE_DISABLE_TERMINAL_TITLE`](/docs/de/env-vars) auf `1`.3885Damit Claude Code den Terminaltitel überhaupt nicht mehr aktualisiert, setzen Sie stattdessen [`CLAUDE_CODE_DISABLE_TERMINAL_TITLE`](/docs/de/env-vars) auf `1`.

3776 3886 

3777<h3 id="theme">3887<h3 id="theme">

3778 `theme`3888 `theme`

3779</h3>3889</h3>

3780 3890 

3781Wählen Sie das Farbdesign für die Schnittstelle. Erscheint in `/config` als **Design**.3891Das Farbschema für die Oberfläche wählen. Erscheint in `/config` als **Theme**.

3782 3892 

3783* **Bereich**: [`Beliebige Datei`](#scopes). Ein Wert in `~/.claude.json` aus einer älteren Version gilt, wenn keine Einstellungsdatei es setzt.3893* **Geltungsbereich**: [`Any file`](#scopes). Ein Wert in `~/.claude.json` aus einer älteren Version gilt, wenn keine Einstellungsdatei den Schlüssel setzt.

3784* **Typ**: String, einer von:3894* **Typ**: String, einer von:

3785 * `"auto"`: passt sich dem hellen oder dunklen Hintergrund Ihres Terminals an3895 * `"auto"`: passt sich dem hellen oder dunklen Hintergrund Ihres Terminals an

3786 * `"dark"`: das dunkle Design3896 * `"dark"`: das dunkle Theme

3787 * `"light"`: das helle Design3897 * `"light"`: das helle Theme

3788 * `"dark-daltonized"`: das dunkle Design mit farbenblind-freundlichen Farben3898 * `"dark-daltonized"`: das dunkle Theme mit farbenblindfreundlichen Farben

3789 * `"light-daltonized"`: das helle Design mit farbenblind-freundlichen Farben3899 * `"light-daltonized"`: das helle Theme mit farbenblindfreundlichen Farben

3790 * `"dark-ansi"`: das dunkle Design mit nur Ihrer Terminal-ANSI-Farbpalette3900 * `"dark-ansi"`: das dunkle Theme, das nur die ANSI-Farbpalette Ihres Terminals verwendet

3791 * `"light-ansi"`: das helle Design mit nur Ihrer Terminal-ANSI-Farbpalette3901 * `"light-ansi"`: das helle Theme, das nur die ANSI-Farbpalette Ihres Terminals verwendet

3792 * `"custom:<slug>"` oder `"custom:<plugin-name>:<slug>"`: ein benutzerdefiniertes Design aus `~/.claude/themes/` oder einem Plugin3902 * `"custom:<slug>"` oder `"custom:<plugin-name>:<slug>"`: ein benutzerdefiniertes Theme aus `~/.claude/themes/` oder aus einem Plugin

3793* **Standard**: `"dark"`3903* **Standard**: `"dark"`

3794 3904 

3795```json settings.json theme={null}3905```json settings.json theme={null}


3798}3908}

3799```3909```

3800 3910 

3801Siehe [Benutzerdefiniertes Design erstellen](/docs/de/terminal-config#create-a-custom-theme).3911Siehe [Ein benutzerdefiniertes Theme erstellen](/docs/de/terminal-config#create-a-custom-theme).

3802 3912 

3803<h3 id="timeformat">3913<h3 id="timeformat">

3804 `timeFormat`3914 `timeFormat`

3805</h3>3915</h3>

3806 3916 

3807Wählen Sie, wie Claude Code die Zeiten schreibt, die es in der Schnittstelle anzeigt, wie z. B. die `done 6:05 PM` am Ende jeder Rundendauer-Nachricht und die Zeitstempel im [Transkript-Viewer](/docs/de/interactive-mode#transcript-viewer). Um eine Voreinstellung zu wählen, führen Sie `/config` aus und setzen Sie **Zeitformat**. Erfordert Claude Code v2.1.257 oder später.3917Legen Sie fest, wie Claude Code die Uhrzeiten schreibt, die es in der Oberfläche anzeigt, etwa `done 6:05 PM` am Ende jeder Meldung zur Turn-Dauer und die Zeitstempel im [Transkript-Viewer](/docs/de/interactive-mode#transcript-viewer). Um eine Vorgabe auszuwählen, führen Sie `/config` aus und setzen **Time format**. Erfordert Claude Code v2.1.257 oder höher.

3808 3918 

3809* **Bereich**: [`Beliebige Datei`](#scopes)3919* **Geltungsbereich**: [`Any file`](#scopes)

3810* **Typ**: String, einer von:3920* **Typ**: String, einer von:

3811 * `"auto"`: das gleiche wie nicht gesetzt; jede Zeit behält ihr integriertes Format, das Ihrem Gebietsschema in der Rundendauer-Nachricht folgt3921 * `"auto"`: wie nicht gesetzt; jede Uhrzeit behält ihr integriertes Format, das bei der Meldung zur Turn-Dauer Ihrem Gebietsschema folgt

3812 * `"12-hour"`: eine 12-Stunden-Uhr3922 * `"12-hour"`: eine 12-Stunden-Uhr

3813 * `"24-hour"`: eine 24-Stunden-Uhr3923 * `"24-hour"`: eine 24-Stunden-Uhr

3814 * `"24-hour-utc"`: eine 24-Stunden-Uhr in UTC mit `Z` nach den Minuten, wie z. B. `18:05Z`; Claude Code ignoriert [`timeZone`](#timezone) für diese Voreinstellung3924 * `"24-hour-utc"`: eine 24-Stunden-Uhr in UTC mit `Z` nach den Minuten, etwa `18:05Z`; Claude Code ignoriert [`timeZone`](#timezone) für diese Vorgabe

3815 * Ein strftime-Muster wie `"%H:%M"`: Claude Code schreibt jede Zeit mit dem Muster. Jeder Wert, der ein `%` enthält, ist ein Muster, und jeder andere Wert außerhalb der Voreinstellungen zählt als `"auto"`3925 * Ein strftime-Muster wie `"%H:%M"`: Claude Code schreibt jede Uhrzeit mit dem Muster. Jeder Wert, der ein `%` enthält, ist ein Muster, und jeder andere Wert außerhalb der Vorgaben zählt als `"auto"`

3816* **Standard**: `"auto"`3926* **Standard**: `"auto"`

3817 3927 

3818```json settings.json theme={null}3928```json settings.json theme={null}


3821}3931}

3822```3932```

3823 3933 

3824`/config` bietet nur die Voreinstellungen, daher müssen Sie zum Verwenden eines strftime-Musters den Schlüssel zu einer Einstellungsdatei hinzufügen. Dieses Beispiel zeigt jede Zeit als eine zweistellige 24-Stunden-Uhr:3934`/config` bietet nur die Vorgaben an; um ein strftime-Muster zu verwenden, fügen Sie den Schlüssel daher einer Einstellungsdatei hinzu. Dieses Beispiel zeigt jede Uhrzeit als zweistellige 24-Stunden-Uhr:

3825 3935 

3826```json settings.json theme={null}3936```json settings.json theme={null}

3827{3937{


3829}3939}

3830```3940```

3831 3941 

3832Die Rundendauer-Nachricht und der Transkript-Viewer zeigen dann Zeiten wie `18:05`. Im Transkript-Viewer ist das Muster der gesamte Zeitstempel, daher fügen Sie Datums-Direktiven hinzu, wenn Sie das Datum dort haben möchten. Dieses Beispiel setzt das Datum vor die Uhr:3942Die Meldung zur Turn-Dauer und der Transkript-Viewer zeigen dann Uhrzeiten wie `18:05`. Im Transkript-Viewer bildet das Muster den gesamten Zeitstempel, fügen Sie daher Datumsdirektiven hinzu, wenn Sie dort das Datum sehen möchten. Dieses Beispiel stellt das Datum vor die Uhrzeit:

3833 3943 

3834```json settings.json theme={null}3944```json settings.json theme={null}

3835{3945{


3837}3947}

3838```3948```

3839 3949 

3840Die gleichen Oberflächen zeigen dann Zeiten wie `2026-09-01 18:05`.3950Dieselben Oberflächen zeigen dann Uhrzeiten wie `2026-09-01 18:05`.

3841 3951 

3842<h3 id="timezone">3952<h3 id="timezone">

3843 `timeZone`3953 `timeZone`

3844</h3>3954</h3>

3845 3955 

3846Zeigen Sie die Zeiten in der Schnittstelle in einer anderen Zeitzone als Ihrer Systemzeit an. Setzen Sie es auf einen [IANA-Zeitzonennamen](https://www.iana.org/time-zones), wie z. B. `"UTC"` oder `"Europe/Dublin"`. Die Zeiten, die [`timeFormat`](#timeformat) kontrolliert, werden dann in dieser Zone angezeigt. Wenn `timeFormat` `"24-hour-utc"` ist, bleiben Zeiten in UTC und Claude Code ignoriert diesen Schlüssel. `/config` hat keine Zeile für diesen Schlüssel, daher setzen Sie ihn in einer Einstellungsdatei. Erfordert Claude Code v2.1.257 oder später.3956Die Uhrzeiten in der Oberfläche in einer anderen Zeitzone als der Ihres Systems anzeigen. Setzen Sie den Schlüssel auf einen [IANA-Zeitzonennamen](https://www.iana.org/time-zones), etwa `"UTC"` oder `"Europe/Dublin"`. Die Uhrzeiten, die [`timeFormat`](#timeformat) steuert, werden dann in dieser Zone angezeigt. Wenn `timeFormat` auf `"24-hour-utc"` steht, bleiben die Uhrzeiten in UTC, und Claude Code ignoriert diesen Schlüssel. `/config` hat keine Zeile für diesen Schlüssel, setzen Sie ihn daher in einer Einstellungsdatei. Erfordert Claude Code v2.1.257 oder höher.

3847 3957 

3848* **Bereich**: [`Beliebige Datei`](#scopes)3958* **Geltungsbereich**: [`Any file`](#scopes)

3849* **Typ**: String, ein IANA-Zeitzonennamen. Wenn Claude Code den Namen nicht erkennt, verwendet es Ihre Systemzeitzone3959* **Typ**: String, ein IANA-Zeitzonenname. Wenn Claude Code den Namen nicht erkennt, verwendet es Ihre Systemzeitzone

3850* **Standard**: nicht gesetzt, daher zeigen Zeiten Ihre Systemzeitzone3960* **Standard**: nicht gesetzt, daher werden Uhrzeiten in Ihrer Systemzeitzone angezeigt

3851 3961 

3852```json settings.json theme={null}3962```json settings.json theme={null}

3853{3963{


3859 `tui`3969 `tui`

3860</h3>3970</h3>

3861 3971 

3862Wählen Sie den Terminal-UI-Renderer. Verwenden Sie `"fullscreen"` für den flimmerfreien [Alt-Screen-Renderer](/docs/de/fullscreen) mit virtualisiertem Scrollback oder `"default"` für den klassischen Main-Screen-Renderer. Das Ausführen von `/tui fullscreen` oder `/tui default` schreibt diesen Schlüssel für Sie.3972Den Renderer der Terminal-Oberfläche wählen. Verwenden Sie `"fullscreen"` für den flackerfreien [Alt-Screen-Renderer](/docs/de/fullscreen) mit virtualisiertem Scrollback oder `"default"` für den klassischen Main-Screen-Renderer. Wenn Sie `/tui fullscreen` oder `/tui default` ausführen, wird dieser Schlüssel für Sie geschrieben.

3863 3973 

3864* **Bereich**: [`Beliebige Datei`](#scopes)3974* **Geltungsbereich**: [`Any file`](#scopes)

3865* **Typ**: String, einer von:3975* **Typ**: String, einer von:

3866 * `"default"`: der klassische Main-Screen-Renderer3976 * `"default"`: der klassische Main-Screen-Renderer

3867 * `"fullscreen"`: der flimmerfreie Alt-Screen-Renderer mit virtualisiertem Scrollback3977 * `"fullscreen"`: der flackerfreie Alt-Screen-Renderer mit virtualisiertem Scrollback

3868* **Standard**: nicht gesetzt, daher [wählt Claude Code den Renderer für Sie](/docs/de/fullscreen#fullscreen-by-default)3978* **Standard**: nicht gesetzt, daher [wählt Claude Code den Renderer für Sie](/docs/de/fullscreen#fullscreen-by-default)

3869* **Sitzungsübergreifende Außerkraftsetzungen**: [`CLAUDE_CODE_NO_FLICKER`](/docs/de/env-vars) und [`CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN`](/docs/de/env-vars) haben Vorrang vor diesem Schlüssel für eine Sitzung: `CLAUDE_CODE_NO_FLICKER=1` schaltet Vollbild ein, und `CLAUDE_CODE_NO_FLICKER=0` oder `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1` schaltet es aus; wenn beide gesetzt sind, schaltet Claude Code es aus3979* **Überschreibungen pro Sitzung**: [`CLAUDE_CODE_NO_FLICKER`](/docs/de/env-vars) und [`CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN`](/docs/de/env-vars) haben für eine Sitzung Vorrang vor diesem Schlüssel: `CLAUDE_CODE_NO_FLICKER=1` schaltet den Vollbildmodus ein, und `CLAUDE_CODE_NO_FLICKER=0` oder `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1` schaltet ihn aus; wenn beide gesetzt sind, schaltet Claude Code ihn aus

3870 3980 

3871```json settings.json theme={null}3981```json settings.json theme={null}

3872{3982{


3874}3984}

3875```3985```

3876 3986 

3877Unter tmux `-CC` oder über SSH zu Windows behält Claude Code den klassischen Renderer, es sei denn, Sie setzen `CLAUDE_CODE_NO_FLICKER=1`. Hintergrundsitzungen, die aus der [Agent-Ansicht](/docs/de/agent-view) geöffnet werden, verwenden immer den Vollbild-Renderer, unabhängig von dieser Einstellung.3987Unter tmux `-CC` oder über SSH zu Windows behält Claude Code den klassischen Renderer bei, sofern Sie nicht `CLAUDE_CODE_NO_FLICKER=1` setzen. Hintergrundsitzungen, die aus der [Agentenansicht](/docs/de/agent-view) geöffnet werden, verwenden unabhängig von dieser Einstellung immer den Vollbild-Renderer.

3878 3988 

3879<h3 id="verbose">3989<h3 id="verbose">

3880 `verbose`3990 `verbose`

3881</h3>3991</h3>

3882 3992 

3883Standardmäßig reduziert das Transkript jeden Tool-Aufruf auf eine kurze Zusammenfassung, wie z. B. den Befehl, den Claude ausgeführt hat, und eine Zeilenanzahl seiner Ausgabe, und Sie drücken `Ctrl+O`, um das gesamte Transkript zur erweiterten Ansicht zu wechseln, wenn Sie die Details möchten. Setzen Sie diesen Schlüssel auf `true`, um die vollständige Eingabe und Ausgabe jedes Tool-Aufrufs inline anzuzeigen, während es passiert, was nützlich ist, wenn Sie einen Hook, einen MCP-Server oder einen langen Shell-Befehl debuggen. Erscheint in `/config` als **Ausführliche Ausgabe**.3993Standardmäßig fasst das Transkript jeden Tool-Aufruf zu einer kurzen Zusammenfassung zusammen, etwa dem Befehl, den Claude ausgeführt hat, und der Zeilenanzahl seiner Ausgabe, und Sie drücken `Ctrl+O`, um das gesamte Transkript in die erweiterte Ansicht umzuschalten, wenn Sie die Details sehen möchten. Setzen Sie diesen Schlüssel auf `true`, um die vollständige Ein- und Ausgabe jedes Tool-Aufrufs direkt beim Auftreten inline anzuzeigen, was beim Debugging eines Hooks, eines MCP-Servers oder eines langen Shell-Befehls nützlich ist. Erscheint in `/config` als **Verbose output**.

3884 3994 

3885* **Bereich**: [`Beliebige Datei`](#scopes). Ein Wert in `~/.claude.json` aus einer älteren Version gilt, wenn keine Einstellungsdatei es setzt.3995* **Geltungsbereich**: [`Any file`](#scopes). Ein Wert in `~/.claude.json` aus einer älteren Version gilt, wenn keine Einstellungsdatei den Schlüssel setzt.

3886* **Typ**: Boolean3996* **Typ**: Boolean

3887 * `true`: Sie sehen vollständige Tool-Ausgabe3997 * `true`: Sie sehen die vollständige Tool-Ausgabe

3888 * `false`: Sie sehen gekürzte Zusammenfassungen der Tool-Ausgabe3998 * `false`: Sie sehen gekürzte Zusammenfassungen der Tool-Ausgabe

3889* **Standard**: `false`3999* **Standard**: `false`

3890* **Sitzungsübergreifende Außerkraftsetzungen**: [`--verbose`](/docs/de/cli-reference#cli-flags) hat Vorrang vor diesem Schlüssel für eine Sitzung4000* **Überschreibungen pro Sitzung**: [`--verbose`](/docs/de/cli-reference#cli-flags) hat für eine Sitzung Vorrang vor diesem Schlüssel

3891 4001 

3892```json settings.json theme={null}4002```json settings.json theme={null}

3893{4003{


3895}4005}

3896```4006```

3897 4007 

3898Ein [`viewMode`](#viewmode)-Wert oder eine klebrige `/focus`-Auswahl überschreibt diesen Schlüssel jede Sitzung.4008Ein [`viewMode`](#viewmode)-Wert oder eine dauerhafte `/focus`-Auswahl überschreibt diesen Schlüssel in jeder Sitzung.

3899 4009 

3900<h3 id="viewmode">4010<h3 id="viewmode">

3901 `viewMode`4011 `viewMode`

3902</h3>4012</h3>

3903 4013 

3904Legen Sie die Transkript-Ansicht fest, in der Claude Code startet: `"default"`, `"verbose"` oder `"focus"`. Wenn gesetzt, überschreibt es sowohl die klebrige `/focus`-Auswahl als auch die Einstellung [`verbose`](#verbose).4014Die Transkriptansicht festlegen, mit der Claude Code startet: `"default"`, `"verbose"` oder `"focus"`. Wenn gesetzt, überschreibt der Schlüssel sowohl die dauerhafte `/focus`-Auswahl als auch die Einstellung [`verbose`](#verbose).

3905 4015 

3906* **Bereich**: [`Beliebige Datei`](#scopes)4016* **Geltungsbereich**: [`Any file`](#scopes)

3907* **Typ**: String, einer von:4017* **Typ**: String, einer von:

3908 * `"default"`: das normale Transkript mit gekürzte Tool-Ausgabe4018 * `"default"`: das normale Transkript mit gekürzter Tool-Ausgabe

3909 * `"verbose"`: das Transkript mit vollständiger Tool-Ausgabe4019 * `"verbose"`: das Transkript mit vollständiger Tool-Ausgabe

3910 * `"focus"`: nur Ihre letzte Eingabeaufforderung, eine einzeilige Zusammenfassung von Tool-Aufrufen mit Edit-Diffstats und die endgültige Antwort. Focus-Ansicht benötigt den [Vollbild-Renderer](#tui)4020 * `"focus"`: nur Ihr letzter Prompt, eine einzeilige Zusammenfassung der Tool-Aufrufe mit Diffstats der Bearbeitungen und die abschließende Antwort. Die Fokusansicht erfordert den [Vollbild-Renderer](#tui)

3911* **Standard**: nicht gesetzt, daher gelten die Einstellung `verbose` und Ihre letzte `/focus`-Auswahl4021* **Standard**: nicht gesetzt, daher gelten die Einstellung `verbose` und Ihre letzte `/focus`-Auswahl

3912* **Sitzungsübergreifende Außerkraftsetzungen**: [`--verbose`](/docs/de/cli-reference#cli-flags) hat Vorrang vor diesem Schlüssel für eine Sitzung4022* **Überschreibungen pro Sitzung**: [`--verbose`](/docs/de/cli-reference#cli-flags) hat für eine Sitzung Vorrang vor diesem Schlüssel

3913 4023 

3914```json settings.json theme={null}4024```json settings.json theme={null}

3915{4025{


3921 `vimInsertModeRemaps`4031 `vimInsertModeRemaps`

3922</h3>4032</h3>

3923 4033 

3924Ordnen Sie zwei-Tasten-INSERT-Modus-Sequenzen Escape im [Vim-Editor-Modus](/docs/de/interactive-mode#vim-editor-mode) zu. Jeder Schlüssel ist genau zwei druckbare Zeichen, die nacheinander eingegeben werden, und `"<Esc>"` ist das einzige unterstützte Ziel; Claude Code ignoriert andere Einträge. Erfordert Claude Code v2.1.208 oder später.4034Zwei-Tasten-Sequenzen im INSERT-Modus im [vim-Editor-Modus](/docs/de/interactive-mode#vim-editor-mode) auf Escape abbilden. Jeder Schlüssel besteht aus genau zwei druckbaren Zeichen, die nacheinander eingegeben werden, und `"<Esc>"` ist das einzige unterstützte Ziel; Claude Code ignoriert andere Einträge. Erfordert Claude Code v2.1.208 oder höher.

3925 4035 

3926* **Bereich**: [`Benutzer oder verwaltet`](#scopes). Ein Repository kann Ihre Tastenanschläge nicht neu zuordnen.4036* **Geltungsbereich**: [`User or managed`](#scopes). Ein Repository kann Ihre Tastenanschläge nicht umbelegen.

3927* **Typ**: Objekt, das eine zwei-Zeichen-Sequenz auf `"<Esc>"` abbildet4037* **Typ**: Objekt, das eine Sequenz aus zwei Zeichen auf `"<Esc>"` abbildet

3928* **Standard**: nicht gesetzt4038* **Standard**: nicht gesetzt

3929 4039 

3930```json settings.json theme={null}4040```json settings.json theme={null}


3935}4045}

3936```4046```

3937 4047 

3938Hat keine Auswirkung, es sei denn, `editorMode` ist `"vim"`. Siehe [INSERT-Modus-Tastenseqenzen neu zuordnen](/docs/de/interactive-mode#remap-insert-mode-key-sequences). Erfordert Claude Code v2.1.208 oder später.4048Hat keine Wirkung, sofern `editorMode` nicht `"vim"` ist. Siehe [Tastensequenzen im INSERT-Modus umbelegen](/docs/de/interactive-mode#remap-insert-mode-key-sequences). Erfordert Claude Code v2.1.208 oder höher.

3939 4049 

3940<h3 id="voice">4050<h3 id="voice">

3941 `voice`4051 `voice`

3942</h3>4052</h3>

3943 4053 

3944Schalten Sie [Sprachdiktat](/docs/de/voice-dictation) ein und wählen Sie, wie die Diktat-Taste sich verhält. Claude Code schreibt dieses Objekt für Sie, wenn Sie `/voice` ausführen.4054[Sprachdiktat](/docs/de/voice-dictation) einschalten und festlegen, wie sich die Diktiertaste verhält. Claude Code schreibt dieses Objekt für Sie, wenn Sie `/voice` ausführen.

3945 4055 

3946* **Bereich**: [`Beliebige Datei`](#scopes)4056* **Geltungsbereich**: [`Any file`](#scopes)

3947* **Typ**: Objekt mit `enabled` als Boolean, `autoSubmit` als Boolean, das nur im Hold-Modus gilt, und `mode`, einer von:4057* **Typ**: Objekt mit `enabled` als Boolean, `autoSubmit` als Boolean, das nur im Haltemodus gilt, und `mode`, einer von:

3948 * `"hold"`: Sie halten die Diktat-Taste gedrückt, während Sie sprechen, und lassen sie los, um zu stoppen4058 * `"hold"`: Sie halten die Diktiertaste beim Sprechen gedrückt und lassen sie los, um zu stoppen

3949 * `"tap"`: Sie tippen die Taste einmal an, um die Aufzeichnung zu starten, und erneut, um zu senden4059 * `"tap"`: Sie tippen die Taste einmal an, um die Aufnahme zu starten, und erneut, um zu senden

3950* **Standard**: nicht gesetzt, daher ist Diktat aus; wenn `enabled` `true` ist und `mode` nicht gesetzt ist, verwendet Claude Code `"hold"`4060* **Standard**: nicht gesetzt, daher ist das Diktat aus; wenn `enabled` auf `true` steht und `mode` nicht gesetzt ist, verwendet Claude Code `"hold"`

3951 4061 

3952Dieses Beispiel schaltet Diktat ein und macht die Taste zu einem Tippen, um die Aufzeichnung zu starten, und erneut zu senden:4062Dieses Beispiel schaltet das Diktat ein und legt fest, dass die Taste einmal angetippt wird, um die Aufnahme zu starten, und erneut, um zu senden:

3953 4063 

3954```json settings.json theme={null}4064```json settings.json theme={null}

3955{4065{


3960}4070}

3961```4071```

3962 4072 

3963`autoSubmit` sendet die Eingabeaufforderung, wenn Sie die Taste im Hold-Modus loslassen. Sprachdiktat erfordert ein claude.ai-Konto.4073`autoSubmit` sendet den Prompt, wenn Sie die Taste im Haltemodus loslassen. Sprachdiktat erfordert ein claude.ai-Konto.

3964 4074 

3965<h3 id="voiceenabled">4075<h3 id="voiceenabled">

3966 `voiceEnabled`4076 `voiceEnabled`

3967</h3>4077</h3>

3968 4078 

3969<Warning>4079<Warning>

3970 Veraltet seit v2.1.92, als das Objekt [`voice`](#voice) es ersetzte. Claude Code liest es immer noch, daher funktionieren ältere Einstellungsdateien weiterhin, aber neue Konfigurationen sollten `voice.enabled` setzen.4080 Seit v2.1.92 veraltet, als das Objekt [`voice`](#voice) diesen Schlüssel ersetzt hat. Claude Code liest ihn weiterhin, damit ältere Einstellungsdateien funktionieren, neue Konfigurationen sollten jedoch `voice.enabled` setzen.

3971</Warning>4081</Warning>

3972 4082 

3973Schalten Sie Sprachdiktat mit der einzelnen Boolean-Form ein, die dem Objekt `voice` vorausgeht. Wenn beide gesetzt sind, gilt `voice.enabled`.4083Sprachdiktat mit der einfachen Boolean-Form einschalten, die älter ist als das Objekt `voice`. Wenn beide gesetzt sind, gilt `voice.enabled`.

3974 4084 

3975* **Bereich**: [`Beliebige Datei`](#scopes)4085* **Geltungsbereich**: [`Any file`](#scopes)

3976* **Typ**: Boolean4086* **Typ**: Boolean

3977 * `true`: Sprachdiktat ist an, wenn Sie mit einem claude.ai-Konto angemeldet sind und die Richtlinie Ihrer Organisation Sprache erlaubt, es sei denn, `voice.enabled` ist gesetzt4087 * `true`: Sprachdiktat ist eingeschaltet, wenn Sie mit einem claude.ai-Konto angemeldet sind und die Richtlinie Ihrer Organisation Sprache zulässt, sofern `voice.enabled` nicht gesetzt ist

3978 * `false`: Sprachdiktat ist aus, es sei denn, `voice.enabled` ist gesetzt4088 * `false`: Sprachdiktat ist ausgeschaltet, sofern `voice.enabled` nicht gesetzt ist

3979* **Standard**: nicht gesetzt4089* **Standard**: nicht gesetzt

3980 4090 

3981```json settings.json theme={null}4091```json settings.json theme={null}


3988 `wheelScrollAccelerationEnabled`4098 `wheelScrollAccelerationEnabled`

3989</h3>4099</h3>

3990 4100 

3991Beschleunigen Sie die Mausrad-Scroll-Geschwindigkeit während schneller Scrolls in [Vollbilddarstellung](/docs/de/fullscreen#mouse-wheel-scrolling). Setzen Sie es auf `false` für eine konstante Scroll-Rate pro Rad-Kerbe.4101Die Scrollgeschwindigkeit des Mausrads bei schnellem Scrollen im [Vollbild-Rendering](/docs/de/fullscreen#mouse-wheel-scrolling) beschleunigen. Setzen Sie den Schlüssel auf `false` für eine konstante Scrollrate pro Mausradraste.

3992 4102 

3993* **Bereich**: [`Beliebige Datei`](#scopes)4103* **Geltungsbereich**: [`Any file`](#scopes)

3994* **Typ**: Boolean4104* **Typ**: Boolean

3995 * `true`: Claude Code beschleunigt die Mausrad-Scroll-Geschwindigkeit während schneller Scrolls4105 * `true`: Claude Code beschleunigt die Scrollgeschwindigkeit des Mausrads bei schnellem Scrollen

3996 * `false`: Claude Code scrollt mit einer konstanten Rate pro Rad-Kerbe4106 * `false`: Claude Code scrollt mit einer konstanten Rate pro Mausradraste

3997* **Standard**: `true`4107* **Standard**: `true`

3998 4108 

3999```json settings.json theme={null}4109```json settings.json theme={null}


4109 4219 

4110* **Bereich**: [`Any file`](#scopes)4220* **Bereich**: [`Any file`](#scopes)

4111* **Typ**: Zeichenkette4221* **Typ**: Zeichenkette

4112* **Standard**: nicht gesetzt, daher fügt Claude Code `Co-Authored-By: <name> <noreply@anthropic.com>` hinzu. Der Name ist das aktive Modell der Sitzung, wie `Claude Sonnet 5`.4222* **Standard**: nicht gesetzt, daher fügt Claude Code `Co-Authored-By: <name> <noreply@anthropic.com>` hinzu. Der Name ist das Modell, das beim Erstellen des Commits verwendet wird, wie `Claude Sonnet 5`. Wenn ein [Subagent](/docs/de/sub-agents) den Commit erstellt, nennt der Trailer das Modell des Subagenten.

4113 * Wenn Claude Code das Modell als Claude-Modell erkennt, aber seine genaue Version nicht bestätigen kann, schreibt es nur `Claude`.4223 * Wenn Claude Code das Modell als Claude-Modell erkennt, aber seine genaue Version nicht bestätigen kann, schreibt es nur `Claude`.

4114 * Wenn es die Modell-ID nicht mit einem Claude-Modell abgleichen kann, wie ein Drittanbieter-Modell, das über eine benutzerdefinierte [`ANTHROPIC_BASE_URL`](/docs/de/env-vars) bereitgestellt wird, schreibt es `Claude Code`.4224 * Wenn es die Modell-ID nicht mit einem Claude-Modell abgleichen kann, wie ein Drittanbieter-Modell, das über eine benutzerdefinierte [`ANTHROPIC_BASE_URL`](/docs/de/env-vars) bereitgestellt wird, schreibt es `Claude Code`.

4115 4225 


4145 `attribution.sessionUrl`4255 `attribution.sessionUrl`

4146</h3>4256</h3>

4147 4257 

4148Wählen Sie, ob Claude Code den claude.ai-Sitzungslink anhängt, wenn es von einer [Cloud](/docs/de/claude-code-on-the-web)- oder [Remote Control](/docs/de/remote-control)-Sitzung aus committed oder einen Pull Request öffnet. Claude Code fügt den Link als `Claude-Session`-Trailer bei Commits und als Link in Pull-Request-Beschreibungen hinzu. Setzen Sie ihn auf `false`, um den Link auszulassen.4258Wählen Sie, ob Claude Code den claude.ai-Sitzungslink anhängt, wenn es von einer [Cloud](/docs/de/claude-code-on-the-web)- oder [Remote Control](/docs/de/remote-control)-Sitzung aus committet oder einen Pull Request öffnet. Claude Code fügt den Link als `Claude-Session`-Trailer bei Commits und als Link in Pull-Request-Beschreibungen hinzu. Setzen Sie ihn auf `false`, um den Link auszulassen.

4149 4259 

4150* **Bereich**: [`Any file`](#scopes)4260* **Bereich**: [`Any file`](#scopes)

4151* **Typ**: Boolean4261* **Typ**: Boolean

4152 * `true`: Claude Code hängt den claude.ai-Sitzungslink an, wenn es von einer Cloud- oder Remote-Control-Sitzung aus committed oder einen Pull Request öffnet4262 * `true`: Claude Code hängt den claude.ai-Sitzungslink an, wenn es von einer Cloud- oder Remote-Control-Sitzung aus committet oder einen Pull Request öffnet

4153 * `false`: Claude Code lässt den Link aus4263 * `false`: Claude Code lässt den Link aus

4154* **Standard**: `true`4264* **Standard**: `true`

4155 4265 


4216Wenn Sie es auf `true` setzen, ändert Claude Code, welche Hooks und Hook-ähnliche Befehle geladen werden:4326Wenn Sie es auf `true` setzen, ändert Claude Code, welche Hooks und Hook-ähnliche Befehle geladen werden:

4217 4327 

4218* **Verwaltete und SDK-Hooks werden ausgeführt**: Hooks aus verwalteten Einstellungen und Hooks, die das [Agent SDK](/docs/de/agent-sdk/overview) im Prozess registriert4328* **Verwaltete und SDK-Hooks werden ausgeführt**: Hooks aus verwalteten Einstellungen und Hooks, die das [Agent SDK](/docs/de/agent-sdk/overview) im Prozess registriert

4219* **Erzwungene Plugin-Hooks werden ausgeführt**: Hooks aus Plugins, die Ihre verwalteten Einstellungen durch [`enabledPlugins`](#enabledplugins) erzwingen. Claude Code gleicht die vollständige `plugin@marketplace`-ID ab, daher bleibt ein Plugin mit demselben Namen aus einem anderen Marketplace blockiert. Dies ermöglicht es Ihnen, überprüfte Hooks über einen Organisations-Marketplace zu verteilen und alles andere zu blockieren4329* **Erzwungene Plugin-Hooks werden ausgeführt**: Hooks aus Plugins, die Ihre verwalteten Einstellungen durch [`enabledPlugins`](#enabledplugins) erzwingen. Claude Code gleicht die vollständige `plugin@marketplace`-ID ab, daher bleibt ein Plugin mit demselben Namen aus einem anderen Marketplace blockiert. Dies ermöglicht es Ihnen, überprüfte Hooks über einen Organisations-Marketplace zu verteilen und alles andere zu blockieren. Ein [Mod](/docs/de/plugins/mods/overview) in einem solchen Plugin wird nur geladen, wenn er [als Mod Ihrer Organisation gilt](/docs/de/plugins/mods/admin#install-your-organizations-mods)

4220* **Alles andere wird blockiert**: Benutzer-, Projekt- und lokale Hooks, Hooks aus anderen Plugins und Hooks, die in Agent-Frontmatter deklariert sind4330* **Alles andere wird blockiert**: Benutzer-, Projekt- und lokale Hooks, Hooks und Mods aus anderen installierten Plugins sowie Hooks, die im Agent-Frontmatter deklariert sind. [In Claude Code integrierte Mods](/docs/de/plugins/mods/overview#mods-built-into-claude-code) werden weiterhin ausgeführt. Um nur die Mods der Benutzer zu blockieren, setzen Sie stattdessen [`allowManagedModsOnly`](/docs/de/plugins/mods/admin#set-options-on-the-built-in-guard).

4221* **Command-sourced Plugins sind deaktiviert**: Claude Code deaktiviert auch Plugins mit einer [`command`-Quelle](/docs/de/plugins/marketplace-reference#command-plugin-source), einschließlich Plugins, die in verwalteten `enabledPlugins` erzwungen werden, es sei denn, Sie setzen [`disableCommandPluginSources`](#disablecommandpluginsources) explizit auf `false`4331* **Command-sourced Plugins sind deaktiviert**: Claude Code deaktiviert auch Plugins mit einer [`command`-Quelle](/docs/de/plugins/marketplace-reference#command-plugin-source), einschließlich Plugins, die in verwalteten `enabledPlugins` erzwungen werden, es sei denn, Sie setzen [`disableCommandPluginSources`](#disablecommandpluginsources) explizit auf `false`

4222* **Marketplace `headersHelper`-Befehle werden blockiert**: Claude Code blockiert auch Marketplace-[`headersHelper`-Befehle](/docs/de/plugins/host-marketplace#authenticate-archive-downloads), es sei denn, [`disableCommandPluginSources`](#disablecommandpluginsources) ist explizit auf `false` gesetzt, außer für einen Marketplace, den die verwalteten Einstellungen selbst deklarieren. Erfordert Claude Code v2.1.238 oder später4332* **Marketplace `headersHelper`-Befehle werden blockiert**: Claude Code blockiert auch Marketplace-[`headersHelper`-Befehle](/docs/de/plugins/host-marketplace#authenticate-archive-downloads), es sei denn, [`disableCommandPluginSources`](#disablecommandpluginsources) ist explizit auf `false` gesetzt, außer für einen Marketplace, den die verwalteten Einstellungen selbst deklarieren. Erfordert Claude Code v2.1.238 oder später

4223* **Statuszeile und Dateivorschlag werden auf verwaltete Einstellungen beschränkt**: Claude Code liest [`statusLine`](/docs/de/statusline), [`fileSuggestion`](#filesuggestion) und [`subagentStatusLine`](/docs/de/statusline#subagent-status-lines) nur aus verwalteten Einstellungen, gemäß den [Statuszeilen- und Dateivorschlag-Gates](#status-line-and-file-suggestion-gates)4333* **Statuszeile und Dateivorschlag werden auf verwaltete Einstellungen beschränkt**: Claude Code liest [`statusLine`](/docs/de/statusline), [`fileSuggestion`](#filesuggestion) und [`subagentStatusLine`](/docs/de/statusline#subagent-status-lines) nur aus verwalteten Einstellungen, gemäß den [Statuszeilen- und Dateivorschlag-Gates](#status-line-and-file-suggestion-gates)


4247* **In verwalteten Einstellungen**: Claude Code deaktiviert jeden konfigurierten Hook, einschließlich verwalteter, und führt weiterhin die Hooks aus, die das [Agent SDK](/docs/de/agent-sdk/overview) im Prozess registriert4357* **In verwalteten Einstellungen**: Claude Code deaktiviert jeden konfigurierten Hook, einschließlich verwalteter, und führt weiterhin die Hooks aus, die das [Agent SDK](/docs/de/agent-sdk/overview) im Prozess registriert

4248* **In jeder anderen Einstellungsdatei**: Claude Code deaktiviert Benutzer-, Projekt-, lokale und Plugin-Hooks; verwaltete Hooks, Agent SDK Hooks und Hooks aus Plugins, die in verwalteten [`enabledPlugins`](#enabledplugins) erzwungen werden, werden weiterhin ausgeführt4358* **In jeder anderen Einstellungsdatei**: Claude Code deaktiviert Benutzer-, Projekt-, lokale und Plugin-Hooks; verwaltete Hooks, Agent SDK Hooks und Hooks aus Plugins, die in verwalteten [`enabledPlugins`](#enabledplugins) erzwungen werden, werden weiterhin ausgeführt

4249 4359 

4360Der Schlüssel stoppt auch [Mods](/docs/de/plugins/mods/overview), also Plugins, deren Code Hooks registriert:

4361 

4362* **In verwalteten Einstellungen**: Die Mods in jedem installierten Plugin werden gestoppt, einschließlich der Mods Ihrer Organisation

4363* **In jeder anderen Einstellungsdatei**: Die von Ihnen installierten Mods werden gestoppt, und [die Mods Ihrer Organisation](/docs/de/plugins/mods/admin#install-your-organizations-mods) werden weiterhin ausgeführt

4364 

4365In Claude Code integrierte Mods werden in beiden Fällen weiterhin ausgeführt. Jeder hat [einen eigenen Schalter](/docs/de/plugins/mods/overview#mods-built-into-claude-code).

4366 

4250Das Beibehalten von Agent SDK Hooks, wenn verwaltete Einstellungen diesen Schlüssel setzen, erfordert Claude Code v2.1.242 oder später.4367Das Beibehalten von Agent SDK Hooks, wenn verwaltete Einstellungen diesen Schlüssel setzen, erfordert Claude Code v2.1.242 oder später.

4251 4368 

4252Der [`/goal`](/docs/de/goal)-Befehl kann nicht ausgeführt werden, während Hooks deaktiviert sind, und das `/hooks`-Menü zeigt stattdessen einen Hinweis anstelle Ihrer Hooks.4369Der [`/goal`](/docs/de/goal)-Befehl kann nicht ausgeführt werden, während Hooks deaktiviert sind, und das `/hooks`-Menü zeigt stattdessen einen Hinweis anstelle Ihrer Hooks.


4416 * `true`: Claude Code entfernt gebündelte Skills und Workflows und verbirgt integrierte Befehle wie `/init` vor dem Modell4533 * `true`: Claude Code entfernt gebündelte Skills und Workflows und verbirgt integrierte Befehle wie `/init` vor dem Modell

4417 * `false`: gebündelte Skills werden geladen4534 * `false`: gebündelte Skills werden geladen

4418* **Standard**: nicht gesetzt, daher werden gebündelte Skills geladen4535* **Standard**: nicht gesetzt, daher werden gebündelte Skills geladen

4419* **Sitzungsübergreifende Außerkraftsetzungen**: [`CLAUDE_CODE_DISABLE_BUNDLED_SKILLS`](/docs/de/env-vars) auf `1` gesetzt deaktiviert gebündelte Skills für eine Sitzung; welcher der beiden sie deaktiviert, der andere kann sie nicht wieder aktivieren4536* **Überschreibungen pro Sitzung**: [`CLAUDE_CODE_DISABLE_BUNDLED_SKILLS`](/docs/de/env-vars) auf `1` gesetzt deaktiviert gebündelte Skills für eine Sitzung; welcher der beiden sie deaktiviert, der andere kann sie nicht wieder aktivieren

4420 4537 

4421```json settings.json theme={null}4538```json settings.json theme={null}

4422{4539{


4432 4549 

4433Deaktivieren Sie die Inline-Shell-Ausführung für `` !`...` `` und ` ```! ` Blöcke in [Skills](/de/skills) und benutzerdefinierten Befehlen aus Benutzer-, Projekt-, Plugin- oder zusätzlichen Verzeichnisquellen. Claude Code ersetzt jeden Befehl durch `[shell command execution disabled by policy]` statt ihn auszuführen.4550Deaktivieren Sie die Inline-Shell-Ausführung für `` !`...` `` und ` ```! ` Blöcke in [Skills](/de/skills) und benutzerdefinierten Befehlen aus Benutzer-, Projekt-, Plugin- oder zusätzlichen Verzeichnisquellen. Claude Code ersetzt jeden Befehl durch `[shell command execution disabled by policy]` statt ihn auszuführen.

4434 4551 

4435* **Bereich**: [`Any file`](#scopes). Ein `true` in verwalteten Einstellungen kann nicht durch `false` an anderer Stelle außer Kraft gesetzt werden.4552* **Bereich**: [`Any file`](#scopes). Ein `true` in verwalteten Einstellungen kann nicht durch `false` an anderer Stelle überschrieben werden.

4436* **Typ**: Boolean4553* **Typ**: Boolean

4437 * `true`: Claude Code ersetzt jeden Inline-Shell-Befehl durch `[shell command execution disabled by policy]` statt ihn auszuführen4554 * `true`: Claude Code ersetzt jeden Inline-Shell-Befehl durch `[shell command execution disabled by policy]` statt ihn auszuführen

4438 * `false`: Inline-Shell wird ausgeführt4555 * `false`: Inline-Shell wird ausgeführt


4471}4588}

4472```4589```

4473 4590 

4474Außerkraftsetzungen gelten nicht für Plugin-Skills, die Sie über `/plugin` verwalten.4591Überschreibungen gelten nicht für Plugin-Skills, die Sie über `/plugin` verwalten.

4475 4592 

4476In verwalteten Einstellungen und Dateien, die mit `--settings` übergeben werden, gilt ein Schlüssel auf einem Alias eines gebündelten Skills, wie `checkup` für `/doctor`, auch für den Skill; siehe [wie Alias-Schlüssel mit Schlüsseln auf dem eigenen Namen des Skills kombiniert werden](/docs/de/skills#override-skill-visibility-from-settings).4593In verwalteten Einstellungen und Dateien, die mit `--settings` übergeben werden, gilt ein Schlüssel auf einem Alias eines gebündelten Skills, wie `checkup` für `/doctor`, auch für den Skill; siehe [wie Alias-Schlüssel mit Schlüsseln auf dem eigenen Namen des Skills kombiniert werden](/docs/de/skills#override-skill-visibility-from-settings).

4477 4594 


4521 `allowedChannelPlugins`4638 `allowedChannelPlugins`

4522</h3>4639</h3>

4523 4640 

4524Wählen Sie, in welche [Kanal](/docs/de/channels)-Plugins Nachrichten in Sitzungen in Ihrer Organisation pushen können. Wenn Sie es festlegen, verwendet Claude Code Ihre Liste anstelle der Standard-Anthropic-Zulassungsliste; jeder Eintrag benennt ein Plugin und den Marketplace, aus dem es stammt.4641Wählen Sie, welche [Kanal](/docs/de/channels)-Plugins Nachrichten in Sitzungen in Ihrer Organisation pushen können. Wenn Sie es festlegen, verwendet Claude Code Ihre Liste anstelle der Standard-Anthropic-Zulassungsliste; jeder Eintrag benennt ein Plugin und den Marketplace, aus dem es stammt.

4525 4642 

4526* **Bereich**: [`Managed`](#scopes)4643* **Bereich**: [`Managed`](#scopes)

4527* **Typ**: Array von Objekten, jeweils mit `marketplace` und `plugin` Strings. Ein Eintrag kann stattdessen ein `"plugin@marketplace"` String wie `"telegram@claude-plugins-official"` sein, den Claude Code als das äquivalente Objekt behandelt. Die String-Form erfordert Claude Code v2.1.267 oder später; frühere Versionen lehnen den gesamten `allowedChannelPlugins` Wert ab, wenn er einen enthält4644* **Typ**: Array von Objekten, jeweils mit `marketplace` und `plugin` Strings. Ein Eintrag kann stattdessen ein `"plugin@marketplace"` String wie `"telegram@claude-plugins-official"` sein, den Claude Code als das äquivalente Objekt behandelt. Die String-Form erfordert Claude Code v2.1.267 oder später; frühere Versionen lehnen den gesamten `allowedChannelPlugins` Wert ab, wenn er einen enthält


4753}4870}

4754```4871```

4755 4872 

4756Mit diesem Eintrag behält Claude Code einen bereits registrierten offiziellen Marketplace bei und registriert den Marketplace beim ersten interaktiven Start von Claude Code automatisch auf einem neuen Computer. Die automatische Registrierung verpasst am häufigsten:4873Mit diesem Eintrag behält Claude Code einen bereits registrierten offiziellen Marketplace bei und registriert den Marketplace auf einem neuen Computer automatisch, wenn Sie zum ersten Mal eine interaktive Terminalsitzung starten. Die automatische Registrierung verpasst am häufigsten:

4757 4874 

4758* Nicht-interaktive Umgebungen, die vor dem ersten interaktiven Start des Computers ausgeführt werden.4875* Nicht-interaktive Umgebungen, die vor der ersten interaktiven Terminalsitzung des Computers ausgeführt werden.

4759* Computer, auf denen Claude Code bereits interaktiv unter einer Richtlinie ausgeführt wurde, die den Marketplace blockierte, wie die leere Array-Sperrung. Claude Code zeichnet den blockierten Versuch auf und versucht nicht erneut, nachdem sich die Richtlinie ändert.4876* Computer, auf denen Claude Code nur über die VS Code-Erweiterung ausgeführt wurde.

4877* Computer, auf denen Claude Code bereits eine interaktive Terminalsitzung unter einer Richtlinie ausgeführt hat, die den Marketplace blockierte, wie die leere Array-Sperrung. Claude Code zeichnet den blockierten Versuch auf und versucht es nicht erneut, nachdem sich die Richtlinie ändert.

4760 4878 

4761Fügen Sie auf diesen Computern den Marketplace zu [`extraKnownMarketplaces`](#extraknownmarketplaces) in derselben `managed-settings.json` hinzu, damit Claude Code ihn automatisch registriert, oder führen Sie `claude plugin marketplace add anthropics/claude-plugins-official` aus.4879Fügen Sie auf diesen Computern den Marketplace zu [`extraKnownMarketplaces`](#extraknownmarketplaces) in derselben `managed-settings.json` hinzu, damit Claude Code ihn automatisch registriert, oder führen Sie `claude plugin marketplace add anthropics/claude-plugins-official` aus.

4762 4880 


4772| Einstellungsdatei | Nur verwaltete Einstellungen | Jede Einstellungsdatei |4890| Einstellungsdatei | Nur verwaltete Einstellungen | Jede Einstellungsdatei |

4773| Verhalten | Blockiert nicht zulässige Additionen | Registriert fehlende Marketplaces |4891| Verhalten | Blockiert nicht zulässige Additionen | Registriert fehlende Marketplaces |

4774| Wann erzwungen | Vor Netzwerk- und Dateisystemoperationen | Sofort aus Benutzer- oder verwalteten Einstellungen; nach dem Workspace-Vertrauensdialog für die Dateien eines Repositories |4892| Wann erzwungen | Vor Netzwerk- und Dateisystemoperationen | Sofort aus Benutzer- oder verwalteten Einstellungen; nach dem Workspace-Vertrauensdialog für die Dateien eines Repositories |

4775| Kann außer Kraft gesetzt werden | Nein, höchste Priorität | Ja, durch höher priorisierte Einstellungen |4893| Kann überschrieben werden | Nein, höchster Vorrang | Ja, durch Einstellungen mit höherem Vorrang |

4776| Quellenformat | Direktes Quellobjekt | Benannter Marketplace mit einem verschachtelten `source` Objekt |4894| Quellenformat | Direktes Quellobjekt | Benannter Marketplace mit einem verschachtelten `source` Objekt |

4777 4895 

4778Um einen Marketplace sowohl einzuschränken als auch vorab zu registrieren für alle Benutzer, setzen Sie beide in `managed-settings.json`:4896Um einen Marketplace sowohl einzuschränken als auch vorab zu registrieren für alle Benutzer, setzen Sie beide in `managed-settings.json`:


4816 `strictPluginOnlyCustomization.skills`4934 `strictPluginOnlyCustomization.skills`

4817</h3>4935</h3>

4818 4936 

4819Sperren Sie die `skills` Oberfläche. Claude Code stoppt das Laden von Skills aus `~/.claude/skills/` und `.claude/skills/`, benutzerdefinierten Befehlen aus `~/.claude/commands/` und `.claude/commands/`, Skills unter `--add-dir` Verzeichnissen und Skills, die von Ihrem claude.ai-Konto synchronisiert werden, und lädt weiterhin Plugin-Skills, gebündelte Skills und Skills im verwalteten Richtlinienverzeichnis.4937Sperren Sie die `skills` Oberfläche. Claude Code stoppt das Laden von Skills aus `~/.claude/skills/` und `.claude/skills/`, benutzerdefinierten Befehlen aus `~/.claude/commands/` und `.claude/commands/`, Skills und Befehlen unter `--add-dir` Verzeichnissen und Skills, die von Ihrem claude.ai-Konto synchronisiert werden. Es lädt weiterhin Plugin-Skills, gebündelte Skills und Skills im verwalteten Richtlinienverzeichnis.

4820 4938 

4821* **Bereich**: [`Managed`](#scopes)4939* **Bereich**: [`Managed`](#scopes)

4822* **Typ**: der String `"skills"` im [`strictPluginOnlyCustomization`](#strictpluginonlycustomization) Array4940* **Typ**: der String `"skills"` im [`strictPluginOnlyCustomization`](#strictpluginonlycustomization) Array


4832 `strictPluginOnlyCustomization.agents`4950 `strictPluginOnlyCustomization.agents`

4833</h3>4951</h3>

4834 4952 

4835Sperren Sie die `agents` Oberfläche. Claude Code stoppt das Laden von Agents aus `~/.claude/agents/` und `.claude/agents/` und lädt weiterhin Plugin-Agents, integrierte Agents und Agents im verwalteten Richtlinienverzeichnis.4953Sperren Sie die `agents` Oberfläche. Claude Code stoppt das Laden von Agents aus `~/.claude/agents/`, `.claude/agents/` und `--add-dir` Verzeichnissen. Es lädt weiterhin Plugin-Agents, integrierte Agents und Agents im verwalteten Richtlinienverzeichnis.

4836 4954 

4837* **Bereich**: [`Managed`](#scopes)4955* **Bereich**: [`Managed`](#scopes)

4838* **Typ**: der String `"agents"` im [`strictPluginOnlyCustomization`](#strictpluginonlycustomization) Array4956* **Typ**: der String `"agents"` im [`strictPluginOnlyCustomization`](#strictpluginonlycustomization) Array


4902 5020 

4903* **Benutzereinstellungen**: Ihre persönlichen Plugin-Voreinstellungen5021* **Benutzereinstellungen**: Ihre persönlichen Plugin-Voreinstellungen

4904* **Projekteinstellungen**: Plugins, die mit jedem im Repository geteilt werden5022* **Projekteinstellungen**: Plugins, die mit jedem im Repository geteilt werden

4905* **Lokale Einstellungen**: Pro-Computer-Außerkraftsetzungen, gitignoriert, wenn Claude Code eine Einstellung dort speichert5023* **Lokale Einstellungen**: Überschreibungen pro Computer, gitignoriert, wenn Claude Code eine Einstellung dort speichert

4906* **Verwaltete Einstellungen**: Organisationsrichtlinie. Ein Plugin, das hier auf `false` gesetzt ist, ist von der Installation in jedem Bereich blockiert und im Marketplace verborgen5024* **Verwaltete Einstellungen**: Organisationsrichtlinie. Ein Plugin, das hier auf `false` gesetzt ist, ist von der Installation in jedem Bereich blockiert und im Marketplace verborgen

4907 5025 

4908Projekteinstellungen haben Vorrang vor Benutzereinstellungen, daher deaktiviert das Setzen eines Plugins auf `false` in `~/.claude/settings.json` kein Plugin, das die `.claude/settings.json` des Projekts aktiviert. Um sich von einem von Projekt aktivierten Plugin auf Ihrem Computer abzumelden, setzen Sie es stattdessen auf `false` in `.claude/settings.local.json`. Plugins, die von verwalteten Einstellungen erzwungen aktiviert werden, können auf diese Weise nicht deaktiviert werden, da verwaltete Einstellungen lokale Einstellungen außer Kraft setzen.5026Projekteinstellungen haben Vorrang vor Benutzereinstellungen, daher deaktiviert das Setzen eines Plugins auf `false` in `~/.claude/settings.json` kein Plugin, das die `.claude/settings.json` des Projekts aktiviert. Um sich von einem von Projekt aktivierten Plugin auf Ihrem Computer abzumelden, setzen Sie es stattdessen auf `false` in `.claude/settings.local.json`. Plugins, die von verwalteten Einstellungen erzwungen aktiviert werden, können auf diese Weise nicht deaktiviert werden, da verwaltete Einstellungen lokale Einstellungen überschreiben.

4909 5027 

4910Das Aktivieren eines Plugins aus einer externen Quelle wie einem GitHub-Repository oder npm-Paket in der `.claude/settings.json` eines Projekts installiert es nicht für andere Personen. Auf jedem Pfad, der Plugins lädt, meldet Claude Code das Plugin als nicht installiert, bis jeder Benutzer es selbst [installiert](/docs/de/plugins/org#require-plugins-per-repository).5028Das Aktivieren eines Plugins aus einer externen Quelle wie einem GitHub-Repository oder npm-Paket in der `.claude/settings.json` eines Projekts installiert es nicht für andere Personen. Auf jedem Pfad, der Plugins lädt, meldet Claude Code das Plugin als nicht installiert, bis jeder Benutzer es selbst [installiert](/docs/de/plugins/org#require-plugins-per-repository).

4911 5029 


4956* **`git`**: jede Git-URL, mit `url`5074* **`git`**: jede Git-URL, mit `url`

4957* **`url`**: eine direkte URL zu einer `marketplace.json` Datei, mit `url` und optionalen `headers` und `headersHelper` für authentifizierten Zugriff. `headersHelper` benennt einen Befehl, der Header druckt, deren Werte zu kurzlebig sind, um in `headers` aufzulisten, und erfordert Claude Code v2.1.238 oder später5075* **`url`**: eine direkte URL zu einer `marketplace.json` Datei, mit `url` und optionalen `headers` und `headersHelper` für authentifizierten Zugriff. `headersHelper` benennt einen Befehl, der Header druckt, deren Werte zu kurzlebig sind, um in `headers` aufzulisten, und erfordert Claude Code v2.1.238 oder später

4958* **`file`**: ein lokaler Pfad zu einer `marketplace.json` Datei, mit `path`5076* **`file`**: ein lokaler Pfad zu einer `marketplace.json` Datei, mit `path`

4959* **`directory`**: ein lokaler Dateisystem-Pfad, mit `path`, nur für Entwicklung5077* **`directory`**: ein lokaler Dateisystem-Pfad, mit `path`. Verwenden Sie ihn für die Entwicklung oder für einen Marketplace, den Ihre Organisation [auf jedem Computer bereitstellt](/docs/de/plugins/mods/admin#install-your-organizations-mods).

4960* **`settings`**: ein Inline-Marketplace, der direkt in der Einstellungsdatei ohne ein gehostetes Repository deklariert ist, mit `name` und `plugins`5078* **`settings`**: ein Inline-Marketplace, der direkt in der Einstellungsdatei ohne ein gehostetes Repository deklariert ist, mit `name` und `plugins`

4961 5079 

4962Der `git` Quellentyp funktioniert mit jedem Git-Hosting-Service, einschließlich selbst gehosteter GitLab und Bitbucket. Claude Code klont das Repository mit derselben Authentifizierung, die `git clone` auf diesem Computer verwenden würde: konfigurierte Credential-Helper oder SSH-Schlüssel. Ein Provider-Token wie `GITHUB_TOKEN` wird nur durch einen Credential-Helper wirksam, der ihn liest. Siehe [Private Repositories](/docs/de/plugins/host-marketplace#grant-access-to-a-private-marketplace) für Setup-Details.5080Der `git` Quellentyp funktioniert mit jedem Git-Hosting-Service, einschließlich selbst gehosteter GitLab und Bitbucket. Claude Code klont das Repository mit derselben Authentifizierung, die `git clone` auf diesem Computer verwenden würde: konfigurierte Credential-Helper oder SSH-Schlüssel. Ein Provider-Token wie `GITHUB_TOKEN` wird durch einen Credential-Helper wirksam, der ihn liest. Siehe [Private Repositories](/docs/de/plugins/host-marketplace#grant-access-to-a-private-marketplace) für Setup-Details.

4963 5081 

4964Für `github` und `git` Quellen lädt Claude Code niemals [Git LFS](https://git-lfs.com) Inhalte herunter, wenn es das Marketplace-Repository klont, um es hinzuzufügen oder zu aktualisieren. LFS-verfolgte Dateien werden als Zeiger-Dateien ausgecheckt, und die Ausgabe zum Hinzufügen oder Aktualisieren meldet, wie viele.5082Für `github` und `git` Quellen lädt Claude Code niemals [Git LFS](https://git-lfs.com) Inhalte herunter, wenn es das Marketplace-Repository klont, um es hinzuzufügen oder zu aktualisieren. LFS-verfolgte Dateien werden als Zeiger-Dateien ausgecheckt, und die Ausgabe zum Hinzufügen oder Aktualisieren meldet, wie viele.

4965 5083 


5043 5161 

5044Claude Code ignoriert Projekt- und lokale Einträge, weil es diese Werte in Plugin-Hook-, MCP- und LSP-Konfigurationen ersetzt, und ein geklontes Repository darf sie nicht liefern. Vor v2.1.207 wurden auch Projekt- und lokale Einstellungen gelesen.5162Claude Code ignoriert Projekt- und lokale Einträge, weil es diese Werte in Plugin-Hook-, MCP- und LSP-Konfigurationen ersetzt, und ein geklontes Repository darf sie nicht liefern. Vor v2.1.207 wurden auch Projekt- und lokale Einstellungen gelesen.

5045 5163 

5164<h3 id="prependplugins">

5165 `prependPlugins`

5166</h3>

5167 

5168Listen Sie die verwalteten Plugins auf, deren [Mods](/docs/de/plugins/mods/overview) vor jedem Mod ausgeführt werden, den ein Benutzer installiert, in der aufgeführten Reihenfolge. Wenn Sie diesen Schlüssel in verwalteten Einstellungen setzen, nennen Sie `sec-default@builtin` in der Liste, um den integrierten Schutz beizubehalten. In verwalteten Einstellungen überspringt Claude Code eine ID, deren Plugin nicht als Plugin Ihrer Organisation gilt. Siehe [Mods Ihrer Organisation installieren und die Reihenfolge festlegen](/docs/de/plugins/mods/admin#install-your-organizations-mods) für diese Bedingungen und dafür, wie die beiden Reihenfolge-Schlüssel zusammenwirken.

5169 

5170* **Bereich**: [`User or managed`](#scopes). Claude Code liest den Schlüssel aus verwalteten Einstellungen. Aus Benutzereinstellungen liest es den Schlüssel nur auf einem Computer ohne verwaltete Einstellungen und für einen Benutzer, der nicht mit einem Team- oder Enterprise-Plan angemeldet ist. In Projekt- und lokalen Einstellungen sowie in einer `--settings` Datei ignoriert es den Schlüssel.

5171* **Typ**: Array von `plugin-name@marketplace-name` Strings

5172* **Standard**: nicht gesetzt

5173 

5174```json managed-settings.json theme={null}

5175{

5176 "extraKnownMarketplaces": {

5177 "acme-tools": {

5178 "source": { "source": "directory", "path": "/opt/acme/claude-plugins" }

5179 }

5180 },

5181 "enabledPlugins": { "acme-guard@acme-tools": true },

5182 "prependPlugins": ["acme-guard@acme-tools", "sec-default@builtin"]

5183}

5184```

5185 

5186<h3 id="appendplugins">

5187 `appendPlugins`

5188</h3>

5189 

5190Listen Sie die verwalteten Plugins auf, deren [Mods](/docs/de/plugins/mods/overview) nach jedem Mod ausgeführt werden, den ein Benutzer installiert, in der aufgeführten Reihenfolge. Eine ID, die sowohl in `prependPlugins` als auch in `appendPlugins` aufgeführt ist, wird vorangestellt. In verwalteten Einstellungen überspringt Claude Code eine ID, deren Plugin nicht [als Plugin Ihrer Organisation gilt](/docs/de/plugins/mods/admin#install-your-organizations-mods).

5191 

5192* **Bereich**: [`User or managed`](#scopes). Claude Code liest den Schlüssel aus verwalteten Einstellungen. Aus Benutzereinstellungen liest es den Schlüssel nur auf einem Computer ohne verwaltete Einstellungen und für einen Benutzer, der nicht mit einem Team- oder Enterprise-Plan angemeldet ist. In Projekt- und lokalen Einstellungen sowie in einer `--settings` Datei ignoriert es den Schlüssel.

5193* **Typ**: Array von `plugin-name@marketplace-name` Strings

5194* **Standard**: nicht gesetzt

5195 

5196```json managed-settings.json theme={null}

5197{

5198 "extraKnownMarketplaces": {

5199 "acme-tools": {

5200 "source": { "source": "directory", "path": "/opt/acme/claude-plugins" }

5201 }

5202 },

5203 "enabledPlugins": { "acme-audit@acme-tools": true },

5204 "appendPlugins": ["acme-audit@acme-tools"]

5205}

5206```

5207 

5046<h2 id="mcp">5208<h2 id="mcp">

5047 MCP5209 MCP

5048</h2>5210</h2>


5055 5217 

5056Laden Sie die [claude.ai-Konnektoren](/docs/de/mcp#use-mcp-servers-from-claude-ai), die Claude Code selbst abruft, zusammen mit einer bereitgestellten `managed-mcp.json`. Ohne diesen Schlüssel übernimmt `managed-mcp.json` die ausschließliche Kontrolle über MCP-Server und unterdrückt diese Konnektoren.5218Laden Sie die [claude.ai-Konnektoren](/docs/de/mcp#use-mcp-servers-from-claude-ai), die Claude Code selbst abruft, zusammen mit einer bereitgestellten `managed-mcp.json`. Ohne diesen Schlüssel übernimmt `managed-mcp.json` die ausschließliche Kontrolle über MCP-Server und unterdrückt diese Konnektoren.

5057 5219 

5058* **Bereich**: [`Managed`](#scopes). Benutzer können Konnektoren, deren ausschließliche Kontrolle unterdrückt hat, nicht erneut aktivieren.5220* **Geltungsbereich**: [`Managed`](#scopes). Benutzer können Konnektoren, die durch die ausschließliche Kontrolle unterdrückt wurden, nicht erneut aktivieren.

5059* **Typ**: Boolean5221* **Typ**: Boolean

5060 * `true`: Claude Code lädt die claude.ai-Konnektoren zusammen mit einer bereitgestellten `managed-mcp.json`5222 * `true`: Claude Code lädt die claude.ai-Konnektoren zusammen mit einer bereitgestellten `managed-mcp.json`

5061 * `false`: eine bereitgestellte `managed-mcp.json` übernimmt die ausschließliche Kontrolle über MCP-Server und unterdrückt die claude.ai-Konnektoren, [die Claude Code selbst abruft](/docs/de/mcp#how-connectors-reach-claude-code)5223 * `false`: eine bereitgestellte `managed-mcp.json` übernimmt die ausschließliche Kontrolle über MCP-Server und unterdrückt die claude.ai-Konnektoren, [die Claude Code selbst abruft](/docs/de/mcp#how-connectors-reach-claude-code)


5069 5231 

5070[`allowedMcpServers`](#allowedmcpservers) und [`deniedMcpServers`](#deniedmcpservers) gelten weiterhin für die Konnektoren, die dieser Schlüssel lädt. Konnektoren, die an eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web) geliefert werden, deren Host eine `managed-mcp.json` trägt, wie z. B. einen selbstgehosteten Runner, bleiben unterdrückt. Siehe [claude.ai-Konnektoren neben dem verwalteten Satz zulassen](/docs/de/managed-mcp#allow-claude-ai-connectors-alongside-the-managed-set).5232[`allowedMcpServers`](#allowedmcpservers) und [`deniedMcpServers`](#deniedmcpservers) gelten weiterhin für die Konnektoren, die dieser Schlüssel lädt. Konnektoren, die an eine [Cloud-Sitzung](/docs/de/claude-code-on-the-web) geliefert werden, deren Host eine `managed-mcp.json` trägt, wie z. B. einen selbstgehosteten Runner, bleiben unterdrückt. Siehe [claude.ai-Konnektoren neben dem verwalteten Satz zulassen](/docs/de/managed-mcp#allow-claude-ai-connectors-alongside-the-managed-set).

5071 5233 

5234<h3 id="allowclaudeinchromewithmanagedmcp">

5235 `allowClaudeInChromeWithManagedMcp`

5236</h3>

5237 

5238Lassen Sie den integrierten [Claude in Chrome](/docs/de/chrome)-Server zusammen mit einer bereitgestellten `managed-mcp.json` laufen. Ohne diesen Schlüssel blockiert eine bereitgestellte `managed-mcp.json` Claude in Chrome in Terminal-Sitzungen. Erfordert Claude Code v2.1.282 oder später.

5239 

5240* **Geltungsbereich**: [`Managed`](#scopes), nur aus den eigenen verwalteten Einstellungen des Geräts: einer per MDM bereitgestellten plist oder einem HKLM-Registrierungsschlüssel oder einer System-`managed-settings.json`-Datei. Claude Code ignoriert ihn in servergesteuerten Einstellungen, in der vom Benutzer beschreibbaren HKCU-Registrierung sowie in Benutzer- oder Projekteinstellungen.

5241* **Typ**: Boolean

5242 * `true`: der integrierte Claude in Chrome-Server kann zusammen mit einer bereitgestellten `managed-mcp.json` laufen

5243 * `false`: eine bereitgestellte `managed-mcp.json` blockiert Claude in Chrome in Terminal-Sitzungen

5244* **Standard**: `false`, daher blockiert eine bereitgestellte `managed-mcp.json` Claude in Chrome in Terminal-Sitzungen

5245 

5246```json managed-settings.json theme={null}

5247{

5248 "allowClaudeInChromeWithManagedMcp": true

5249}

5250```

5251 

5252Ein [`deniedMcpServers`](#deniedmcpservers)-Eintrag für `claude-in-chrome` blockiert den Server auch bei aktiviertem Schlüssel weiterhin. Siehe [Claude in Chrome neben dem verwalteten Satz zulassen](/docs/de/managed-mcp#allow-claude-in-chrome-alongside-the-managed-set).

5253 

5072<h3 id="allowedmcpservers">5254<h3 id="allowedmcpservers">

5073 `allowedMcpServers`5255 `allowedMcpServers`

5074</h3>5256</h3>

5075 5257 

5076Erstellen Sie eine Zulassungsliste der MCP-Server, die Personen hinzufügen können. Claude Code blockiert jeden Server, der nicht mit einem Eintrag übereinstimmt, überall dort, wo er definiert ist, einschließlich Plugin-Server, Server, die mit `--mcp-config` übergeben werden, und Server von claude.ai.5258Erstellen Sie eine Allowlist der MCP-Server, die Personen hinzufügen können. Claude Code blockiert jeden Server, der nicht mit einem Eintrag übereinstimmt, überall dort, wo er definiert ist, einschließlich Plugin-Server, Server, die ein Benutzer mit `--mcp-config` übergibt, und Server von claude.ai.

5077 5259 

5078Integrierte Server wie Claude in Chrome, der `ide`-Server, mit dem Claude Code sich in einer laufenden [VS Code](/docs/de/vs-code#the-built-in-ide-mcp-server)- oder [JetBrains](/docs/de/jetbrains#the-built-in-ide-mcp-server)-IDE verbindet, und Server, die die CLI selbst konfiguriert, sind von der Zulassungsliste ausgenommen, und die Ablehnungsliste gilt weiterhin für sie. In-Process-`type: "sdk"`-Server sind von beiden Listen ausgenommen; die [App, die die Sitzung gestartet hat](/docs/de/mcp#how-connectors-reach-claude-code), registriert sie.5260Integrierte Server wie Claude in Chrome, der `ide`-Server, mit dem Claude Code sich in einer laufenden [VS Code](/docs/de/vs-code#the-built-in-ide-mcp-server)- oder [JetBrains](/docs/de/jetbrains#the-built-in-ide-mcp-server)-IDE verbindet, und Server, die die CLI selbst konfiguriert, sind von der Allowlist ausgenommen, und die Denylist gilt weiterhin für sie. Ab Claude Code v2.1.268 sind auch die Slack-Tools einer [Claude Tag](/docs/de/claude-tag)-Sitzung von der Allowlist ausgenommen, und die Denylist gilt weiterhin für sie. In-Process-`type: "sdk"`-Server sind von beiden Listen ausgenommen; die [App, die die Sitzung gestartet hat](/docs/de/mcp#how-connectors-reach-claude-code), registriert sie.

5079 5261 

5080Server, die Ihre Organisation bereitstellt, sind auch von der Zulassungsliste ausgenommen, und die Ablehnungsliste gilt weiterhin für sie. Die Ausnahme deckt jeden [`managedMcpServers`](#managedmcpservers)-Eintrag ab, und jeden [`managed-mcp.json`](/docs/de/managed-mcp#exclusive-control-with-managed-mcp-json)-Eintrag, dessen Werte keine `${VAR}`-Erweiterung verwenden. Siehe [Wie ein Server bewertet wird](/docs/de/managed-mcp#how-a-server-is-evaluated) für die vollständige Prüfreihenfolge. Vor v2.1.259 mussten Server aus `managed-mcp.json` auch übereinstimmen.5262Server, die Ihre Organisation bereitstellt, sind auch von der Allowlist ausgenommen, und die Denylist gilt weiterhin für sie. Die Ausnahme deckt jeden [`managedMcpServers`](#managedmcpservers)-Eintrag ab, und jeden [`managed-mcp.json`](/docs/de/managed-mcp#exclusive-control-with-managed-mcp-json)-Eintrag, dessen Werte keine `${VAR}`-Erweiterung verwenden. Siehe [Wie ein Server bewertet wird](/docs/de/managed-mcp#how-a-server-is-evaluated) für die vollständige Prüfreihenfolge. Vor v2.1.259 mussten Server aus `managed-mcp.json` auch übereinstimmen.

5081 5263 

5082* **Bereich**: [`Any file`](#scopes). Einträge aus jeder Datei werden in eine Zulassungsliste zusammengeführt, es sei denn, [`allowManagedMcpServersOnly`](#allowmanagedmcpserversonly) ist gesetzt. Stellen Sie es in verwalteten Einstellungen bereit, um es durchzusetzen.5264* **Geltungsbereich**: [`Any file`](#scopes). Einträge aus jeder Datei werden in eine Allowlist zusammengeführt, es sei denn, [`allowManagedMcpServersOnly`](#allowmanagedmcpserversonly) ist gesetzt. Stellen Sie es in verwalteten Einstellungen bereit, um es durchzusetzen.

5083* **Typ**: Array von Objekten, jedes mit genau einem Schlüssel: `serverName`, ein String, der auf Buchstaben, Zahlen, Bindestriche und Unterstriche beschränkt ist; `serverCommand`, ein Array des Befehls und seiner Argumente, die genau übereinstimmen; oder `serverUrl`, ein URL-Muster mit `*`-Platzhaltern5265* **Typ**: Array von Objekten, jedes mit genau einem Schlüssel: `serverName`, ein String, der auf Buchstaben, Zahlen, Bindestriche und Unterstriche beschränkt ist; `serverCommand`, ein Array des Befehls und seiner Argumente, die genau übereinstimmen; oder `serverUrl`, ein URL-Muster mit `*`-Platzhaltern

5084* **Standard**: nicht gesetzt, daher ist jeder Server zulässig; ein leeres Array blockiert jeden Server, den Benutzer hinzufügen5266* **Standard**: nicht gesetzt, daher ist jeder Server zulässig; ein leeres Array blockiert jeden Server, den Benutzer hinzufügen

5085 5267 


5093}5275}

5094```5276```

5095 5277 

5096Ein [`deniedMcpServers`](#deniedmcpservers)-Eintrag hat Vorrang, daher wird ein Server auf beiden Listen blockiert. Sobald die Liste einen `serverCommand`-Eintrag enthält, muss ein stdio-Server mit einem `serverCommand`-Eintrag übereinstimmen, und sobald sie einen `serverUrl`-Eintrag enthält, muss ein Remote-Server mit einem `serverUrl`-Eintrag übereinstimmen: eine `serverName`-Übereinstimmung lässt diese Art von Server nicht mehr zu. Siehe [Richtlinienbasierte Kontrolle mit Zulassungs- und Ablehnungslisten](/docs/de/managed-mcp#policy-based-control-with-allowlists-and-denylists).5278Ein [`deniedMcpServers`](#deniedmcpservers)-Eintrag hat Vorrang, daher wird ein Server auf beiden Listen blockiert. Sobald die Liste einen `serverCommand`-Eintrag enthält, muss ein stdio-Server mit einem `serverCommand`-Eintrag übereinstimmen, und sobald sie einen `serverUrl`-Eintrag enthält, muss ein Remote-Server mit einem `serverUrl`-Eintrag übereinstimmen: eine `serverName`-Übereinstimmung lässt diese Art von Server nicht mehr zu. Siehe [Richtlinienbasierte Kontrolle mit Allowlists und Denylists](/docs/de/managed-mcp#policy-based-control-with-allowlists-and-denylists).

5097 5279 

5098<h3 id="allowmanagedmcpserversonly">5280<h3 id="allowmanagedmcpserversonly">

5099 `allowManagedMcpServersOnly`5281 `allowManagedMcpServersOnly`

5100</h3>5282</h3>

5101 5283 

5102Machen Sie die verwaltete Zulassungsliste zur einzigen, die gilt. Claude Code liest dann [`allowedMcpServers`](#allowedmcpservers) nur aus verwalteten Einstellungen und ignoriert Zulassungslisten in Benutzer-, Projekt- und lokalen Einstellungen; [`deniedMcpServers`](#deniedmcpservers) wird weiterhin aus jedem Einstellungsbereich zusammengeführt, daher können Benutzer weiterhin Server für sich selbst blockieren. Administratoren setzen es so, dass die eigenen Einstellungen eines Benutzers nicht erweitern können, was die verwaltete Zulassungsliste zulässt.5284Machen Sie die verwaltete Allowlist zur einzigen, die gilt. Claude Code liest dann [`allowedMcpServers`](#allowedmcpservers) nur aus verwalteten Einstellungen und ignoriert Allowlists in Benutzer-, Projekt- und lokalen Einstellungen; [`deniedMcpServers`](#deniedmcpservers) wird weiterhin aus jedem Geltungsbereich der Einstellungen zusammengeführt, daher können Benutzer weiterhin Server für sich selbst blockieren. Administratoren setzen es so, dass die eigenen Einstellungen eines Benutzers nicht erweitern können, was die verwaltete Allowlist zulässt.

5103 5285 

5104* **Bereich**: [`Managed`](#scopes)5286* **Geltungsbereich**: [`Managed`](#scopes)

5105* **Typ**: Boolean5287* **Typ**: Boolean

5106 * `true`: Claude Code liest `allowedMcpServers` nur aus verwalteten Einstellungen und ignoriert Zulassungslisten in Benutzer-, Projekt- und lokalen Einstellungen5288 * `true`: Claude Code liest `allowedMcpServers` nur aus verwalteten Einstellungen und ignoriert Allowlists in Benutzer-, Projekt- und lokalen Einstellungen

5107 * `false`: Zulassungslisten aus jedem Einstellungsbereich werden zusammengeführt5289 * `false`: Allowlists aus jedem Geltungsbereich der Einstellungen werden zusammengeführt

5108* **Standard**: `false`, daher werden Zulassungslisten aus jedem Einstellungsbereich zusammengeführt5290* **Standard**: `false`, daher werden Allowlists aus jedem Geltungsbereich der Einstellungen zusammengeführt

5109 5291 

5110Dieses Beispiel sperrt die Zulassungsliste auf verwaltete Einstellungen und erlaubt nur den Server namens `github`:5292Dieses Beispiel sperrt die Allowlist auf verwaltete Einstellungen und erlaubt nur den Server namens `github`:

5111 5293 

5112```json managed-settings.json theme={null}5294```json managed-settings.json theme={null}

5113{5295{


5118}5300}

5119```5301```

5120 5302 

5121Benutzer können weiterhin ihre eigenen MCP-Server hinzufügen; nur Server, die mit der verwalteten Zulassungsliste übereinstimmen, werden geladen. Siehe [Zulassungsliste auf verwaltete Einstellungen beschränken](/docs/de/managed-mcp#restrict-the-allowlist-to-managed-settings-only).5303Benutzer können weiterhin ihre eigenen MCP-Server hinzufügen; nur Server, die mit der verwalteten Allowlist übereinstimmen, werden geladen. Siehe [Allowlist auf verwaltete Einstellungen beschränken](/docs/de/managed-mcp#restrict-the-allowlist-to-managed-settings-only).

5122 5304 

5123<h3 id="deniedmcpservers">5305<h3 id="deniedmcpservers">

5124 `deniedMcpServers`5306 `deniedMcpServers`


5126 5308 

5127Blockieren Sie bestimmte MCP-Server. Claude Code weigert sich, einen übereinstimmenden Server zu laden, überall dort, wo er definiert ist, einschließlich Plugin-Server, Server, die mit `--mcp-config` übergeben werden, Server aus `managed-mcp.json`, Server aus [`managedMcpServers`](#managedmcpservers), und die claude.ai-Konnektoren, [die es selbst abruft](/docs/de/mcp#how-connectors-reach-claude-code). In-Process-`type: "sdk"`-Server sind ausgenommen; die App, die die Sitzung gestartet hat, registriert sie.5309Blockieren Sie bestimmte MCP-Server. Claude Code weigert sich, einen übereinstimmenden Server zu laden, überall dort, wo er definiert ist, einschließlich Plugin-Server, Server, die mit `--mcp-config` übergeben werden, Server aus `managed-mcp.json`, Server aus [`managedMcpServers`](#managedmcpservers), und die claude.ai-Konnektoren, [die es selbst abruft](/docs/de/mcp#how-connectors-reach-claude-code). In-Process-`type: "sdk"`-Server sind ausgenommen; die App, die die Sitzung gestartet hat, registriert sie.

5128 5310 

5129* **Bereich**: [`Any file`](#scopes). Einträge aus jeder Datei werden in eine Ablehnungsliste zusammengeführt, und [`allowManagedMcpServersOnly`](#allowmanagedmcpserversonly) ändert das nicht. Stellen Sie es in verwalteten Einstellungen bereit, um es durchzusetzen.5311* **Geltungsbereich**: [`Any file`](#scopes). Einträge aus jeder Datei werden in eine Denylist zusammengeführt, und [`allowManagedMcpServersOnly`](#allowmanagedmcpserversonly) ändert das nicht. Stellen Sie es in verwalteten Einstellungen bereit, um es durchzusetzen.

5130* **Typ**: Array von Objekten, jedes mit genau einem Schlüssel: `serverName`, ein String, daher funktioniert der Anzeigename eines claude.ai-Konnektors wie `"claude.ai Slack"`; `serverCommand`, ein Array des Befehls und seiner Argumente, die genau übereinstimmen; oder `serverUrl`, ein URL-Muster mit `*`-Platzhaltern5312* **Typ**: Array von Objekten, jedes mit genau einem Schlüssel: `serverName`, ein String, daher funktioniert der Anzeigename eines claude.ai-Konnektors wie `"claude.ai Slack"`; `serverCommand`, ein Array des Befehls und seiner Argumente, die genau übereinstimmen; oder `serverUrl`, ein URL-Muster mit `*`-Platzhaltern

5131* **Standard**: nicht gesetzt, daher wird kein Server blockiert; ein leeres Array blockiert auch nichts5313* **Standard**: nicht gesetzt, daher wird kein Server blockiert; ein leeres Array blockiert auch nichts

5132 5314 


5138}5320}

5139```5321```

5140 5322 

5141Die Ablehnungsliste hat Vorrang vor [`allowedMcpServers`](#allowedmcpservers), daher wird ein Server auf beiden Listen blockiert. Siehe [Richtlinienbasierte Kontrolle mit Zulassungs- und Ablehnungslisten](/docs/de/managed-mcp#policy-based-control-with-allowlists-and-denylists).5323Die Denylist hat Vorrang vor [`allowedMcpServers`](#allowedmcpservers), daher wird ein Server auf beiden Listen blockiert. Siehe [Richtlinienbasierte Kontrolle mit Allowlists und Denylists](/docs/de/managed-mcp#policy-based-control-with-allowlists-and-denylists).

5142 5324 

5143<h3 id="disableclaudeaiconnectors">5325<h3 id="disableclaudeaiconnectors">

5144 `disableClaudeAiConnectors`5326 `disableClaudeAiConnectors`


5146 5328 

5147Schalten Sie die [claude.ai-MCP-Konnektoren](/docs/de/mcp#use-mcp-servers-from-claude-ai) aus, [die Claude Code selbst abruft](/docs/de/mcp#how-connectors-reach-claude-code), sodass es sie weder abruft noch verbindet. Ein `true` in einer beliebigen Einstellungsdatei gilt: eine eingecheckte Projekt-`.claude/settings.json` kann ein Repository von diesen Konnektoren abmelden, aber ein Projekt-Level-`false` kann ein Benutzer- oder verwaltetes Level-`true` nicht überschreiben.5329Schalten Sie die [claude.ai-MCP-Konnektoren](/docs/de/mcp#use-mcp-servers-from-claude-ai) aus, [die Claude Code selbst abruft](/docs/de/mcp#how-connectors-reach-claude-code), sodass es sie weder abruft noch verbindet. Ein `true` in einer beliebigen Einstellungsdatei gilt: eine eingecheckte Projekt-`.claude/settings.json` kann ein Repository von diesen Konnektoren abmelden, aber ein Projekt-Level-`false` kann ein Benutzer- oder verwaltetes Level-`true` nicht überschreiben.

5148 5330 

5149* **Bereich**: [`Any file`](#scopes)5331* **Geltungsbereich**: [`Any file`](#scopes)

5150* **Typ**: Boolean5332* **Typ**: Boolean

5151 * `true`: Claude Code ruft diese Konnektoren weder ab noch verbindet sie5333 * `true`: Claude Code ruft diese Konnektoren weder ab noch verbindet sie

5152 * `false`: dasselbe wie nicht gesetzt; Claude Code ruft Ihre Konnektoren ab, es sei denn, eine andere Einstellungsdatei oder `ENABLE_CLAUDEAI_MCP_SERVERS` schaltet sie aus5334 * `false`: dasselbe wie nicht gesetzt; Claude Code ruft Ihre Konnektoren ab, es sei denn, eine andere Einstellungsdatei oder `ENABLE_CLAUDEAI_MCP_SERVERS` schaltet sie aus

5153* **Standard**: `false`, daher ruft Claude Code Ihre Konnektoren ab5335* **Standard**: `false`, daher ruft Claude Code Ihre Konnektoren ab

5154* **Pro-Sitzungs-Überschreibungen**: [`ENABLE_CLAUDEAI_MCP_SERVERS`](/docs/de/env-vars) auf `false` gesetzt schaltet Konnektoren für eine Sitzung aus; welcher der beiden sie ausschaltet, der andere kann sie nicht wieder einschalten5336* **Pro-Sitzungs-Überschreibungen**: [`ENABLE_CLAUDEAI_MCP_SERVERS`](/docs/de/env-vars) auf `false` gesetzt schaltet Konnektoren für eine Sitzung aus; welcher der beiden sie auch ausschaltet, der andere kann sie nicht wieder einschalten

5155 5337 

5156```json settings.json theme={null}5338```json settings.json theme={null}

5157{5339{


5167 5349 

5168Lehnen Sie bestimmte Server ab, die in der `.mcp.json`-Datei eines Projekts definiert sind, damit Claude Code sich nie mit ihnen verbindet oder Sie auffordert, sie zu genehmigen. Eine Ablehnung in einer beliebigen Einstellungsdatei gilt, einschließlich einer Projekt-`.claude/settings.json`, die in das Repository eingecheckt ist.5350Lehnen Sie bestimmte Server ab, die in der `.mcp.json`-Datei eines Projekts definiert sind, damit Claude Code sich nie mit ihnen verbindet oder Sie auffordert, sie zu genehmigen. Eine Ablehnung in einer beliebigen Einstellungsdatei gilt, einschließlich einer Projekt-`.claude/settings.json`, die in das Repository eingecheckt ist.

5169 5351 

5170* **Bereich**: [`Any file`](#scopes)5352* **Geltungsbereich**: [`Any file`](#scopes)

5171* **Typ**: Array von Strings, die Servernamen, wie sie in `.mcp.json` erscheinen5353* **Typ**: Array von Strings, die Servernamen, wie sie in `.mcp.json` erscheinen

5172* **Standard**: nicht gesetzt5354* **Standard**: nicht gesetzt

5173 5355 


5183 `enableAllProjectMcpServers`5365 `enableAllProjectMcpServers`

5184</h3>5366</h3>

5185 5367 

5186Genehmigen Sie jeden MCP-Server, der in Projekt-`.mcp.json`-Dateien definiert ist, ohne eine Eingabeaufforderung. Claude Code schreibt diesen Schlüssel in `.claude/settings.local.json`, wenn Sie wählen, alle Server im Genehmigungsdialog zu genehmigen.5368Genehmigen Sie jeden MCP-Server, der in Projekt-`.mcp.json`-Dateien definiert ist, ohne Nachfrage. Claude Code schreibt diesen Schlüssel in `.claude/settings.local.json`, wenn Sie wählen, alle Server im Genehmigungsdialog zu genehmigen.

5187 5369 

5188* **Bereich**: [`Any file`](#scopes). In einem Ordner, dessen Vertrauensdialog Sie nicht akzeptiert haben, berücksichtigt Claude Code ihn aus Benutzereinstellungen, verwalteten Einstellungen und `--settings` und ignoriert ihn in der gemeinsamen Projektdatei, sowohl in der Sitzung als auch für `claude mcp list` und `claude mcp get`; [Projektserver-Genehmigungen und Workspace-Vertrauen](/docs/de/mcp#project-server-approvals-and-workspace-trust) sagt, wann eine nicht nachverfollte `.claude/settings.local.json` auch zählt.5370* **Geltungsbereich**: [`Any file`](#scopes). In einem Ordner, dessen Vertrauensdialog Sie nicht akzeptiert haben, berücksichtigt Claude Code ihn aus Benutzereinstellungen, verwalteten Einstellungen und `--settings` und ignoriert ihn in der gemeinsamen Projektdatei, sowohl in der Sitzung als auch für `claude mcp list` und `claude mcp get`; [Projektserver-Genehmigungen und Workspace-Vertrauen](/docs/de/mcp#project-server-approvals-and-workspace-trust) beschreibt, wann eine nicht nachverfolgte `.claude/settings.local.json` ebenfalls zählt.

5189* **Typ**: Boolean5371* **Typ**: Boolean

5190 * `true`: Claude Code genehmigt jeden MCP-Server, der in Projekt-`.mcp.json`-Dateien definiert ist, ohne eine Eingabeaufforderung5372 * `true`: Claude Code genehmigt jeden MCP-Server, der in Projekt-`.mcp.json`-Dateien definiert ist, ohne Nachfrage

5191 * `false`: Claude Code fordert Sie auf, jeden Server zu genehmigen. In einem vertrauenswürdigen Ordner überschreibt ein `false` in einer Datei mit höherer Priorität ein `true` in einer niedrigeren; in einem Ordner, dem Sie nicht vertrauen, ist ein `true` in einer beliebigen berücksichtigten Datei ausreichend5373 * `false`: Claude Code fordert Sie auf, jeden Server zu genehmigen. In einem vertrauenswürdigen Ordner überschreibt ein `false` in einer Datei mit höherem Vorrang ein `true` in einer niedrigeren; in einem Ordner, dem Sie nicht vertrauen, ist ein `true` in einer beliebigen berücksichtigten Datei ausreichend

5192* **Standard**: nicht gesetzt, daher fordert Claude Code Sie auf, jeden Server zu genehmigen5374* **Standard**: nicht gesetzt, daher fordert Claude Code Sie auf, jeden Server zu genehmigen

5193 5375 

5194```json settings.json theme={null}5376```json settings.json theme={null}


5205 5387 

5206Genehmigen Sie bestimmte Server, die in Projekt-`.mcp.json`-Dateien definiert sind, damit Claude Code sich mit ihnen verbindet, ohne zu fragen. Claude Code schreibt diesen Schlüssel in `.claude/settings.local.json`, wenn Sie einen Server im Genehmigungsdialog genehmigen.5388Genehmigen Sie bestimmte Server, die in Projekt-`.mcp.json`-Dateien definiert sind, damit Claude Code sich mit ihnen verbindet, ohne zu fragen. Claude Code schreibt diesen Schlüssel in `.claude/settings.local.json`, wenn Sie einen Server im Genehmigungsdialog genehmigen.

5207 5389 

5208* **Bereich**: [`Any file`](#scopes). In einem Ordner, dessen Vertrauensdialog Sie nicht akzeptiert haben, berücksichtigt Claude Code ihn aus Benutzereinstellungen, verwalteten Einstellungen und `--settings` und ignoriert ihn in der gemeinsamen Projektdatei, sowohl in der Sitzung als auch für `claude mcp list` und `claude mcp get`; [Projektserver-Genehmigungen und Workspace-Vertrauen](/docs/de/mcp#project-server-approvals-and-workspace-trust) sagt, wann eine nicht nachverfollte `.claude/settings.local.json` auch zählt.5390* **Geltungsbereich**: [`Any file`](#scopes). In einem Ordner, dessen Vertrauensdialog Sie nicht akzeptiert haben, berücksichtigt Claude Code ihn aus Benutzereinstellungen, verwalteten Einstellungen und `--settings` und ignoriert ihn in der gemeinsamen Projektdatei, sowohl in der Sitzung als auch für `claude mcp list` und `claude mcp get`; [Projektserver-Genehmigungen und Workspace-Vertrauen](/docs/de/mcp#project-server-approvals-and-workspace-trust) beschreibt, wann eine nicht nachverfolgte `.claude/settings.local.json` ebenfalls zählt.

5209* **Typ**: Array von Strings, die Servernamen, wie sie in `.mcp.json` erscheinen5391* **Typ**: Array von Strings, die Servernamen, wie sie in `.mcp.json` erscheinen

5210* **Standard**: nicht gesetzt5392* **Standard**: nicht gesetzt

5211 5393 


5225 5407 

5226Stellen Sie Remote-MCP-Server aus verwalteten Einstellungen für jeden Benutzer bereit. Benutzer behalten die Server, die sie selbst hinzufügen, und können die Server, die Sie bereitstellen, nicht bearbeiten oder entfernen. Erfordert Claude Code v2.1.259 oder später.5408Stellen Sie Remote-MCP-Server aus verwalteten Einstellungen für jeden Benutzer bereit. Benutzer behalten die Server, die sie selbst hinzufügen, und können die Server, die Sie bereitstellen, nicht bearbeiten oder entfernen. Erfordert Claude Code v2.1.259 oder später.

5227 5409 

5228* **Bereich**: [`Managed`](#scopes). Claude Code verwirft den Schlüssel mit einer Warnung in Benutzer-, Projekt- und lokalen Einstellungen und liest ihn nicht in der Code-Registerkarte der Claude Desktop-App bei einer Drittanbieter-Bereitstellung oder in den Cowork-Sitzungen der App, wo Claude Desktop die MCP-Server dieser Sitzungen selbst bereitstellt und sperrt.5410* **Geltungsbereich**: [`Managed`](#scopes). Claude Code verwirft den Schlüssel mit einer Warnung in Benutzer-, Projekt- und lokalen Einstellungen und liest ihn nicht in der Code-Registerkarte der Claude Desktop-App bei einer Drittanbieter-Bereitstellung oder in den Cowork-Sitzungen der App, wo Claude Desktop die MCP-Server dieser Sitzungen selbst bereitstellt und sperrt.

5229* **Typ**: Objekt, das nach Servernamen verschlüsselt ist. Jeder Eintrag hat die `.mcp.json`-Form für einen `http`- oder `sse`-Server: eine erforderliche `https://` `url` und optional `headers`, `oauth` und die anderen HTTP- und SSE-Optionen. Claude Code verwirft Einträge, die die Validierung nicht bestehen, und [Was ein Eintrag enthalten kann](/docs/de/managed-mcp#what-an-entry-can-contain) listet die Bedingungen auf5411* **Typ**: Objekt, das nach Servernamen verschlüsselt ist. Jeder Eintrag hat die `.mcp.json`-Form für einen `http`- oder `sse`-Server: eine erforderliche `https://` `url` und optional `headers`, `oauth` und die anderen HTTP- und SSE-Optionen. Claude Code verwirft Einträge, die die Validierung nicht bestehen, und [Was ein Eintrag enthalten kann](/docs/de/managed-mcp#what-an-entry-can-contain) listet die Bedingungen auf

5230* **Standard**: nicht gesetzt, daher stellen verwaltete Einstellungen keine Server bereit5412* **Standard**: nicht gesetzt, daher stellen verwaltete Einstellungen keine Server bereit

5231 5413 


5242}5424}

5243```5425```

5244 5426 

5245Für Vorrang, wie bereitgestellte Server mit `managed-mcp.json` und den Zulassungs- und Ablehnungslisten kombiniert werden, und was Benutzer sehen, siehe [Server durch verwaltete Einstellungen bereitstellen](/docs/de/managed-mcp#provide-servers-through-managed-settings).5427Für Vorrang, wie bereitgestellte Server mit `managed-mcp.json` und den Allow- und Denylists kombiniert werden, und was Benutzer sehen, siehe [Server durch verwaltete Einstellungen bereitstellen](/docs/de/managed-mcp#provide-servers-through-managed-settings).

5246 5428 

5247<h2 id="agents-sessions-and-worktrees">5429<h2 id="agents-sessions-and-worktrees">

5248 Agenten, Sitzungen und Worktrees5430 Agenten, Sitzungen und Worktrees


5496 5678 

5497Erlauben Sie Claude, eine Push-Benachrichtigung an Ihr Telefon zu senden, wenn es entscheidet, dass dies sinnvoll ist, beispielsweise wenn eine lange Aufgabe abgeschlossen ist. Claude Code synchronisiert diese Wahl mit Ihrem Konto, und Push-Benachrichtigungen werden gesendet, während [Remote Control](/docs/de/remote-control) verbunden ist. Wird in `/config` als **Push wenn Claude entscheidet** angezeigt.5679Erlauben Sie Claude, eine Push-Benachrichtigung an Ihr Telefon zu senden, wenn es entscheidet, dass dies sinnvoll ist, beispielsweise wenn eine lange Aufgabe abgeschlossen ist. Claude Code synchronisiert diese Wahl mit Ihrem Konto, und Push-Benachrichtigungen werden gesendet, während [Remote Control](/docs/de/remote-control) verbunden ist. Wird in `/config` als **Push wenn Claude entscheidet** angezeigt.

5498 5680 

5499* **Bereich**: [`Any file`](#scopes). Claude Code liest auch einen Wert, der von älteren Versionen in `~/.claude.json` hinterlassen wurde.5681* **Geltungsbereich**: [`Any file`](#scopes). Claude Code liest auch einen Wert, der von älteren Versionen in `~/.claude.json` hinterlassen wurde.

5500* **Typ**: Boolean5682* **Typ**: Boolean

5501 * `true`: Claude kann eine Push-Benachrichtigung an Ihr Telefon senden, wenn es entscheidet, dass dies sinnvoll ist5683 * `true`: Claude kann eine Push-Benachrichtigung an Ihr Telefon senden, wenn es entscheidet, dass dies sinnvoll ist

5502 * `false`: Claude sendet diese Benachrichtigungen nicht5684 * `false`: Claude sendet diese Benachrichtigungen nicht


5516 5698 

5517Zeigen Sie eine einzeilige Sitzungszusammenfassung an, wenn Sie nach einigen Minuten Abwesenheit zum Terminal zurückkehren. Setzen Sie es auf `false` oder deaktivieren Sie **Sitzungszusammenfassung** in `/config`, um die Zusammenfassung zu deaktivieren.5699Zeigen Sie eine einzeilige Sitzungszusammenfassung an, wenn Sie nach einigen Minuten Abwesenheit zum Terminal zurückkehren. Setzen Sie es auf `false` oder deaktivieren Sie **Sitzungszusammenfassung** in `/config`, um die Zusammenfassung zu deaktivieren.

5518 5700 

5519* **Bereich**: [`Any file`](#scopes)5701* **Geltungsbereich**: [`Any file`](#scopes)

5520* **Typ**: Boolean5702* **Typ**: Boolean

5521 * `true`: Sie sehen eine einzeilige Sitzungszusammenfassung, wenn Sie nach einigen Minuten Abwesenheit zurückkehren5703 * `true`: Sie sehen eine einzeilige Sitzungszusammenfassung, wenn Sie nach einigen Minuten Abwesenheit zurückkehren

5522 * `false`: Claude Code zeigt keine Zusammenfassung an5704 * `false`: Claude Code zeigt keine Zusammenfassung an

5523* **Standard**: nicht gesetzt, daher ist die Zusammenfassung aktiviert5705* **Standard**: nicht gesetzt, daher ist die Zusammenfassung aktiviert

5524* **Sitzungsspezifische Außerkraftsetzungen**: [`CLAUDE_CODE_ENABLE_AWAY_SUMMARY`](/docs/de/env-vars) hat Vorrang vor diesem Schlüssel für eine Sitzung, in beide Richtungen5706* **Sitzungsspezifische Überschreibungen**: [`CLAUDE_CODE_ENABLE_AWAY_SUMMARY`](/docs/de/env-vars) hat Vorrang vor diesem Schlüssel für eine Sitzung, in beide Richtungen

5525 5707 

5526```json settings.json theme={null}5708```json settings.json theme={null}

5527{5709{


5529}5711}

5530```5712```

5531 5713 

5532Claude Code zeigt die Zusammenfassung niemals im nicht-interaktiven Modus an.5714Claude Code zeigt die Zusammenfassung niemals im nicht interaktiven Modus an.

5533 5715 

5534<h3 id="disableartifact">5716<h3 id="disableartifact">

5535 `disableArtifact`5717 `disableArtifact`


5541 5723 

5542Verwenden Sie stattdessen [`enableArtifact`](#enableartifact), um das [Artifact](/docs/de/artifacts)-Tool auszuschalten, das Sitzungsausgaben als private Webseite auf claude.ai veröffentlicht. Wenn Sie die Zeile **Artifacts** in `/config` ausschalten, schreibt Claude Code `enableArtifact` in Ihre Benutzereinstellungen und löscht diesen Schlüssel.5724Verwenden Sie stattdessen [`enableArtifact`](#enableartifact), um das [Artifact](/docs/de/artifacts)-Tool auszuschalten, das Sitzungsausgaben als private Webseite auf claude.ai veröffentlicht. Wenn Sie die Zeile **Artifacts** in `/config` ausschalten, schreibt Claude Code `enableArtifact` in Ihre Benutzereinstellungen und löscht diesen Schlüssel.

5543 5725 

5544* **Bereich**: [`Any file`](#scopes)5726* **Geltungsbereich**: [`Any file`](#scopes)

5545* **Typ**: Boolean5727* **Typ**: Boolean

5546 * `true`: Claude Code schaltet das Artifact-Tool für jede Sitzung aus, auf die die Datei zutrifft, und keine andere Datei schaltet es wieder ein. Vor v2.1.242 konnte eine Datei mit höherer Priorität eine `true` einer Datei mit niedrigerer Priorität überschreiben, anstatt dass der Schlüssel als Sperre fungiert5728 * `true`: Claude Code schaltet das Artifact-Tool für jede Sitzung aus, auf die die Datei zutrifft, und keine andere Datei schaltet es wieder ein

5547 * `false`: ignoriert; um das Tool eingeschaltet zu lassen, entfernen Sie den Schlüssel5729 * `false`: ignoriert; um das Tool eingeschaltet zu lassen, entfernen Sie den Schlüssel

5548* **Standard**: nicht gesetzt, daher folgt das Tool Ihrer Konto-[Verfügbarkeit](/docs/de/artifacts#availability)5730* **Standard**: nicht gesetzt, daher folgt das Tool Ihrer Konto-[Verfügbarkeit](/docs/de/artifacts#availability)

5549* **Sitzungsspezifische Außerkraftsetzungen**: [`CLAUDE_CODE_DISABLE_ARTIFACT`](/docs/de/env-vars) auf `1` gesetzt schaltet das Tool für eine Sitzung aus5731* **Sitzungsspezifische Überschreibungen**: [`CLAUDE_CODE_DISABLE_ARTIFACT`](/docs/de/env-vars) auf `1` gesetzt schaltet das Tool für eine Sitzung aus

5550 5732 

5551```json settings.json theme={null}5733```json settings.json theme={null}

5552{5734{


5562 5744 

5563Verhindern Sie, dass Claude Code den `claude-cli://`-Protokoll-Handler beim Betriebssystem registriert, was es ansonsten nach dem ersten Prompt einer interaktiven Sitzung tut. [Deep Links](/docs/de/deep-links) ermöglichen es externen Tools, eine Claude Code-Sitzung mit einem vorausgefüllten Prompt zu öffnen. Setzen Sie dies in Umgebungen, in denen die Registrierung von Protokoll-Handlern eingeschränkt oder separat verwaltet wird.5745Verhindern Sie, dass Claude Code den `claude-cli://`-Protokoll-Handler beim Betriebssystem registriert, was es ansonsten nach dem ersten Prompt einer interaktiven Sitzung tut. [Deep Links](/docs/de/deep-links) ermöglichen es externen Tools, eine Claude Code-Sitzung mit einem vorausgefüllten Prompt zu öffnen. Setzen Sie dies in Umgebungen, in denen die Registrierung von Protokoll-Handlern eingeschränkt oder separat verwaltet wird.

5564 5746 

5565* **Bereich**: [`Any file`](#scopes)5747* **Geltungsbereich**: [`Any file`](#scopes)

5566* **Typ**: die Zeichenkette `"disable"`5748* **Typ**: die Zeichenkette `"disable"`

5567* **Standard**: nicht gesetzt, daher registriert Claude Code den Handler5749* **Standard**: nicht gesetzt, daher registriert Claude Code den Handler

5568 5750 


5578 5760 

5579Schalten Sie Code-Sitzungen aus, die auf dem Gerät in der [Desktop-App](/docs/de/desktop#local-sessions-on-managed-devices) ausgeführt werden, für Bereitstellungen, bei denen Entwickler auf Remote-Maschinen über SSH arbeiten sollten. In der Code-Registerkarte bleibt die **Local**-Umgebung in der Umgebungs-Dropdown-Liste, ist aber ausgegraut und kann nicht ausgewählt werden, mit einem Tooltip, das besagt, dass Ihre Organisation sie deaktiviert hat; unter Windows ist der WSL-Eintrag auf die gleiche Weise ausgegraut, obwohl ob WSL-Sitzungen auf einem verwalteten Gerät überhaupt ausgeführt werden, [separat geregelt wird](/docs/de/admin-setup#wsl-sessions-in-claude-code-desktop). Neue Sitzungen werden standardmäßig auf die erste [SSH-Verbindung](/docs/de/desktop#ssh-sessions) gesetzt, falls eine konfiguriert ist, und die App weigert sich, eine Sitzung auf dem Gerät zu starten oder fortzusetzen, einschließlich einer SSH-Verbindung zurück zur gleichen Maschine. SSH-Sitzungen zu anderen Hosts und Cloud-Sitzungen sind nicht betroffen. Die Desktop-App liest diesen Schlüssel; die Terminal-CLI ignoriert ihn. Erfordert Claude Desktop v1.37937.0 oder später.5761Schalten Sie Code-Sitzungen aus, die auf dem Gerät in der [Desktop-App](/docs/de/desktop#local-sessions-on-managed-devices) ausgeführt werden, für Bereitstellungen, bei denen Entwickler auf Remote-Maschinen über SSH arbeiten sollten. In der Code-Registerkarte bleibt die **Local**-Umgebung in der Umgebungs-Dropdown-Liste, ist aber ausgegraut und kann nicht ausgewählt werden, mit einem Tooltip, das besagt, dass Ihre Organisation sie deaktiviert hat; unter Windows ist der WSL-Eintrag auf die gleiche Weise ausgegraut, obwohl ob WSL-Sitzungen auf einem verwalteten Gerät überhaupt ausgeführt werden, [separat geregelt wird](/docs/de/admin-setup#wsl-sessions-in-claude-code-desktop). Neue Sitzungen werden standardmäßig auf die erste [SSH-Verbindung](/docs/de/desktop#ssh-sessions) gesetzt, falls eine konfiguriert ist, und die App weigert sich, eine Sitzung auf dem Gerät zu starten oder fortzusetzen, einschließlich einer SSH-Verbindung zurück zur gleichen Maschine. SSH-Sitzungen zu anderen Hosts und Cloud-Sitzungen sind nicht betroffen. Die Desktop-App liest diesen Schlüssel; die Terminal-CLI ignoriert ihn. Erfordert Claude Desktop v1.37937.0 oder später.

5580 5762 

5581* **Bereich**: [`Managed`](#scopes)5763* **Geltungsbereich**: [`Managed`](#scopes)

5582* **Typ**: Boolean; nur der JSON-Boolean `true` hat Auswirkungen5764* **Typ**: Boolean; nur der JSON-Boolean `true` hat Auswirkungen

5583 * `true`: die Desktop-App bietet keine Code-Sitzungen auf dem Gerät an; vorhandene lokale Sitzungen bleiben aufgelistet, können aber nicht fortgesetzt werden5765 * `true`: die Desktop-App bietet keine Code-Sitzungen auf dem Gerät an; vorhandene lokale Sitzungen bleiben aufgelistet, können aber nicht fortgesetzt werden

5584 * `false`: lokale Sitzungen bleiben verfügbar5766 * `false`: lokale Sitzungen bleiben verfügbar


5600 5782 

5601Schalten Sie [Remote Control](/docs/de/remote-control) aus: Claude Code lehnt dann `claude remote-control`, das Flag `--remote-control`, Auto-Start und den In-Session-Toggle ab und meldet, dass die Richtlinie Ihrer Organisation es deaktiviert hat. Platzieren Sie es in [verwalteten Einstellungen](/docs/de/managed-settings) für die MDM-Durchsetzung pro Gerät.5783Schalten Sie [Remote Control](/docs/de/remote-control) aus: Claude Code lehnt dann `claude remote-control`, das Flag `--remote-control`, Auto-Start und den In-Session-Toggle ab und meldet, dass die Richtlinie Ihrer Organisation es deaktiviert hat. Platzieren Sie es in [verwalteten Einstellungen](/docs/de/managed-settings) für die MDM-Durchsetzung pro Gerät.

5602 5784 

5603* **Bereich**: [`Any file`](#scopes)5785* **Geltungsbereich**: [`Any file`](#scopes)

5604* **Typ**: Boolean5786* **Typ**: Boolean

5605 * `true`: Claude Code lehnt `claude remote-control`, das Flag `--remote-control`, Auto-Start und den In-Session-Toggle ab5787 * `true`: Claude Code lehnt `claude remote-control`, das Flag `--remote-control`, Auto-Start und den In-Session-Toggle ab

5606 * `false`: Remote Control bleibt verfügbar5788 * `false`: Remote Control bleibt verfügbar


5618 5800 

5619Schalten Sie das [Artifact](/docs/de/artifacts)-Tool aus, das Sitzungsausgaben als private Webseite auf claude.ai veröffentlicht. Wenn Sie die Zeile **Artifacts** in `/config` ausschalten, schreibt Claude Code diesen Schlüssel in Ihre Benutzereinstellungen, daher bearbeiten Sie ihn normalerweise nicht von Hand. Erfordert Claude Code v2.1.196 oder später.5801Schalten Sie das [Artifact](/docs/de/artifacts)-Tool aus, das Sitzungsausgaben als private Webseite auf claude.ai veröffentlicht. Wenn Sie die Zeile **Artifacts** in `/config` ausschalten, schreibt Claude Code diesen Schlüssel in Ihre Benutzereinstellungen, daher bearbeiten Sie ihn normalerweise nicht von Hand. Erfordert Claude Code v2.1.196 oder später.

5620 5802 

5621* **Bereich**: [`Any file`](#scopes). Jede Datei kann das Tool ausschalten, und keine kann es wieder einschalten.5803* **Geltungsbereich**: [`Any file`](#scopes). Jede Datei kann das Tool ausschalten, und keine kann es wieder einschalten.

5622* **Typ**: Boolean5804* **Typ**: Boolean

5623 * `false`: Claude Code schaltet das Artifact-Tool für jede Sitzung aus, auf die die Datei zutrifft5805 * `false`: Claude Code schaltet das Artifact-Tool für jede Sitzung aus, auf die die Datei zutrifft

5624 * `true`: dasselbe wie das Weglassen des Schlüssels, da es niemals eine `false` aus einer anderen Datei, von [`CLAUDE_CODE_DISABLE_ARTIFACT`](/docs/de/env-vars) oder von der [Admin-Einstellung](/docs/de/artifacts#manage-artifacts-for-your-organization) Ihrer Organisation überschreibt5806 * `true`: dasselbe wie das Weglassen des Schlüssels, da es niemals ein `false` aus einer anderen Datei, von [`CLAUDE_CODE_DISABLE_ARTIFACT`](/docs/de/env-vars) oder von der [Admin-Einstellung](/docs/de/artifacts#manage-artifacts-for-your-organization) Ihrer Organisation überschreibt

5625* **Standard**: nicht gesetzt, daher folgt das Tool Ihrer Konto-[Verfügbarkeit](/docs/de/artifacts#availability)5807* **Standard**: nicht gesetzt, daher folgt das Tool Ihrer Konto-[Verfügbarkeit](/docs/de/artifacts#availability)

5626 5808 

5627```json settings.json theme={null}5809```json settings.json theme={null}


5630}5812}

5631```5813```

5632 5814 

5633Während eine andere Quelle als Ihre eigenen Benutzereinstellungen das Tool ausgeschaltet hält, versteckt Claude Code die Zeile **Artifacts** in `/config`, da das Einschalten dort nichts ändern würde. [Artifacts deaktivieren](/docs/de/artifacts#disable-artifacts) listet alle Möglichkeiten auf, das Tool auszuschalten. Vor v2.1.242 ignorierte Claude Code diesen Schlüssel in Projekt- und lokalen Einstellungen, und eine Datei höher im [Prioritätsstapel](/docs/de/settings#settings-precedence) konnte das Tool über eine niedrigere Datei mit Aus wieder einschalten.5815Während eine andere Quelle als Ihre eigenen Benutzereinstellungen das Tool ausgeschaltet hält, versteckt Claude Code die Zeile **Artifacts** in `/config`, da das Einschalten dort nichts ändern würde. [Artifacts deaktivieren](/docs/de/artifacts#disable-artifacts) listet alle Möglichkeiten auf, das Tool auszuschalten.

5634 5816 

5635<h3 id="inputneedednotifenabled">5817<h3 id="inputneedednotifenabled">

5636 `inputNeededNotifEnabled`5818 `inputNeededNotifEnabled`

5637</h3>5819</h3>

5638 5820 

5639Erhalten Sie eine Push-Benachrichtigung auf Ihrem Telefon, wenn eine Berechtigungsaufforderung oder Frage auf Ihre Eingabe wartet. Claude Code sendet diese nur, während [Remote Control](/docs/de/remote-control) verbunden ist. Wird in `/config` als **Push wenn Aktionen erforderlich sind** angezeigt.5821Erhalten Sie eine Push-Benachrichtigung auf Ihrem Telefon, wenn eine Berechtigungsabfrage oder Frage auf Ihre Eingabe wartet. Claude Code sendet diese nur, während [Remote Control](/docs/de/remote-control) verbunden ist. Wird in `/config` als **Push wenn Aktionen erforderlich sind** angezeigt.

5640 5822 

5641* **Bereich**: [`Any file`](#scopes). Claude Code liest auch einen Wert, der von älteren Versionen in `~/.claude.json` hinterlassen wurde.5823* **Geltungsbereich**: [`Any file`](#scopes). Claude Code liest auch einen Wert, der von älteren Versionen in `~/.claude.json` hinterlassen wurde.

5642* **Typ**: Boolean5824* **Typ**: Boolean

5643 * `true`: Sie erhalten eine Push-Benachrichtigung auf Ihrem Telefon, wenn eine Berechtigungsaufforderung oder Frage wartet, während Remote Control verbunden ist5825 * `true`: Sie erhalten eine Push-Benachrichtigung auf Ihrem Telefon, wenn eine Berechtigungsabfrage oder Frage wartet, während Remote Control verbunden ist

5644 * `false`: Claude Code sendet keine solchen Benachrichtigungen5826 * `false`: Claude Code sendet keine solchen Benachrichtigungen

5645* **Standard**: `false`5827* **Standard**: `false`

5646 5828 


5656 `preferredNotifChannel`5838 `preferredNotifChannel`

5657</h3>5839</h3>

5658 5840 

5659Wählen Sie, wie Claude Code Sie benachrichtigt, wenn eine Aufgabe abgeschlossen ist oder eine Berechtigungsaufforderung wartet. Wird in `/config` als **Lokale Benachrichtigungen** angezeigt.5841Wählen Sie, wie Claude Code Sie benachrichtigt, wenn eine Aufgabe abgeschlossen ist oder eine Berechtigungsabfrage wartet. Wird in `/config` als **Lokale Benachrichtigungen** angezeigt.

5660 5842 

5661* **Bereich**: [`Any file`](#scopes). Claude Code liest auch einen Wert, der von älteren Versionen in `~/.claude.json` hinterlassen wurde.5843* **Geltungsbereich**: [`Any file`](#scopes). Claude Code liest auch einen Wert, der von älteren Versionen in `~/.claude.json` hinterlassen wurde.

5662* **Typ**: Zeichenkette, eine von:5844* **Typ**: Zeichenkette, eine von:

5663 * `"auto"`: Claude Code sendet eine Desktop-Benachrichtigung in iTerm2, Ghostty und Kitty, läutet die Glocke in Terminal.app nur, wenn die audible Glocke ausgeschaltet ist, und tut nichts anderswo5845 * `"auto"`: Claude Code sendet eine Desktop-Benachrichtigung in iTerm2, Ghostty und Kitty, läutet die Glocke in Terminal.app nur, wenn dessen hörbare Glocke ausgeschaltet ist, und tut anderswo nichts

5664 * `"terminal_bell"`: Claude Code läutet das Glockensignal in jedem Terminal5846 * `"terminal_bell"`: Claude Code läutet das Glockensignal in jedem Terminal

5665 * `"iterm2"`: Claude Code sendet eine iTerm2-Desktop-Benachrichtigung5847 * `"iterm2"`: Claude Code sendet eine iTerm2-Desktop-Benachrichtigung

5666 * `"iterm2_with_bell"`: Claude Code sendet eine iTerm2-Desktop-Benachrichtigung und läutet die Glocke5848 * `"iterm2_with_bell"`: Claude Code sendet eine iTerm2-Desktop-Benachrichtigung und läutet die Glocke


5675}5857}

5676```5858```

5677 5859 

5678Mit `"auto"` sendet Claude Code eine Desktop-Benachrichtigung in iTerm2, Ghostty und Kitty. In Terminal.app läutet es das Glockensignal nur, wenn Sie die audible Glocke von Terminal ausgeschaltet haben, und in anderen Terminals tut es nichts. Setzen Sie `"terminal_bell"`, um das Glockensignal in jedem Terminal zu läuten. Siehe [Erhalten Sie eine Terminal-Glocke oder Benachrichtigung](/docs/de/terminal-config#get-a-terminal-bell-or-notification).5860Mit `"auto"` sendet Claude Code eine Desktop-Benachrichtigung in iTerm2, Ghostty und Kitty. In Terminal.app läutet es das Glockensignal nur, wenn Sie die hörbare Glocke von Terminal ausgeschaltet haben, und in anderen Terminals tut es nichts. Setzen Sie `"terminal_bell"`, um das Glockensignal in jedem Terminal zu läuten. Siehe [Erhalten Sie eine Terminal-Glocke oder Benachrichtigung](/docs/de/terminal-config#get-a-terminal-bell-or-notification).

5679 5861 

5680<h3 id="remote-defaultenvironmentid">5862<h3 id="remote-defaultenvironmentid">

5681 `remote.defaultEnvironmentId`5863 `remote.defaultEnvironmentId`


5683 5865 

5684Wählen Sie die Standard-[Cloud-Umgebung](/docs/de/cloud-environments) für Cloud-Sitzungen, die Sie von der CLI aus erstellen, z. B. mit `claude --cloud`. Claude Code schreibt diesen Schlüssel in Ihre Benutzereinstellungen, wenn Sie eine Umgebung mit [`/remote-env`](/docs/de/cloud-environments#select-an-environment-from-the-cli) auswählen.5866Wählen Sie die Standard-[Cloud-Umgebung](/docs/de/cloud-environments) für Cloud-Sitzungen, die Sie von der CLI aus erstellen, z. B. mit `claude --cloud`. Claude Code schreibt diesen Schlüssel in Ihre Benutzereinstellungen, wenn Sie eine Umgebung mit [`/remote-env`](/docs/de/cloud-environments#select-an-environment-from-the-cli) auswählen.

5685 5867 

5686* **Bereich**: [`Any file`](#scopes). Für eine selbstgehostete Umgebungs-ID nur Benutzer- oder verwaltete Einstellungen oder das Flag `--settings`.5868* **Geltungsbereich**: [`Any file`](#scopes). Für eine selbstgehostete Umgebungs-ID nur Benutzer- oder verwaltete Einstellungen oder das Flag `--settings`.

5687* **Typ**: Zeichenkette, eine Umgebungs-ID wie `env_...` oder `ccpool_...`5869* **Typ**: Zeichenkette, eine Umgebungs-ID wie `env_...` oder `ccpool_...`

5688* **Standard**: nicht gesetzt, daher verwendet Claude Code die von Anthropic gehostete Umgebung, wenn Ihre Liste eine hat, und ansonsten die erste Umgebung in Ihrer Liste, die keine [Remote Control Bridge-Umgebung](/docs/de/cloud-environments#the-default-environment) ist, oder die erste Umgebung, wenn jede eine Bridge-Umgebung ist5870* **Standard**: nicht gesetzt, daher verwendet Claude Code die von Anthropic gehostete Umgebung, wenn Ihre Liste eine hat, und ansonsten die erste Umgebung in Ihrer Liste, die keine [Remote-Control-Bridge-Umgebung](/docs/de/cloud-environments#the-default-environment) ist, oder die erste Umgebung, wenn jede eine Bridge-Umgebung ist

5689* **Sitzungsspezifische Außerkraftsetzungen**: `--environment` hat Vorrang vor diesem Schlüssel für die eine Cloud-Sitzung, die es erstellt5871* **Sitzungsspezifische Überschreibungen**: `--environment` hat Vorrang vor diesem Schlüssel für die eine Cloud-Sitzung, die es erstellt

5690 5872 

5691```json settings.json theme={null}5873```json settings.json theme={null}

5692{5874{


5696}5878}

5697```5879```

5698 5880 

5699Eine von Anthropic gehostete Umgebungs-ID, die mit `env_` beginnt, folgt der Standard-Einstellungspriorität, daher überschreibt ein Wert in den Projekteinstellungen eines Repositorys Ihre Auswahl auf Benutzerebene. Eine [selbstgehostete Umgebungs](/docs/de/self-hosted-environments)-ID, die mit `ccpool_` beginnt, wird nur aus Benutzereinstellungen, verwalteten Einstellungen und dem Flag `--settings` berücksichtigt; Claude Code ignoriert eine in den Projekt- oder lokalen Einstellungen eines Repositorys, und `/remote-env` zeigt, welcher Wert ignoriert wurde, daher kann eine eingecheckte Datei Sitzungen nicht auf eine selbstgehostete Umgebung lenken, die Sie nicht ausgewählt haben.5881Eine von Anthropic gehostete Umgebungs-ID, die mit `env_` beginnt, folgt der Standard-Rangfolge der Einstellungen, daher überschreibt ein Wert in den Projekteinstellungen eines Repositorys Ihre Auswahl auf Benutzerebene. Eine [selbstgehostete Umgebungs](/docs/de/self-hosted-environments)-ID, die mit `ccpool_` beginnt, wird nur aus Benutzereinstellungen, verwalteten Einstellungen und dem Flag `--settings` berücksichtigt; Claude Code ignoriert eine in den Projekt- oder lokalen Einstellungen eines Repositorys, und `/remote-env` zeigt, welcher Wert ignoriert wurde, daher kann eine eingecheckte Datei Sitzungen nicht auf eine selbstgehostete Umgebung lenken, die Sie nicht ausgewählt haben.

5700 5882 

5701<h3 id="remotecontrolatstartup">5883<h3 id="remotecontrolatstartup">

5702 `remoteControlAtStartup`5884 `remoteControlAtStartup`


5704 5886 

5705Verbinden Sie [Remote Control](/docs/de/remote-control) automatisch, wenn jede interaktive Sitzung startet, anstatt auf `/remote-control` zu warten. Setzen Sie es auf `true`, um Auto-Connect einzuschalten, `false`, um es auszuschalten. Wird in `/config` als **Remote Control für alle Sitzungen aktivieren** angezeigt.5887Verbinden Sie [Remote Control](/docs/de/remote-control) automatisch, wenn jede interaktive Sitzung startet, anstatt auf `/remote-control` zu warten. Setzen Sie es auf `true`, um Auto-Connect einzuschalten, `false`, um es auszuschalten. Wird in `/config` als **Remote Control für alle Sitzungen aktivieren** angezeigt.

5706 5888 

5707* **Bereich**: [`Any file`](#scopes). Claude Code liest auch einen Wert, der von älteren Versionen in `~/.claude.json` hinterlassen wurde.5889* **Geltungsbereich**: [`Any file`](#scopes). Claude Code liest auch einen Wert, der von älteren Versionen in `~/.claude.json` hinterlassen wurde.

5708* **Typ**: Boolean5890* **Typ**: Boolean

5709 * `true`: Claude Code verbindet Remote Control automatisch, wenn jede interaktive Sitzung startet5891 * `true`: Claude Code verbindet Remote Control automatisch, wenn jede interaktive Sitzung startet

5710 * `false`: Claude Code wartet auf `/remote-control`5892 * `false`: Claude Code wartet auf `/remote-control`

5711* **Standard**: nicht gesetzt, daher folgt Auto-Connect dem Admin-Standard Ihrer Organisation, wenn einer gesetzt ist, und ansonsten dem aktuellen Standard von Claude Code5893* **Standard**: nicht gesetzt, daher gilt der [Auto-Connect-Standard](/docs/de/remote-control#enable-remote-control-for-all-sessions)

5712* **Sitzungsspezifische Außerkraftsetzungen**: `--remote-control` schaltet Remote Control für eine Sitzung ein, auch wenn dieser Schlüssel `false` ist, und kein Flag schaltet es für eine Sitzung aus5894* **Sitzungsspezifische Überschreibungen**: `--remote-control` schaltet Remote Control für eine Sitzung ein, auch wenn dieser Schlüssel `false` ist, und kein Flag schaltet es für eine Sitzung aus

5713 5895 

5714```json settings.json theme={null}5896```json settings.json theme={null}

5715{5897{


5717}5899}

5718```5900```

5719 5901 

5720Claude Code ignoriert eine `true` aus Projekt- oder lokalen Einstellungen, daher kann ein Repository Auto-Connect für seinen Checkout ausschalten, aber nicht einschalten. Für das vollständige Pro-Scope-Verhalten siehe [Remote Control für alle Sitzungen aktivieren](/docs/de/remote-control#enable-remote-control-for-all-sessions) und die [Sicherheitsschlüssel, bei denen der strengere Wert gilt](/docs/de/settings#security-keys-where-the-stricter-value-applies).5902Claude Code ignoriert ein `true` aus Projekt- oder lokalen Einstellungen, daher kann ein Repository Auto-Connect für seinen Checkout ausschalten, aber nicht einschalten. Für das vollständige Verhalten pro Geltungsbereich siehe [Remote Control für alle Sitzungen aktivieren](/docs/de/remote-control#enable-remote-control-for-all-sessions) und die [Sicherheitsschlüssel, bei denen der strengere Wert gilt](/docs/de/settings#security-keys-where-the-stricter-value-applies).

5721 5903 

5722<h3 id="sshconfigs">5904<h3 id="sshconfigs">

5723 `sshConfigs`5905 `sshConfigs`


5725 5907 

5726Fügen Sie SSH-Verbindungen zur [Desktop](/docs/de/desktop#pre-configure-ssh-connections-for-your-team)-Umgebungs-Dropdown hinzu. Administratoren verwenden es, um gemeinsame Verbindungen an ein Team zu verteilen. Verbindungen, die Sie in verwalteten Einstellungen definieren, werden als verwaltet angezeigt, daher können Benutzer sie auswählen, aber nicht bearbeiten oder löschen in der App.5908Fügen Sie SSH-Verbindungen zur [Desktop](/docs/de/desktop#pre-configure-ssh-connections-for-your-team)-Umgebungs-Dropdown hinzu. Administratoren verwenden es, um gemeinsame Verbindungen an ein Team zu verteilen. Verbindungen, die Sie in verwalteten Einstellungen definieren, werden als verwaltet angezeigt, daher können Benutzer sie auswählen, aber nicht bearbeiten oder löschen in der App.

5727 5909 

5728* **Bereich**: [`User or managed`](#scopes). Die Desktop-App liest diesen Schlüssel.5910* **Geltungsbereich**: [`User or managed`](#scopes). Die Desktop-App liest diesen Schlüssel.

5729* **Typ**: Array von Objekten, jedes mit erforderlichen `id`, `name` und `sshHost` und optionalen `sshPort` und `sshIdentityFile`5911* **Typ**: Array von Objekten, jedes mit erforderlichen `id`, `name` und `sshHost` und optionalen `sshPort` und `sshIdentityFile`

5730* **Standard**: nicht gesetzt5912* **Standard**: nicht gesetzt

5731 5913 


5747 `sshHostAllowlist`5929 `sshHostAllowlist`

5748</h3>5930</h3>

5749 5931 

5750Begrenzen Sie die Hosts, mit denen sich eine [Desktop SSH-Sitzung](/docs/de/desktop#restrict-which-ssh-hosts-users-can-connect-to) verbinden kann. Nur die Desktop-App liest diesen Schlüssel; die CLI nicht. Muster sind Groß-/Kleinschreibung-insensitiv: `*` passt auf jeden Host, `*.example.com` passt auf `example.com` und jede Subdomain, und alles andere ist eine genaue Übereinstimmung mit dem Hostnamen nach `~/.ssh/config`-Auflösung. Ein leeres Array schaltet SSH-Sitzungen aus.5932Begrenzen Sie die Hosts, mit denen sich eine [Desktop-SSH-Sitzung](/docs/de/desktop#restrict-which-ssh-hosts-users-can-connect-to) verbinden kann. Nur die Desktop-App liest diesen Schlüssel; die CLI nicht. Bei Mustern wird die Groß-/Kleinschreibung nicht beachtet: `*` passt auf jeden Host, `*.example.com` passt auf `example.com` und jede Subdomain, und alles andere ist eine genaue Übereinstimmung mit dem Hostnamen nach `~/.ssh/config`-Auflösung. Ein leeres Array schaltet SSH-Sitzungen aus.

5751 5933 

5752* **Bereich**: [`Managed`](#scopes)5934* **Geltungsbereich**: [`Managed`](#scopes)

5753* **Typ**: Array von Hostnamen-Mustern5935* **Typ**: Array von Hostnamen-Mustern

5754* **Standard**: nicht gesetzt, daher ist jeder Host erlaubt5936* **Standard**: nicht gesetzt, daher ist jeder Host erlaubt

5755 5937 


5769 5951 

5770Stellen Sie Anmeldedaten über Hilfsskripte bereit und erzwingen Sie für Organisationen eine Anmeldemethode oder Organisation. Siehe [Authentifizierung](/docs/de/authentication).5952Stellen Sie Anmeldedaten über Hilfsskripte bereit und erzwingen Sie für Organisationen eine Anmeldemethode oder Organisation. Siehe [Authentifizierung](/docs/de/authentication).

5771 5953 

5954<h3 id="allowedproviders">

5955 `allowedProviders`

5956</h3>

5957 

5958Listen Sie die Dienste auf, über die ein Computer Claude erreichen darf, etwa die Anthropic API, Amazon Bedrock oder ein LLM-Gateway. Eine Sitzung bei einem nicht aufgeführten Anbieter wird beim Start, bei der Anmeldung und beim nächsten Kontakt mit der API abgelehnt, sodass auch ein Wechsel zu einem nicht aufgeführten Anbieter während der Sitzung abgelehnt wird. Die [Ablehnungsmeldung](/docs/de/errors#managed-settings-dont-allow-this-api-provider) nennt, wodurch der Anbieter ausgewählt wurde, und die Schritte zum Fortfahren. Erfordert Claude Code v2.1.285 oder später.

5959 

5960* **Geltungsbereich**: [`Managed`](#scopes). Eine Liste, die die eigenen Admin-Quellen des Computers festlegen, also MDM-Richtlinien und verwaltete Einstellungsdateien, gilt weiterhin, wenn auch server-verwaltete Einstellungen eine Liste liefern: Eine Sitzung darf dann nur die Anbieter verwenden, die auf beiden Listen stehen, sodass eine server-verwaltete Liste die Zulassungen des Computers einschränken, aber nie erweitern kann. Welches `allowedProviders` einer Quelle auf dem Computer zählt, richtet sich danach, [wie Claude Code verwaltete Quellen kombiniert](/docs/de/managed-settings#how-claude-code-combines-managed-sources). Eine ausschließlich über server-verwaltete Einstellungen gelieferte Liste erreicht nur die Sitzungen, die [server-verwaltete Einstellungen abrufen](/docs/de/server-managed-settings#platform-availability).

5961* **Typ**: Array von Strings, jeweils einer von:

5962 * `"anthropic"`: die Anthropic API auf dem eigenen Host von Anthropic, über eine claude.ai- oder Console-Anmeldung oder einen API-Schlüssel. Kombinieren Sie ihn mit [`forceLoginMethod`](#forceloginmethod) oder [`forceLoginOrgUUID`](#forceloginorguuid), um zusätzlich die Anmeldung einzuschränken

5963 * `"bedrock"`: [Amazon Bedrock](/docs/de/amazon-bedrock)

5964 * `"vertex"`: [Google Cloud's Agent Platform](/docs/de/google-vertex-ai), früher Vertex AI

5965 * `"foundry"`: [Microsoft Foundry](/docs/de/microsoft-foundry)

5966 * `"anthropicAws"`: [Claude Platform on AWS](/docs/de/claude-platform-on-aws)

5967 * `"mantle"`: der Amazon Bedrock [Mantle-Endpunkt](/docs/de/amazon-bedrock#use-the-mantle-endpoint). Eine Sitzung, die [Mantle parallel zur Invoke API ausführt](/docs/de/amazon-bedrock#run-mantle-alongside-the-invoke-api), verwendet beide Anbieter; listen Sie dafür `"bedrock"` und `"mantle"` gemeinsam auf

5968 * `"customEndpoint"`: die Anthropic API oder die API eines Cloud-Anbieters, die an einen anderen Host gesendet wird, etwa ein [LLM-Gateway](/docs/de/llm-gateway), das über `ANTHROPIC_BASE_URL` angegeben ist, eine `ANTHROPIC_*_BASE_URL`-Variable eines Anbieters oder ein `ANTHROPIC_FOUNDRY_RESOURCE`-Wert, der kein reiner Ressourcenname ist. Claude Code lässt ihn nur für genau den Wert zu, den ein verwalteter [`env`](#env)-Block festlegt

5969 * `"gateway"`: eine [Cloud-Gateway](/docs/de/claude-apps-gateway)-Anmeldung

5970* **Standard**: nicht gesetzt, daher kann jeder Anbieter verwendet werden

5971 

5972```json managed-settings.json theme={null}

5973{

5974 "allowedProviders": ["anthropic", "bedrock"]

5975}

5976```

5977 

5978Der Eintrag eines Cloud-Anbieters bezeichnet den eigenen Dienst dieses Anbieters, einschließlich seiner regionalen, FIPS- und privaten Endpunkte.

5979 

5980Ein Eintrag, den Claude Code nicht als Anbieternamen erkennt, wird verworfen und gemeldet, und der Rest der Liste bleibt in Kraft. Bei einer leeren Liste oder einer Liste, deren Einträge allesamt nicht erkannt werden, lehnt Claude Code jeden Anbieter ab und startet auf dem Computer nicht.

5981 

5982<h4 id="endpoints-that-need-a-pin-in-managed-env">

5983 Endpunkte, die eine Festlegung im verwalteten `env` benötigen

5984</h4>

5985 

5986Eine Festlegung ist der Wert einer Endpunktvariable, der in einem verwalteten [`env`](#env)-Block gesetzt ist. Wenn eine Sitzung den Datenverkehr eines Anbieters an ein anderes Ziel als den eigenen Dienst dieses Anbieters sendet, lässt Claude Code dies nur zu, wenn der Wert der Sitzung mit der Festlegung übereinstimmt. Diese Endpunkte benötigen eine Festlegung:

5987 

5988* **`"customEndpoint"`-Sitzungen**: die Variable, die den Host angibt, etwa `ANTHROPIC_BASE_URL`

5989* **Amazon Bedrock**: die AWS SDK-Variablen `AWS_ENDPOINT_URL`, `AWS_ENDPOINT_URL_BEDROCK` und `AWS_ENDPOINT_URL_BEDROCK_RUNTIME`, wenn sie außerhalb des eigenen Dienstes von Bedrock zeigen. Die Sitzung bleibt unter `"bedrock"` statt `"customEndpoint"`

5990* **Die URL einer Gateway-Anmeldung**: Die Sitzung bleibt unter `"gateway"`, und [`forceLoginGatewayUrl`](#forcelogingatewayurl) zählt ebenfalls als Festlegung

5991 

5992Welche `env`-Blöcke als Festlegungen zählen, hängt davon ab, wo die Liste gesetzt ist:

5993 

5994* **Eine Administratorquelle auf dem Computer setzt eine Liste**: Nur die `env`-Blöcke der eigenen Administratorquellen des Computers zählen

5995* **Nur server-verwaltete Einstellungen setzen eine Liste**: Ein `env`-Wert in diesen server-verwalteten Einstellungen zählt ebenfalls

5996 

5997Die Liste bewertet weder die Anmeldedaten- und Mandantenvariablen eines Cloud-Anbieters noch den Netzwerkpfad, etwa `HTTPS_PROXY` und Zertifikatseinstellungen. Setzen Sie diese für die gesamte Flotte im verwalteten `env`-Block.

5998 

5772<h3 id="apikeyhelper">5999<h3 id="apikeyhelper">

5773 `apiKeyHelper`6000 `apiKeyHelper`

5774</h3>6001</h3>

5775 6002 

5776Führen Sie Ihren eigenen Befehl aus, um die Anmeldedaten zu generieren, die Claude Code mit Modellanfragen sendet. Claude Code führt den Befehl über die System-Shell aus, `/bin/sh` auf macOS und Linux und `cmd` auf Windows, und sendet seine Ausgabe als sowohl `X-Api-Key` als auch `Authorization: Bearer` Header. Verwenden Sie es für dynamische oder rotierende Anmeldedaten, wie kurzlebige Token, die aus einem Vault abgerufen werden.6003Führen Sie Ihren eigenen Befehl aus, um die Anmeldedaten zu generieren, die Claude Code mit Modellanfragen sendet. Claude Code führt den Befehl über die System-Shell aus, `/bin/sh` auf macOS und Linux und `cmd` auf Windows, und sendet seine Ausgabe als sowohl `X-Api-Key` als auch `Authorization: Bearer` Header. Verwenden Sie es für dynamische oder rotierende Anmeldedaten, wie kurzlebige Token, die aus einem Vault abgerufen werden.

5777 6004 

5778* **Bereich**: [`Any file`](#scopes)6005* **Geltungsbereich**: [`Any file`](#scopes)

5779* **Typ**: string, eine Shell-Befehlszeile6006* **Typ**: string, eine Shell-Befehlszeile

5780* **Standard**: nicht gesetzt, daher führt Claude Code keinen Helfer aus6007* **Standard**: nicht gesetzt, daher führt Claude Code keinen Helfer aus

5781 6008 


5793 6020 

5794Die letzten beiden Fälle gelten nur, wenn die Ausgabe des Helfers die Anmeldedaten sind, die Claude Code sendet, und `ANTHROPIC_AUTH_TOKEN` nicht gesetzt ist.6021Die letzten beiden Fälle gelten nur, wenn die Ausgabe des Helfers die Anmeldedaten sind, die Claude Code sendet, und `ANTHROPIC_AUTH_TOKEN` nicht gesetzt ist.

5795 6022 

5796In interaktiven Sitzungen führt Claude Code den Befehl nicht aus, bis Sie die Eingabeaufforderung zur Workspace-Vertrauenswürdigkeit akzeptieren, wenn der Befehl aus Projekt- oder lokalen Einstellungen stammt. Siehe [Verwaltung von Anmeldedaten](/docs/de/authentication#credential-management).6023In interaktiven Sitzungen führt Claude Code den Befehl nicht aus, bis Sie die Abfrage zur Workspace-Vertrauenswürdigkeit akzeptieren, wenn der Befehl aus Projekt- oder lokalen Einstellungen stammt. Siehe [Verwaltung von Anmeldedaten](/docs/de/authentication#credential-management).

5797 6024 

5798<h3 id="awsauthrefresh">6025<h3 id="awsauthrefresh">

5799 `awsAuthRefresh`6026 `awsAuthRefresh`


5801 6028 

5802Führen Sie Ihren eigenen Befehl aus, z. B. `aws sso login`, um die Anmeldedaten in Ihrem `.aws`-Verzeichnis zu aktualisieren, wenn die Anmeldedaten, die Claude Code für [Amazon Bedrock](/docs/de/amazon-bedrock) hat, nicht mehr funktionieren. Claude Code überprüft zunächst die aktuellen Anmeldedaten gegen STS und führt den Befehl nur aus, wenn diese Überprüfung fehlschlägt, und liest dann das aktualisierte `.aws`-Verzeichnis.6029Führen Sie Ihren eigenen Befehl aus, z. B. `aws sso login`, um die Anmeldedaten in Ihrem `.aws`-Verzeichnis zu aktualisieren, wenn die Anmeldedaten, die Claude Code für [Amazon Bedrock](/docs/de/amazon-bedrock) hat, nicht mehr funktionieren. Claude Code überprüft zunächst die aktuellen Anmeldedaten gegen STS und führt den Befehl nur aus, wenn diese Überprüfung fehlschlägt, und liest dann das aktualisierte `.aws`-Verzeichnis.

5803 6030 

5804* **Bereich**: [`Any file`](#scopes)6031Wenn die Überprüfung gleichzeitig in mehreren Claude Code-Prozessen fehlschlägt, die denselben Befehl und dieselben Anmeldedaten verwenden, etwa in separaten Terminals oder IDE-Fenstern, führt ein Prozess den Befehl aus, und die übrigen warten auf diesen Lauf, statt einen eigenen zu starten. Ein Prozess, der mit einer ausstehenden Anfrage 60 Sekunden gewartet hat, führt den Befehl selbst aus. Um dies zu deaktivieren, setzen Sie [`CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK`](/docs/de/env-vars) auf `1`.

6032 

6033* **Geltungsbereich**: [`Any file`](#scopes)

5805* **Typ**: string, eine Shell-Befehlszeile6034* **Typ**: string, eine Shell-Befehlszeile

5806* **Standard**: nicht gesetzt, daher aktualisiert Claude Code AWS-Anmeldedaten nicht für Sie6035* **Standard**: nicht gesetzt, daher aktualisiert Claude Code AWS-Anmeldedaten nicht für Sie

5807 6036 


5819 6048 

5820Führen Sie Ihren eigenen Befehl aus, der AWS-Anmeldedaten als JSON ausgibt, damit Claude Code [Amazon Bedrock](/docs/de/amazon-bedrock) mit Anmeldedaten aufrufen kann, die nicht in Ihrem `.aws`-Verzeichnis vorhanden sind. Claude Code akzeptiert die `aws sts` Ausgabeform und die flache `aws configure export-credentials` Form und beschränkt die Anmeldedaten auf seinen eigenen Bedrock-Client, sodass die Shell-Befehle, die Claude ausführt, immer noch Ihre Umgebungsanmeldedaten sehen.6049Führen Sie Ihren eigenen Befehl aus, der AWS-Anmeldedaten als JSON ausgibt, damit Claude Code [Amazon Bedrock](/docs/de/amazon-bedrock) mit Anmeldedaten aufrufen kann, die nicht in Ihrem `.aws`-Verzeichnis vorhanden sind. Claude Code akzeptiert die `aws sts` Ausgabeform und die flache `aws configure export-credentials` Form und beschränkt die Anmeldedaten auf seinen eigenen Bedrock-Client, sodass die Shell-Befehle, die Claude ausführt, immer noch Ihre Umgebungsanmeldedaten sehen.

5821 6050 

5822* **Bereich**: [`Any file`](#scopes)6051* **Geltungsbereich**: [`Any file`](#scopes)

5823* **Typ**: string, eine Shell-Befehlszeile6052* **Typ**: string, eine Shell-Befehlszeile

5824* **Standard**: nicht gesetzt, daher verwendet Claude Code die Umgebungs-AWS-Anmeldedatenkette6053* **Standard**: nicht gesetzt, daher verwendet Claude Code die Umgebungs-AWS-Anmeldedatenkette

5825 6054 


5835 `forceLoginMethod`6064 `forceLoginMethod`

5836</h3>6065</h3>

5837 6066 

5838Beschränken Sie, welche Art von Konto sich Personen anmelden können. Setzen Sie `"claudeai"`, um nur claude.ai-Konten zuzulassen, `"console"`, um nur Claude Console-Konten zuzulassen, oder `"gateway"`, um Personen zu einem [Cloud-Gateway](/docs/de/claude-apps-gateway) statt zu einer First-Party-Anmeldung zu senden. Administratoren legen es in verwalteten Einstellungen fest und koppeln es mit [`forceLoginOrgUUID`](#forceloginorguuid), um die claude.ai-Anmeldungen von Entwicklern in einer Organisation zu halten. Wenn Sie es in einer beliebigen Einstellungsdatei auf `"claudeai"` oder `"console"` setzen, stoppt Claude Code auch das Angebot der [schlüssellosen Console-Anmeldung](/docs/de/authentication#sign-in-without-an-api-key) in den Sitzungen, auf die diese Datei zutrifft.6067Beschränken Sie, mit welcher Art von Konto sich Personen anmelden können. Setzen Sie `"claudeai"`, um nur claude.ai-Konten zuzulassen, `"console"`, um nur Claude Console-Konten zuzulassen, oder `"gateway"`, um Personen zu einem [Cloud-Gateway](/docs/de/claude-apps-gateway) statt zu einer First-Party-Anmeldung zu senden. Administratoren legen es in verwalteten Einstellungen fest und koppeln es mit [`forceLoginOrgUUID`](#forceloginorguuid), um die claude.ai-Anmeldungen von Entwicklern in einer Organisation zu halten. Wenn Sie es in einer beliebigen Einstellungsdatei auf `"claudeai"` oder `"console"` setzen, stoppt Claude Code auch das Angebot der [schlüssellosen Console-Anmeldung](/docs/de/authentication#sign-in-without-an-api-key) in den Sitzungen, auf die diese Datei zutrifft.

5839 6068 

5840* **Bereich**: [`Any file`](#scopes). Claude Code berücksichtigt `"gateway"` nur von einer verwalteten Quelle auf dem Computer: `managed-settings.json`, die macOS plist oder Windows HKLM-Registrierung oder ein Policy-Helfer. Es behandelt `"gateway"` als nicht gesetzt in Benutzer-, Projekt-, lokalen, HKCU- und Server-verwalteten Einstellungen, die gleiche Regel wie [`forceLoginGatewayUrl`](#forcelogingatewayurl).6069* **Geltungsbereich**: [`Any file`](#scopes). Claude Code berücksichtigt `"gateway"` nur von einer verwalteten Quelle auf dem Computer: `managed-settings.json`, die macOS plist oder Windows HKLM-Registrierung oder ein Policy-Helfer. Es behandelt `"gateway"` als nicht gesetzt in Benutzer-, Projekt-, lokalen, HKCU- und Server-verwalteten Einstellungen, die gleiche Regel wie [`forceLoginGatewayUrl`](#forcelogingatewayurl).

5841* **Typ**: string, einer von:6070* **Typ**: string, einer von:

5842 * `"claudeai"`: nur claude.ai-Konten können sich anmelden6071 * `"claudeai"`: nur claude.ai-Konten können sich anmelden

5843 * `"console"`: nur Claude Console-Konten können sich anmelden6072 * `"console"`: nur Claude Console-Konten können sich anmelden


5860 6089 

5861Legen Sie die Gateway-URL fest, mit der sich der `/login` Cloud-Gateway-Bildschirm verbindet, damit Personen Ihr [Cloud-Gateway](/docs/de/claude-apps-gateway) erreichen, ohne seine Adresse einzugeben. Der Bildschirm hat kein URL-Feld: Mit diesem Schlüssel gesetzt zeigt er Ihre Gateway-URL an und verbindet sich, wenn die Person die Eingabetaste drückt; ohne ihn teilt er ihnen mit, sich an ihren IT-Administrator zu wenden.6090Legen Sie die Gateway-URL fest, mit der sich der `/login` Cloud-Gateway-Bildschirm verbindet, damit Personen Ihr [Cloud-Gateway](/docs/de/claude-apps-gateway) erreichen, ohne seine Adresse einzugeben. Der Bildschirm hat kein URL-Feld: Mit diesem Schlüssel gesetzt zeigt er Ihre Gateway-URL an und verbindet sich, wenn die Person die Eingabetaste drückt; ohne ihn teilt er ihnen mit, sich an ihren IT-Administrator zu wenden.

5862 6091 

5863Entweder dieser Schlüssel oder `forceLoginMethod: "gateway"` macht den Computer nur Gateway-fähig, daher öffnet `/login` auf dem Cloud-Gateway-Bildschirm ohne Anmeldemethoden-Picker. Siehe [Administrator-Richtlinie erfordert eine Cloud-Gateway-Anmeldung](/docs/de/errors#administrator-policy-requires-a-cloud-gateway-sign-in), um zu erfahren, was mit einer verbleibenden First-Party-Anmeldung oder einem API-Schlüssel geschieht. Legen Sie beide Schlüssel fest, damit sich der Bildschirm verbindet, statt einen Fehler anzuzeigen.6092Entweder dieser Schlüssel oder `forceLoginMethod: "gateway"` macht den Computer zu einem reinen Gateway-Computer, mit Ausnahme von Sitzungen, die einen Cloud-Anbieter mit `CLAUDE_CODE_USE_*` auswählen. `/login` öffnet dann auf dem Cloud-Gateway-Bildschirm ohne Anmeldemethoden-Picker. Siehe [Administrator-Richtlinie erfordert eine Cloud-Gateway-Anmeldung](/docs/de/errors#administrator-policy-requires-a-cloud-gateway-sign-in), um zu erfahren, was mit einer verbleibenden First-Party-Anmeldung oder einem API-Schlüssel geschieht. Legen Sie beide Schlüssel fest, damit sich der Bildschirm verbindet, statt einen Fehler anzuzeigen.

5864 6093 

5865* **Bereich**: [`Managed`](#scopes). Nur von einer Quelle auf dem Computer lesen: `managed-settings.json`, die macOS plist oder Windows HKLM-Registrierung oder ein Policy-Helfer. Claude Code ignoriert es in HKCU- und Server-verwalteten Einstellungen.6094* **Geltungsbereich**: [`Managed`](#scopes). Wird nur von einer Quelle auf dem Computer gelesen: `managed-settings.json`, die macOS plist oder Windows HKLM-Registrierung oder ein Policy-Helfer. Claude Code ignoriert es in HKCU- und Server-verwalteten Einstellungen.

5866* **Typ**: string, eine vollständige URL einschließlich des Schemas6095* **Typ**: string, eine vollständige URL einschließlich des Schemas

5867* **Standard**: nicht gesetzt, daher zeigt der Cloud-Gateway-Bildschirm einen Fehler an, der Personen auffordert, sich an ihren IT-Administrator zu wenden6096* **Standard**: nicht gesetzt, daher zeigt der Cloud-Gateway-Bildschirm einen Fehler an, der Personen auffordert, sich an ihren IT-Administrator zu wenden

5868 6097 


5880 6109 

5881Verlangen Sie von einer verwalteten Quelle, dass claude.ai-Kontoanmeldungen zu einer Anthropic-Organisation gehören, angegeben als eine einzelne UUID, oder zu einer von mehreren Organisationen, angegeben als Array. Aus einer beliebigen Einstellungsdatei verwendet Claude Code auch eine einzelne UUID, um diese Organisation während einer claude.ai- oder Claude Console-Anmeldung vorzuwählen, und wählt nichts für ein Array vor. Wenn Sie den Schlüssel in einer beliebigen Einstellungsdatei setzen, stoppt Claude Code auch das Angebot der [schlüssellosen Console-Anmeldung](/docs/de/authentication#sign-in-without-an-api-key) in den Sitzungen, auf die diese Datei zutrifft, und erstellt stattdessen einen API-Schlüssel.6110Verlangen Sie von einer verwalteten Quelle, dass claude.ai-Kontoanmeldungen zu einer Anthropic-Organisation gehören, angegeben als eine einzelne UUID, oder zu einer von mehreren Organisationen, angegeben als Array. Aus einer beliebigen Einstellungsdatei verwendet Claude Code auch eine einzelne UUID, um diese Organisation während einer claude.ai- oder Claude Console-Anmeldung vorzuwählen, und wählt nichts für ein Array vor. Wenn Sie den Schlüssel in einer beliebigen Einstellungsdatei setzen, stoppt Claude Code auch das Angebot der [schlüssellosen Console-Anmeldung](/docs/de/authentication#sign-in-without-an-api-key) in den Sitzungen, auf die diese Datei zutrifft, und erstellt stattdessen einen API-Schlüssel.

5882 6111 

5883* **Bereich**: [`Any file`](#scopes). Nur eine verwaltete Quelle erzwingt die Einschränkung; eine einzelne UUID in einer beliebigen anderen Einstellungsdatei wählt die Organisation während der Anmeldung vor, ohne sie einzuschränken.6112* **Geltungsbereich**: [`Any file`](#scopes). Nur eine verwaltete Quelle erzwingt die Einschränkung; eine einzelne UUID in einer beliebigen anderen Einstellungsdatei wählt die Organisation während der Anmeldung vor, ohne sie einzuschränken.

5884* **Typ**: string, eine UUID, oder Array von Strings, mehrere UUIDs6113* **Typ**: string, eine UUID, oder Array von Strings, mehrere UUIDs

5885* **Standard**: nicht gesetzt, daher kann sich jede Organisation anmelden6114* **Standard**: nicht gesetzt, daher kann sich jede Organisation anmelden

5886 6115 


5904 6133 

5905Ohne diesen Schlüssel verbindet sich `/login` mit jedem Gateway auf einer privaten Adresse und nichts anderem. Mit ihm akzeptiert `/login` auch ein Gateway innerhalb eines aufgelisteten Blocks, nur über eine direkte Verbindung. Die eigene Adresse des Computers auf dieser Verbindung muss sich auch innerhalb desselben Blocks befinden.6134Ohne diesen Schlüssel verbindet sich `/login` mit jedem Gateway auf einer privaten Adresse und nichts anderem. Mit ihm akzeptiert `/login` auch ein Gateway innerhalb eines aufgelisteten Blocks, nur über eine direkte Verbindung. Die eigene Adresse des Computers auf dieser Verbindung muss sich auch innerhalb desselben Blocks befinden.

5906 6135 

5907* **Bereich**: [`Managed`](#scopes). Nur von einer Quelle auf dem Computer lesen: `managed-settings.json`, die macOS plist oder Windows HKLM-Registrierung oder ein Policy-Helfer. Claude Code ignoriert es in HKCU- und Server-verwalteten Einstellungen.6136* **Geltungsbereich**: [`Managed`](#scopes). Wird nur von einer Quelle auf dem Computer gelesen: `managed-settings.json`, die macOS plist oder Windows HKLM-Registrierung oder ein Policy-Helfer. Claude Code ignoriert es in HKCU- und Server-verwalteten Einstellungen.

5908* **Typ**: Array von Strings, höchstens vier IPv4-CIDR-Blöcke, jeweils `/8` bis `/32`, nicht überlappend miteinander und keine Überlappung mit privatem Raum.6137* **Typ**: Array von Strings, höchstens vier IPv4-CIDR-Blöcke, jeweils `/8` bis `/32`, nicht überlappend miteinander und keine Überlappung mit privatem Raum.

5909* **Standard**: nicht gesetzt, daher akzeptiert `/login` nur Gateways auf privaten Adressen6138* **Standard**: nicht gesetzt, daher akzeptiert `/login` nur Gateways auf privaten Adressen

5910 6139 


5922 `gcpAuthRefresh`6151 `gcpAuthRefresh`

5923</h3>6152</h3>

5924 6153 

5925Führen Sie Ihren eigenen Befehl aus, um Google Cloud Application Default Credentials zu aktualisieren, wenn Claude Code feststellt, dass sie abgelaufen sind oder nicht geladen werden können, damit [Google Cloud's Agent Platform](/docs/de/google-vertex-ai) Anfragen ohne manuelle Neuzertifizierung funktionieren.6154Führen Sie Ihren eigenen Befehl aus, um Google Cloud Application Default Credentials zu aktualisieren, wenn Claude Code feststellt, dass sie abgelaufen sind oder nicht geladen werden können, damit Anfragen an [Google Cloud's Agent Platform](/docs/de/google-vertex-ai) weiterhin funktionieren, ohne dass Sie sich manuell erneut authentifizieren müssen.

5926 6155 

5927* **Bereich**: [`Any file`](#scopes)6156Wenn mehrere Claude Code-Prozesse, die denselben Befehl und dieselben Anmeldedaten verwenden, etwa in separaten Terminals oder IDE-Fenstern, gleichzeitig feststellen, dass diese abgelaufen sind, führt ein Prozess den Befehl aus, und die übrigen warten auf diesen Lauf, statt einen eigenen zu starten. Ein Prozess, der mit einer ausstehenden Anfrage 60 Sekunden gewartet hat, führt den Befehl selbst aus. Um dies zu deaktivieren, setzen Sie [`CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK`](/docs/de/env-vars) auf `1`.

6157 

6158* **Geltungsbereich**: [`Any file`](#scopes)

5928* **Typ**: string, eine Shell-Befehlszeile6159* **Typ**: string, eine Shell-Befehlszeile

5929* **Standard**: nicht gesetzt, daher teilt Ihnen der Anmeldedatenfehler von Claude Code mit, `gcloud auth application-default login` selbst auszuführen6160* **Standard**: nicht gesetzt, daher teilt Ihnen der Anmeldedatenfehler von Claude Code mit, `gcloud auth application-default login` selbst auszuführen

5930 6161 


5942 6173 

5943Führen Sie Ihren eigenen Befehl aus, um die Header zu generieren, die Claude Code mit OpenTelemetry-Exporten sendet, für Backends, deren Token rotieren. Claude Code führt ihn beim Start und danach regelmäßig aus und erwartet ein JSON-Objekt von String-Header-Werten auf stdout.6174Führen Sie Ihren eigenen Befehl aus, um die Header zu generieren, die Claude Code mit OpenTelemetry-Exporten sendet, für Backends, deren Token rotieren. Claude Code führt ihn beim Start und danach regelmäßig aus und erwartet ein JSON-Objekt von String-Header-Werten auf stdout.

5944 6175 

5945* **Bereich**: [`Any file`](#scopes)6176* **Geltungsbereich**: [`Any file`](#scopes)

5946* **Typ**: string, ein ausführbarer Pfad oder eine Shell-Befehlszeile6177* **Typ**: string, ein ausführbarer Pfad oder eine Shell-Befehlszeile

5947* **Standard**: nicht gesetzt, daher fügt Claude Code keine Helfer-generierten Header hinzu6178* **Standard**: nicht gesetzt, daher fügt Claude Code keine Helfer-generierten Header hinzu

5948 6179 


5952}6183}

5953```6184```

5954 6185 

5955Legen Sie das Aktualisierungsintervall mit [`CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS`](/docs/de/env-vars) fest. Siehe [Dynamische Header](/docs/de/monitoring-usage#dynamic-headers) für die Skriptanforderungen und wo Claude Code einen fehlgeschlagenen Helfer meldet.6186Legen Sie das Aktualisierungsintervall mit [`CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS`](/docs/de/env-vars) fest. Siehe [Dynamische Header](/docs/de/monitoring-usage#dynamic-headers) für die Skriptanforderungen und was passiert, wenn der Helfer fehlschlägt.

5956 6187 

5957<h2 id="updates-and-versioning">6188<h2 id="updates-and-versioning">

5958 Aktualisierungen und Versionsverwaltung6189 Aktualisierungen und Versionsverwaltung


6113 `cleanupPeriodDays`6344 `cleanupPeriodDays`

6114</h3>6345</h3>

6115 6346 

6116Legen Sie fest, wie viele Tage Claude Code [Sitzungstranskripte und andere Anwendungsdaten](/docs/de/claude-directory#cleaned-up-automatically) speichert, bevor sie gelöscht werden. Claude Code führt die Löschung als Hintergrund-Sweep nach dem Start einer Sitzung durch, solange es die Aufbewahrungsfrist sicher bestimmen kann.6347Legen Sie fest, wie viele Tage Claude Code [Sitzungstranskripte und andere Anwendungsdaten](/docs/de/claude-directory#cleaned-up-automatically) speichert, bevor sie gelöscht werden. Claude Code führt die Löschung als Hintergrund-Sweep nach dem Start einer Sitzung durch, solange es die Aufbewahrungsfrist sicher bestimmen kann. Der Sweep löscht Transkripte, ohne eine Meldung anzuzeigen, sodass eine Sitzung, die Sie länger als die Aufbewahrungsfrist nicht verwendet haben, nicht mehr in der [`/resume`](/docs/de/sessions#resume-a-session)-Auswahl erscheint.

6117 6348 

6118* **Bereich**: [`Any file`](#scopes)6349* **Bereich**: [`Any file`](#scopes)

6119* **Typ**: Anzahl der Tage, eine ganze Zahl, Minimum `1`6350* **Typ**: Anzahl der Tage, eine ganze Zahl, Minimum `1`


6155 * `"quiet"`: Claude entwirft ohne Karte. Sie sehen die Anzahl der eingereihten Entwürfe in der Eingabeaufforderungs-Fußzeile und überprüfen sie in `/feedback`6386 * `"quiet"`: Claude entwirft ohne Karte. Sie sehen die Anzahl der eingereihten Entwürfe in der Eingabeaufforderungs-Fußzeile und überprüfen sie in `/feedback`

6156 * `"off"`: Claude Code entfernt das SendFeedback-Tool, sodass Claude keine Entwürfe einreihen kann6387 * `"off"`: Claude Code entfernt das SendFeedback-Tool, sodass Claude keine Entwürfe einreihen kann

6157* **Standard**: `"notify"`6388* **Standard**: `"notify"`

6158* **Sitzungsspezifische Außerkraftsetzungen**: [`CLAUDE_CODE_SEND_FEEDBACK`](/docs/de/env-vars) auf `0` gesetzt deaktiviert die Funktion für eine Sitzung6389* **Sitzungsspezifische Überschreibungen**: [`CLAUDE_CODE_SEND_FEEDBACK`](/docs/de/env-vars) auf `0` gesetzt deaktiviert die Funktion für eine Sitzung

6159 6390 

6160```json settings.json theme={null}6391```json settings.json theme={null}

6161{6392{


6174* **Bereich**: [`Any file`](#scopes)6405* **Bereich**: [`Any file`](#scopes)

6175* **Typ**: Zahl zwischen `0` und `1`6406* **Typ**: Zahl zwischen `0` und `1`

6176* **Standard**: nicht gesetzt, sodass Claude Code die Rate verwendet, die Anthropic remote setzt, oder seine integrierte Rate von `0.005` auf Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry, die keine Remote-Konfiguration erhalten6407* **Standard**: nicht gesetzt, sodass Claude Code die Rate verwendet, die Anthropic remote setzt, oder seine integrierte Rate von `0.005` auf Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry, die keine Remote-Konfiguration erhalten

6177* **Sitzungsspezifische Außerkraftsetzungen**: [`CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY`](/docs/de/env-vars) auf `1` gesetzt deaktiviert die Umfrage für eine Sitzung, unabhängig davon, welche Rate dieser Schlüssel setzt6408* **Sitzungsspezifische Überschreibungen**: [`CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY`](/docs/de/env-vars) auf `1` gesetzt deaktiviert die Umfrage für eine Sitzung, unabhängig davon, welche Rate dieser Schlüssel setzt

6178 6409 

6179```json settings.json theme={null}6410```json settings.json theme={null}

6180{6411{


6216 `disableSideloadFlags`6447 `disableSideloadFlags`

6217</h3>6448</h3>

6218 6449 

6219Lehnen Sie die CLI-Flags `--plugin-dir`, `--plugin-url`, `--agents` und `--mcp-config` beim Start ab, die Benutzer andernfalls übergeben könnten, um [`strictKnownMarketplaces`](#strictknownmarketplaces) für einen einzelnen Durchlauf zu umgehen. Claude Code wird mit einem Fehler beendet, der die abgelehnten Flags benennt, und wendet die gleiche Überprüfung auf Oberflächen an, die die CLI intern mit diesen Flags starten, derzeit [Cowork](/docs/de/desktop)-Lokalsitzungen in der Desktop-App. In [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) verwirft Claude Code die MCP-Server, die der Server über `--mcp-config` bereitgestellt hat, mit Ausnahme von In-Process-Einträgen vom Typ `type: "sdk"`, und startet die Sitzung. Erfordert Claude Code v2.1.193 oder später.6450Lehnen Sie die CLI-Flags `--plugin-dir`, `--plugin-url`, `--agents` und `--mcp-config` beim Start ab, die Benutzer andernfalls übergeben könnten, um [`strictKnownMarketplaces`](#strictknownmarketplaces) für einen einzelnen Durchlauf zu umgehen. Claude Code wird mit einem Fehler beendet, der die abgelehnten Flags benennt. In [Cloud-Sitzungen](/docs/de/claude-code-on-the-web) startet Claude Code stattdessen die Sitzung und verwirft jeden vom Server bereitgestellten `--mcp-config`-Eintrag mit Ausnahme von In-Process-Einträgen vom Typ `type: "sdk"` und der Slack-Tools einer [Claude Tag](/docs/de/claude-tag)-Sitzung. Erfordert Claude Code v2.1.193 oder später.

6220 6451 

6221* **Bereich**: [`Managed`](#scopes)6452* **Bereich**: [`Managed`](#scopes)

6222* **Typ**: Boolean6453* **Typ**: Boolean

6223 * `true`: Claude Code lehnt `--plugin-dir`, `--plugin-url`, `--agents` und `--mcp-config` beim Start ab und wird mit einem Fehler beendet, der diese benennt, außer dass es in Cloud-Sitzungen die MCP-Server verwirft, die der Server über `--mcp-config` bereitgestellt hat, mit Ausnahme von In-Process-Einträgen vom Typ `type: "sdk"`, und startet die Sitzung6454 * `true`: Claude Code lehnt `--plugin-dir`, `--plugin-url`, `--agents` und `--mcp-config` beim Start ab und wird mit einem Fehler beendet, der diese benennt. In Cloud-Sitzungen startet es stattdessen die Sitzung und verwirft jeden vom Server bereitgestellten `--mcp-config`-Eintrag mit Ausnahme von In-Process-Einträgen vom Typ `type: "sdk"` und der Slack-Tools einer Claude Tag-Sitzung

6224 * `false`: Claude Code akzeptiert diese Flags6455 * `false`: Claude Code akzeptiert diese Flags

6225* **Standard**: `false`6456* **Standard**: `false`

6226 6457 


6234 6465 

6235Die gleiche Überprüfung deckt Plugin-Ordner ab, die in der Umgebungsvariablen [`CLAUDE_CODE_PLUGIN_DIRS`](/docs/de/env-vars#variables) benannt sind, was Claude Code v2.1.280 oder später erfordert. Wenn die Variable einen Ordner benennt, wird Claude Code mit dem gleichen Fehler beendet, und der Fehler sagt, die Variable zu deaktivieren.6466Die gleiche Überprüfung deckt Plugin-Ordner ab, die in der Umgebungsvariablen [`CLAUDE_CODE_PLUGIN_DIRS`](/docs/de/env-vars#variables) benannt sind, was Claude Code v2.1.280 oder später erfordert. Wenn die Variable einen Ordner benennt, wird Claude Code mit dem gleichen Fehler beendet, und der Fehler sagt, die Variable zu deaktivieren.

6236 6467 

6237In Cloud-Sitzungen ignoriert Claude Code auch vom Server bereitgestellte MCP-Updates während der Sitzung, den Pfad hinter der Cloud-Sitzungskonfiguration und SDK `setMcpServers()`-Aufrufe, die diese Sitzungen erreichen. In-Process-Einträge vom Typ `type: "sdk"` bleiben dort auch ausgenommen. Vor v2.1.239 blockierte ein vom Server bereitgestelltes `--mcp-config` den Start einer Cloud-Sitzung.6468In Cloud-Sitzungen ignoriert Claude Code auch vom Server bereitgestellte MCP-Updates während der Sitzung, den Pfad hinter der Cloud-Sitzungskonfiguration und SDK `setMcpServers()`-Aufrufe, die diese Sitzungen erreichen. In-Process-Einträge vom Typ `type: "sdk"` und die Slack-Tools einer Claude Tag-Sitzung bleiben dort ebenfalls ausgenommen. Vor v2.1.268 entfernten sowohl dieses Verwerfen als auch das Verwerfen beim Start auch die Slack-Tools einer Claude Tag-Sitzung. Vor v2.1.239 blockierte ein vom Server bereitgestelltes `--mcp-config` den Start einer Cloud-Sitzung.

6469 

6470Die Desktop-App verwaltet einige Plugins selbst, darunter von claude.ai synchronisierte Plugins und Plugins, die Ihre Organisation über die App bereitstellt. Wenn Sie diesen Schlüssel über MDM, eine Richtlinie auf Betriebssystemebene oder eine verwaltete Einstellungsdatei auf einem Gerät bereitstellen, übergibt die Desktop-App diese Plugins nicht an die folgenden Sitzungen auf diesem Gerät:

6471 

6472* **[Code-Sitzungen auf dem Computer des Benutzers](/docs/de/desktop#environment-configuration)**: Sie starten außerdem ohne die Skills, die für das claude.ai-Konto des Benutzers aktiviert sind. Plugins, die Claude Code aus Marketplaces in Ihren verwalteten Einstellungen installiert, werden weiterhin geladen. In [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview) bleiben auch MCP-Server aus Plugins verfügbar, die Sie im `org-plugins`-Verzeichnis des Geräts bereitstellen, da die Desktop-App selbst eine Verbindung zu ihnen herstellt. Vor Claude Desktop v1.37937.0 schlugen diese Sitzungen stattdessen beim Start fehl.

6473* **[Cowork-Sitzungen auf dem Computer des Benutzers](/docs/de/managed-settings#where-and-when-a-policy-applies)**: Die Skills in diesen Plugins und die für das claude.ai-Konto des Benutzers aktivierten Skills bleiben verfügbar. In [Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/overview) bleiben auch MCP-Server aus Plugins verfügbar, die Sie im `org-plugins`-Verzeichnis des Geräts bereitstellen, da die Desktop-App selbst eine Verbindung zu ihnen herstellt. Vor Claude Desktop v1.44121.0 schlugen diese Sitzungen stattdessen beim Start fehl.

6238 6474 

6239<h3 id="forceremotesettingsrefresh">6475<h3 id="forceremotesettingsrefresh">

6240 `forceRemoteSettingsRefresh`6476 `forceRemoteSettingsRefresh`


6247* **Bereich**: [`Managed`](#scopes). Claude Code berücksichtigt ein `true` aus jeder admin-kontrollierten verwalteten Quelle, auch wenn es nicht die höchste Prioritätsquelle ist.6483* **Bereich**: [`Managed`](#scopes). Claude Code berücksichtigt ein `true` aus jeder admin-kontrollierten verwalteten Quelle, auch wenn es nicht die höchste Prioritätsquelle ist.

6248* **Typ**: Boolean6484* **Typ**: Boolean

6249 * `true`: Claude Code blockiert den Start, bis er vom Server verwaltete Einstellungen neu abgerufen hat, und wird beendet, wenn der Abruf fehlschlägt6485 * `true`: Claude Code blockiert den Start, bis er vom Server verwaltete Einstellungen neu abgerufen hat, und wird beendet, wenn der Abruf fehlschlägt

6250 * `false`: Claude Code blockiert den Start nicht beim Abruf, obwohl es beim Anmelden des Entwicklers beim Start bis zu fünf Sekunden auf den Abruf wartet6486 * `false`: Claude Code blockiert den Start nicht beim Abruf, obwohl es bei einem Start mit Anmeldung bis zu fünf Sekunden auf den Abruf wartet

6251* **Standard**: `false`6487* **Standard**: `false`

6252 6488 

6253```json managed-settings.json theme={null}6489```json managed-settings.json theme={null}


6256}6492}

6257```6493```

6258 6494 

6259Setzen Sie dies in einem MDM-Profil oder der verwalteten Einstellungsdatei, um einen Fail-Closed-Start durchzusetzen, bevor die erste Server-Nutzlast ankommt. Claude Code wendet die Überprüfung nur in Sitzungen an, die vom Server verwaltete Einstellungen abrufen, sodass eine Sitzung, die [diese nicht abruft](/docs/de/server-managed-settings#platform-availability), ohne Wartezeit startet. Die `claude auth`-Unterbefehle sind ausgenommen, sodass Benutzer sich erneut authentifizieren können, wenn abgelaufene Anmeldedaten der Grund für den fehlgeschlagenen Abruf sind. Siehe [Fail-Closed-Start durchsetzen](/docs/de/server-managed-settings#enforce-fail-closed-startup).6495Setzen Sie dies in einem MDM-Profil oder der verwalteten Einstellungsdatei, um einen Fail-Closed-Start durchzusetzen, bevor die erste Server-Payload ankommt. Claude Code wendet die Überprüfung nur in Sitzungen an, die vom Server verwaltete Einstellungen abrufen, sodass eine Sitzung, die [diese nicht abruft](/docs/de/server-managed-settings#platform-availability), ohne Wartezeit startet. Die `claude auth`-Unterbefehle sind ausgenommen, sodass Benutzer sich erneut authentifizieren können, wenn abgelaufene Anmeldedaten der Grund für den fehlgeschlagenen Abruf sind. Siehe [Fail-Closed-Start durchsetzen](/docs/de/server-managed-settings#enforce-fail-closed-startup).

6260 6496 

6261<h3 id="managedsourcesbehavior">6497<h3 id="managedsourcesbehavior">

6262 `managedSourcesBehavior`6498 `managedSourcesBehavior`

6263</h3>6499</h3>

6264 6500 

6265Wählen Sie, ob Claude Code nur die höchste Priorität [verwaltete Quelle](/docs/de/managed-settings#how-claude-code-combines-managed-sources) anwendet, die Ihre Organisation bereitstellt, oder alle Admin-Quellen kombiniert, die sie bereitstellt. Standardmäßig nimmt Claude Code die höchste Prioritätsquelle, die einen [Richtlinienschlüssel](/docs/de/managed-settings#how-claude-code-combines-managed-sources) trägt, und ignoriert den Rest. Ein Richtlinienschlüssel ist jeder Einstellungsschlüssel außer diesem und `wslInheritsWindowsSettings`. Sobald vom Server verwaltete Einstellungen oder eine MDM-Richtlinie einen Richtlinienschlüssel bereitstellen, trägt eine `managed-settings.json`-Datei nur die [Schlüssel bei, die Claude Code aus jeder Admin-Quelle liest](/docs/de/managed-settings#keys-read-from-every-admin-source). Mit `"merge"` trägt jede Admin-Quelle, die Sie bereitstellen, ihre Schlüssel zu einer kombinierten Richtlinie bei. Erfordert Claude Code v2.1.242 oder später.6501Wählen Sie, ob Claude Code nur die höchste Priorität [verwaltete Quelle](/docs/de/managed-settings#how-claude-code-combines-managed-sources) anwendet, die Ihre Organisation bereitstellt, oder alle Admin-Quellen kombiniert, die sie bereitstellt. Standardmäßig nimmt Claude Code die höchste Prioritätsquelle, die einen [Richtlinienschlüssel](/docs/de/managed-settings#how-claude-code-combines-managed-sources) trägt, und ignoriert den Rest. Ein Richtlinienschlüssel ist jeder Einstellungsschlüssel außer diesem und `wslInheritsWindowsSettings`. Bei diesem Standardverhalten trägt eine `managed-settings.json`-Datei, sobald vom Server verwaltete Einstellungen oder eine MDM-Richtlinie einen Richtlinienschlüssel bereitstellen, nur die [Schlüssel bei, die Claude Code aus jeder Admin-Quelle liest](/docs/de/managed-settings#keys-read-from-every-admin-source). Mit `"merge"` trägt jede Admin-Quelle, die Sie bereitstellen, ihre Schlüssel zu einer kombinierten Richtlinie bei. Erfordert Claude Code v2.1.242 oder später.

6266 6502 

6267Setzen Sie `"merge"` nur dort, wo jede Quelle, die [unter Ihrer höchsten eingestuft](/docs/de/managed-settings#how-claude-code-combines-managed-sources) ist, unter der Kontrolle eines Administrators steht, da Claude Code dann Einträge aus einer niedrigeren Quelle, wie z. B. `permissions.allow`-Regeln, zur Richtlinie hinzufügt.6503Setzen Sie `"merge"` nur dort, wo jede Quelle, die [unter Ihrer höchsten eingestuft](/docs/de/managed-settings#how-claude-code-combines-managed-sources) ist, unter der Kontrolle eines Administrators steht, da Claude Code dann Einträge aus einer niedrigeren Quelle, wie z. B. `permissions.allow`-Regeln, zur Richtlinie hinzufügt.

6268 6504 


6280}6516}

6281```6517```

6282 6518 

6283Unter `"merge"` kombiniert Claude Code jeden Schlüssel nach seiner Art. Diese Tabelle gibt die Regel für jede Art an. Die Zeilen für Einschränkungserlaubnis, Werte-ganz-genommen und nur-höchste-Quelle benennen jeden Schlüssel, den sie abdecken, und die anderen Zeilen geben Beispiele:6519Unter `"merge"` kombiniert Claude Code jeden Schlüssel nach seiner Art. Diese Tabelle gibt die Regel für jede Art an. Die Zeilen für Einschränkungs-Allowlists, Werte-ganz-genommen und nur-höchste-Quelle benennen jeden Schlüssel, den sie abdecken, und die anderen Zeilen geben Beispiele:

6284 6520 

6285| Art des Schlüssels | Wie Claude Code ihn kombiniert | Schlüssel |6521| Art des Schlüssels | Wie Claude Code ihn kombiniert | Schlüssel |

6286| :- | :- | :- |6522| :- | :- | :- |

6287| Listen | Kombiniert Einträge aus jeder Quelle | [`permissions.allow`](#permissions-allow), [`sandbox.network.allowedDomains`](#sandbox-network-alloweddomains) und andere Listenschlüssel |6523| Listen | Kombiniert Einträge aus jeder Quelle | [`permissions.allow`](#permissions-allow), [`sandbox.network.allowedDomains`](#sandbox-network-alloweddomains) und andere Listenschlüssel |

6288| Sperren | Wendet den strengsten Wert an, den eine Quelle setzt. Wenn keine Quelle einen strengen Wert setzt, wendet einen lockereren Wert nur aus der höchsten Quelle an | [`allowManagedPermissionRulesOnly`](#allowmanagedpermissionrulesonly), [`permissions.disableBypassPermissionsMode`](#permissions-disablebypasspermissionsmode) und andere Boolean- oder Enum-Sperren |6524| Sperren | Wendet den strengsten Wert an, den eine Quelle setzt. Wenn keine Quelle einen strengen Wert setzt, wendet einen lockereren Wert nur aus der höchsten Quelle an | [`allowManagedPermissionRulesOnly`](#allowmanagedpermissionrulesonly), [`permissions.disableBypassPermissionsMode`](#permissions-disablebypasspermissionsmode) und andere Boolean- oder Enum-Sperren |

6289| Einschränkungserlaubnisse | Nimmt die Liste ganz aus der höchsten Quelle, die sie setzt, ohne Einträge aus niedrigeren Quellen hinzuzufügen. Wenn die höchste Quelle keine setzt, nimmt sie ganz aus der nächsten Quelle darunter | [`availableModels`](#availablemodels), [`allowedMcpServers`](#allowedmcpservers), [`strictKnownMarketplaces`](#strictknownmarketplaces), [`allowedChannelPlugins`](#allowedchannelplugins) und die [`fallbackModel`](#fallbackmodel)-Kette |6525| Einschränkungs-Allowlists | Nimmt die Liste ganz aus der höchsten Quelle, die sie setzt, ohne Einträge aus niedrigeren Quellen hinzuzufügen. Wenn die höchste Quelle keine setzt, nimmt sie ganz aus der nächsten Quelle darunter | [`availableModels`](#availablemodels), [`allowedMcpServers`](#allowedmcpservers), [`allowedProviders`](#allowedproviders), [`strictKnownMarketplaces`](#strictknownmarketplaces), [`allowedChannelPlugins`](#allowedchannelplugins) und die [`fallbackModel`](#fallbackmodel)-Kette |

6290| Werte ganz genommen | Nimmt den Wert ganz aus der höchsten Quelle, die ihn setzt, ohne Einträge oder Felder aus niedrigeren Quellen zu kombinieren. Wenn die höchste Quelle ihn nicht setzt, nimmt ihn ganz aus der nächsten Quelle darunter | [`sandbox.credentials.awsPairs`](#sandbox-credentials-awspairs), [`sandbox.ripgrep`](#sandbox-ripgrep) |6526| Werte ganz genommen | Nimmt den Wert ganz aus der höchsten Quelle, die ihn setzt, ohne Einträge oder Felder aus niedrigeren Quellen zu kombinieren. Wenn die höchste Quelle ihn nicht setzt, nimmt ihn ganz aus der nächsten Quelle darunter | [`sandbox.credentials.awsPairs`](#sandbox-credentials-awspairs), [`sandbox.ripgrep`](#sandbox-ripgrep) |

6291| Bereitgestellte MCP-Server | Kombiniert die Servernamen aus jeder Quelle. Wenn zwei Quellen denselben Namen setzen, wendet den ganzen Eintrag der höheren Quelle an | [`managedMcpServers`](#managedmcpservers) |6527| Bereitgestellte MCP-Server | Kombiniert die Servernamen aus jeder Quelle. Wenn zwei Quellen denselben Namen setzen, wendet den ganzen Eintrag der höheren Quelle an | [`managedMcpServers`](#managedmcpservers) |

6292| Nur aus der höchsten Prioritätsquelle lesen | Liest den Schlüssel nur aus der höchsten Prioritätsquelle, die einen Richtlinienschlüssel trägt, sodass der Wert einer niedrigeren Quelle ignoriert wird, auch wenn die höchste Quelle keinen setzt | [`apiKeyHelper`](#apikeyhelper), [`awsAuthRefresh`](#awsauthrefresh), [`awsCredentialExport`](#awscredentialexport), [`gcpAuthRefresh`](#gcpauthrefresh), [`otelHeadersHelper`](#otelheadershelper), `proxyAuthHelper`, [`forceLoginOrgUUID`](#forceloginorguuid), die `"claudeai"`- und `"console"`-Werte von [`forceLoginMethod`](#forceloginmethod), [`parentSettingsBehavior`](#parentsettingsbehavior), [`modelPicker`](#modelpicker), [`policyHelper`](#policyhelper), [`permissions.defaultMode`](#permissions-defaultmode) |6528| Nur aus der höchsten Prioritätsquelle lesen | Liest den Schlüssel nur aus der höchsten Prioritätsquelle, die einen Richtlinienschlüssel trägt, sodass der Wert einer niedrigeren Quelle ignoriert wird, auch wenn die höchste Quelle keinen setzt | [`apiKeyHelper`](#apikeyhelper), [`awsAuthRefresh`](#awsauthrefresh), [`awsCredentialExport`](#awscredentialexport), [`gcpAuthRefresh`](#gcpauthrefresh), [`otelHeadersHelper`](#otelheadershelper), `proxyAuthHelper`, [`forceLoginOrgUUID`](#forceloginorguuid), die `"claudeai"`- und `"console"`-Werte von [`forceLoginMethod`](#forceloginmethod), [`parentSettingsBehavior`](#parentsettingsbehavior), [`modelPicker`](#modelpicker), [`policyHelper`](#policyhelper), [`permissions.defaultMode`](#permissions-defaultmode) |


6300* **[`policyHelper`](#policyhelper)**: Claude Code berücksichtigt ihn nur, wenn die höchste Quelle, die einen Richtlinienschlüssel trägt, eine MDM-Richtlinie oder eine verwaltete Einstellungsdatei ist, sodass unter vom Server verwalteten Einstellungen sie nicht angewendet wird.6536* **[`policyHelper`](#policyhelper)**: Claude Code berücksichtigt ihn nur, wenn die höchste Quelle, die einen Richtlinienschlüssel trägt, eine MDM-Richtlinie oder eine verwaltete Einstellungsdatei ist, sodass unter vom Server verwalteten Einstellungen sie nicht angewendet wird.

6301* **[`modelOverrides`](#modeloverrides)**: Paare mit `availableModels`. Claude Code nimmt `modelOverrides` aus der höchsten Quelle, die ihn setzt, es sei denn, eine höhere Quelle setzt `availableModels` ohne `modelOverrides`. In diesem Fall ignoriert es `modelOverrides` aus jeder Quelle.6537* **[`modelOverrides`](#modeloverrides)**: Paare mit `availableModels`. Claude Code nimmt `modelOverrides` aus der höchsten Quelle, die ihn setzt, es sei denn, eine höhere Quelle setzt `availableModels` ohne `modelOverrides`. In diesem Fall ignoriert es `modelOverrides` aus jeder Quelle.

6302* **[`forceLoginGatewayUrl`](#forcelogingatewayurl), [`gatewayInternalNetworks`](#gatewayinternalnetworks) und der `"gateway"`-Wert von [`forceLoginMethod`](#forceloginmethod)**: Claude Code liest sie nie aus vom Server verwalteten Einstellungen, sodass ein Wert dort weder angewendet wird noch einen in einer MDM-Richtlinie oder verwalteten Einstellungsdatei gesetzten Wert verbirgt. Unter den Admin-Quellen auf dem Computer liefert nur die höchste eingestufte, die einen Richtlinienschlüssel trägt, sie, unabhängig davon, ob vom Server verwaltete Einstellungen auch vorhanden sind.6538* **[`forceLoginGatewayUrl`](#forcelogingatewayurl), [`gatewayInternalNetworks`](#gatewayinternalnetworks) und der `"gateway"`-Wert von [`forceLoginMethod`](#forceloginmethod)**: Claude Code liest sie nie aus vom Server verwalteten Einstellungen, sodass ein Wert dort weder angewendet wird noch einen in einer MDM-Richtlinie oder verwalteten Einstellungsdatei gesetzten Wert verbirgt. Unter den Admin-Quellen auf dem Computer liefert nur die höchste eingestufte, die einen Richtlinienschlüssel trägt, sie, unabhängig davon, ob vom Server verwaltete Einstellungen auch vorhanden sind.

6539* **[`allowedProviders`](#allowedproviders)**: Nach der Regel der Tabelle begrenzt die eigene Liste des Computers das Ergebnis weiterhin, wie im Hinweis unter „Bereich" seines Eintrags angegeben.

6303 6540 

6304Um zu bestätigen, welche Quellen auf einem Computer kombiniert wurden, führen Sie `/status` aus und [lesen Sie die Zeile `Setting sources`](/docs/de/managed-settings#read-the-source-in-/status).6541Um zu bestätigen, welche Quellen auf einem Computer kombiniert wurden, führen Sie `/status` aus und [lesen Sie die Zeile `Setting sources`](/docs/de/managed-settings#read-the-source-in-/status).

6305 6542 


6307 `parentSettingsBehavior`6544 `parentSettingsBehavior`

6308</h3>6545</h3>

6309 6546 

6310Wählen Sie, ob Claude Code verwaltete Einstellungen anwendet, die von einem Embedding-Host-Prozess bereitgestellt werden, wie z. B. dem Agent SDK oder einer IDE-Erweiterung, wenn auch eine admin-bereitgestellte verwaltete Ebene vorhanden ist. Mit `"first-wins"` verwirft Claude Code die vom Host bereitgestellten Einstellungen; mit `"merge"` wendet es sie unter der Admin-Ebene durch einen restriktiv-nur-Filter an. Setzen Sie `"merge"`, wenn ein Host seine eigenen Einschränkungen an die Sitzungen übergeben muss, die er startet, z. B. Claude Desktop, das die Egress-Erlaubnisliste eines Gateways bereitstellt.6547Wählen Sie, ob Claude Code verwaltete Einstellungen anwendet, die von einem Embedding-Host-Prozess bereitgestellt werden, wie z. B. dem Agent SDK oder einer IDE-Erweiterung, wenn auch eine admin-bereitgestellte verwaltete Ebene vorhanden ist. Mit `"first-wins"` verwirft Claude Code die vom Host bereitgestellten Einstellungen; mit `"merge"` wendet es sie unter der Admin-Ebene durch einen restriktiv-nur-Filter an. Setzen Sie `"merge"`, wenn ein Host seine eigenen Einschränkungen an die Sitzungen übergeben muss, die er startet, z. B. Claude Desktop, das die Egress-Allowlist eines Gateways bereitstellt.

6311 6548 

6312* **Bereich**: [`Managed`](#scopes). Claude Code liest ihn aus der höchsten Priorität admin-kontrollierten verwalteten Quelle.6549* **Bereich**: [`Managed`](#scopes). Claude Code liest ihn aus der höchsten Priorität admin-kontrollierten verwalteten Quelle.

6313* **Typ**: string, einer von:6550* **Typ**: string, einer von:


6329 `policyHelper`6566 `policyHelper`

6330</h3>6567</h3>

6331 6568 

6332Führen Sie eine ausführbare Datei aus, die Sie bereitstellen, die verwaltete Einstellungen beim Start berechnet, sodass Sie Richtlinien von Geräteposition, Identität oder einem Remote-Service ableiten können, anstatt von einer statischen Datei. Claude Code führt den Helper aus, bevor er die erste Eingabeaufforderung akzeptiert, und behandelt die Einstellungen, die er ausgibt, als die verwalteten Einstellungen für die Sitzung.6569Führen Sie eine ausführbare Datei aus, die Sie bereitstellen, die verwaltete Einstellungen beim Start berechnet, sodass Sie Richtlinien von Geräteposition, Identität oder einem Remote-Service ableiten können, anstatt von einer statischen Datei. Claude Code führt den Helper aus, bevor er den ersten Prompt akzeptiert, und behandelt die Einstellungen, die er ausgibt, als die verwalteten Einstellungen für die Sitzung.

6333 6570 

6334* **Bereich**: [`Managed`](#scopes). Lesen Sie aus der macOS plist, der Windows HKLM-Registrierung oder der verwalteten Einstellungsdatei. Claude Code liest den Schlüssel aus der höchsten Priorität verwalteten Quelle, die einen [Richtlinienschlüssel](/docs/de/managed-settings#how-claude-code-combines-managed-sources) trägt, und führt den Helper nur aus, wenn diese Quelle eine dieser drei ist; es ignoriert den Schlüssel in vom Server verwalteten Einstellungen, der HKCU-Registrierung und vom Host bereitgestellten übergeordneten Einstellungen.6571* **Bereich**: [`Managed`](#scopes). Lesen Sie aus der macOS plist, der Windows HKLM-Registrierung oder der verwalteten Einstellungsdatei. Claude Code liest den Schlüssel aus der höchsten Priorität verwalteten Quelle, die einen [Richtlinienschlüssel](/docs/de/managed-settings#how-claude-code-combines-managed-sources) trägt, und führt den Helper nur aus, wenn diese Quelle eine dieser drei ist; es ignoriert den Schlüssel in vom Server verwalteten Einstellungen, der HKCU-Registrierung und vom Host bereitgestellten übergeordneten Einstellungen.

6335* **Typ**: Objekt mit `path`, `timeoutMs` und `refreshIntervalMs`6572* **Typ**: Objekt mit `path`, `timeoutMs` und `refreshIntervalMs`


6389 6626 

6390Wenn eine Hintergrund-Aktualisierung fehlschlägt, behält Claude Code die letzte erfolgreiche Richtlinie bei, und `/status` zeigt die fehlgeschlagene Aktualisierung mit ihrem Grund an, bis eine Aktualisierung erfolgreich ist. Jede Aktualisierung wird unter den gleichen `timeoutMs`- und Fehlerregeln wie der Startup-Durchlauf ausgeführt.6627Wenn eine Hintergrund-Aktualisierung fehlschlägt, behält Claude Code die letzte erfolgreiche Richtlinie bei, und `/status` zeigt die fehlgeschlagene Aktualisierung mit ihrem Grund an, bis eine Aktualisierung erfolgreich ist. Jede Aktualisierung wird unter den gleichen `timeoutMs`- und Fehlerregeln wie der Startup-Durchlauf ausgeführt.

6391 6628 

6392Mit `--debug` schreibt Claude Code den stderr des Helpers aus jedem Durchlauf in das [Debug-Protokoll](/docs/de/debug-your-config).6629Mit `--debug` schreibt Claude Code den stderr des Helpers aus jedem Durchlauf in das [Debug-Log](/docs/de/debug-your-config).

6393 6630 

6394Claude Code meldet einen ungültigen `policyHelper`-Wert als einen [gelöschten Eintrag](/docs/de/managed-settings#find-entries-claude-code-dropped) und startet die Sitzung auf den verbleibenden verwalteten Einstellungen ohne Ausführung eines Helpers. Ungültige Werte umfassen einen bloßen Pfad-String und einen `timeoutMs` unter [seinem Minimum](#policyhelper-timeoutms).6631Claude Code meldet einen ungültigen `policyHelper`-Wert als einen [gelöschten Eintrag](/docs/de/managed-settings#find-entries-claude-code-dropped) und startet die Sitzung auf den verbleibenden verwalteten Einstellungen ohne Ausführung eines Helpers. Ungültige Werte umfassen einen bloßen Pfad-String und einen `timeoutMs` unter [seinem Minimum](#policyhelper-timeoutms).

6395 6632 


6457 `wslInheritsWindowsSettings`6694 `wslInheritsWindowsSettings`

6458</h3>6695</h3>

6459 6696 

6460Lassen Sie Claude Code auf WSL verwaltete Einstellungen aus der Windows-Richtlinienkette lesen, wobei HKLM und die Windows-verwaltete Einstellungsdatei Vorrang vor `/etc/claude-code` und HKCU darunter haben. Während die Kette aktiv ist, liest Claude Code `/etc/claude-code` nur, wenn keine verwaltete Einstellungsdatei oder Drop-in unter `C:\Program Files\ClaudeCode\` einen [Richtlinienschlüssel](/docs/de/managed-settings#how-claude-code-combines-managed-sources) bereitstellt. Setzen Sie dies, um die Richtlinie, die Sie bereits unter Windows bereitstellen, auf WSL-Sitzungen auf dem gleichen Computer zu erweitern, sodass sie den gleichen Regeln wie Host-Sitzungen folgen. Claude Code berücksichtigt ihn nur, wenn er im HKLM-Registrierungsschlüssel oder in einer verwalteten Einstellungsdatei oder Drop-in unter `C:\Program Files\ClaudeCode\` gesetzt ist, die beide Windows-Admin-Schreibzugriff erfordern.6697Lassen Sie Claude Code auf WSL verwaltete Einstellungen aus der Windows-Richtlinienkette lesen, wobei HKLM und die Windows-verwaltete Einstellungsdatei Vorrang vor `/etc/claude-code` und HKCU darunter haben. Während die Kette aktiv ist, liest Claude Code `/etc/claude-code` nur, wenn [kein Windows-Admin-Dokument vorhanden ist](/docs/de/managed-settings#present-admin-documents), weder im HKLM-Registrierungswert noch im Ordner `C:\Program Files\ClaudeCode\`. Setzen Sie dies, um die Richtlinie, die Sie bereits unter Windows bereitstellen, auf WSL-Sitzungen auf dem gleichen Computer zu erweitern, sodass sie den gleichen Regeln wie Host-Sitzungen folgen. Claude Code berücksichtigt ihn nur, wenn er im HKLM-Registrierungsschlüssel oder in einer verwalteten Einstellungsdatei oder Drop-in unter `C:\Program Files\ClaudeCode\` gesetzt ist, die beide Windows-Admin-Schreibzugriff erfordern.

6461 6698 

6462* **Bereich**: [`Managed`](#scopes). In einer admin-kontrollierten Windows-Quelle.6699* **Bereich**: [`Managed`](#scopes). In einer admin-kontrollierten Windows-Quelle.

6463* **Typ**: Boolean6700* **Typ**: Boolean

6464 * `true`: Claude Code auf WSL liest verwaltete Einstellungen aus der Windows-Richtlinienkette und liest `/etc/claude-code` nur, wenn keine verwaltete Einstellungsdatei oder Drop-in unter `C:\Program Files\ClaudeCode\` einen [Richtlinienschlüssel](/docs/de/managed-settings#how-claude-code-combines-managed-sources) bereitstellt6701 * `true`: Claude Code auf WSL liest verwaltete Einstellungen aus der Windows-Richtlinienkette und liest `/etc/claude-code` nur, wenn kein Windows-Admin-Dokument vorhanden ist

6465 * `false`: WSL liest nur `/etc/claude-code`6702 * `false`: WSL liest nur `/etc/claude-code`

6466* **Standard**: `false`, sodass WSL nur `/etc/claude-code` liest6703* **Standard**: `false`, sodass WSL nur `/etc/claude-code` liest

6467 6704 


6471}6708}

6472```6709```

6473 6710 

6474Sobald eine Admin-Quelle die Kette einschaltet, tritt die HKCU-Richtlinie auf WSL nur bei, wenn HKCU auch den Schlüssel auf `true` setzt. Diese Kopie schaltet die Kette nicht von selbst ein. Eine Windows-Quelle, die nur diesen Schlüssel enthält, zählt nicht als Richtlinienquelle, sodass eine niedrigere Prioritätsquelle immer noch die Richtlinie liefert. Dieser Schlüssel hat keine Auswirkung auf natives Windows.6711Sobald eine Admin-Quelle die Kette einschaltet, tritt die HKCU-Richtlinie auf WSL nur bei, wenn HKCU auch den Schlüssel auf `true` setzt. Diese Kopie schaltet die Kette nicht von selbst ein. Eine Windows-Quelle, die nur diesen Schlüssel enthält, gesetzt auf `true` oder `false`, zählt nicht als Richtlinienquelle, sodass eine niedrigere Prioritätsquelle immer noch die Richtlinie liefert. Dieser Schlüssel hat keine Auswirkung auf natives Windows.

6712 

6713Claude Code liest `true` und `false` mit oder ohne Anführungszeichen und liest `null` als Entfernen des Schlüssels. Eine admin-kontrollierte Windows-Quelle, die einen anderen Wert enthält, zählt als [vorhandenes Admin-Dokument](/docs/de/managed-settings#present-admin-documents) mit eingeschalteter Kette: Weder `/etc/claude-code` noch HKCU gelten, und eine Warnung beim Start benennt den Schlüssel. Ein HKLM-Wert oder eine Datei im Windows-Ordner, die existiert, aber nicht gelesen werden kann, verhindert ebenfalls, dass `/etc/claude-code` gilt, unabhängig davon, ob die Kette eingeschaltet ist. Erfordert Claude Code v2.1.282 oder später.

6475 6714 

6476<h2 id="global-config-settings">6715<h2 id="global-config-settings">

6477 Globale Konfigurationseinstellungen6716 Globale Konfigurationseinstellungen


6485 6724 

6486Verbinden Sie sich automatisch mit einer laufenden IDE, wenn Sie Claude Code von einem externen Terminal aus starten. Erscheint in `/config` als **Auto-Verbindung zur IDE (externes Terminal)**, wenn Sie Claude Code außerhalb eines VS Code- oder JetBrains-Terminals ausführen.6725Verbinden Sie sich automatisch mit einer laufenden IDE, wenn Sie Claude Code von einem externen Terminal aus starten. Erscheint in `/config` als **Auto-Verbindung zur IDE (externes Terminal)**, wenn Sie Claude Code außerhalb eines VS Code- oder JetBrains-Terminals ausführen.

6487 6726 

6488* **Bereich**: [`Global config`](#scopes)6727* **Geltungsbereich**: [`Global config`](#scopes)

6489* **Typ**: Boolean6728* **Typ**: Boolean

6490 * `true`: Claude Code verbindet sich automatisch mit einer laufenden IDE, wenn Sie es von einem externen Terminal aus starten6729 * `true`: Claude Code verbindet sich automatisch mit einer laufenden IDE, wenn Sie es von einem externen Terminal aus starten

6491 * `false`: Claude Code verbindet sich nicht automatisch von einem externen Terminal aus; innerhalb eines VS Code- oder JetBrains-Terminals oder mit `--ide` verbindet es sich trotzdem6730 * `false`: Claude Code verbindet sich nicht automatisch von einem externen Terminal aus; innerhalb eines VS Code- oder JetBrains-Terminals oder mit `--ide` verbindet es sich trotzdem

6492* **Standard**: `false`6731* **Standard**: `false`

6493* **Sitzungsübergreifende Überschreibungen**: [`CLAUDE_CODE_AUTO_CONNECT_IDE`](/docs/de/env-vars) hat Vorrang vor diesem Schlüssel für eine Sitzung, in beide Richtungen6732* **Überschreibungen pro Sitzung**: [`CLAUDE_CODE_AUTO_CONNECT_IDE`](/docs/de/env-vars) hat Vorrang vor diesem Schlüssel für eine Sitzung, in beide Richtungen

6494 6733 

6495```json ~/.claude.json theme={null}6734```json ~/.claude.json theme={null}

6496{6735{


6506 6745 

6507Installieren Sie die Claude Code IDE-Erweiterung automatisch, wenn Sie Claude Code von einem VS Code-Terminal aus ausführen. Erscheint in `/config` als **Auto-Install IDE-Erweiterung**, wenn Sie Claude Code innerhalb eines VS Code- oder JetBrains-Terminals ausführen.6746Installieren Sie die Claude Code IDE-Erweiterung automatisch, wenn Sie Claude Code von einem VS Code-Terminal aus ausführen. Erscheint in `/config` als **Auto-Install IDE-Erweiterung**, wenn Sie Claude Code innerhalb eines VS Code- oder JetBrains-Terminals ausführen.

6508 6747 

6509* **Bereich**: [`Global config`](#scopes)6748* **Geltungsbereich**: [`Global config`](#scopes)

6510* **Typ**: Boolean6749* **Typ**: Boolean

6511 * `true`: Claude Code installiert die IDE-Erweiterung automatisch, wenn Sie es von einem VS Code-Terminal aus ausführen6750 * `true`: Claude Code installiert die IDE-Erweiterung automatisch, wenn Sie es von einem VS Code-Terminal aus ausführen

6512 * `false`: Claude Code installiert die Erweiterung nicht automatisch6751 * `false`: Claude Code installiert die Erweiterung nicht automatisch

6513* **Standard**: `true`6752* **Standard**: `true`

6514* **Sitzungsübergreifende Überschreibungen**: [`CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL`](/docs/de/env-vars) auf `1` gesetzt überspringt die Installation für eine Sitzung, auch wenn dieser Schlüssel `true` ist6753* **Überschreibungen pro Sitzung**: [`CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL`](/docs/de/env-vars) auf `1` gesetzt überspringt die Installation für eine Sitzung, auch wenn dieser Schlüssel `true` ist

6515 6754 

6516```json ~/.claude.json theme={null}6755```json ~/.claude.json theme={null}

6517{6756{


6521 6760 

6522Claude Code ignoriert diesen Schlüssel in `settings.json`.6761Claude Code ignoriert diesen Schlüssel in `settings.json`.

6523 6762 

6763<h3 id="claudeinchromedefaultenabled">

6764 `claudeInChromeDefaultEnabled`

6765</h3>

6766 

6767Starten Sie jede interaktive CLI-Sitzung mit aktivierter [Chrome-Integration](/docs/de/chrome), ohne jedes Mal `--chrome` übergeben zu müssen. Wenn Sie [`claude remote-control`](/docs/de/remote-control) ausführen, folgt auch eine Sitzung, die dadurch für einen Ihrer [Projekt](/docs/de/claude-projects)-Threads gestartet wird, diesem Schlüssel, außer im Modus `bypassPermissions`. Wenn Sie `/chrome` ausführen und **Standardmäßig aktiviert** auswählen, wird dieser Schlüssel für Sie gesetzt, wie in [Chrome standardmäßig aktivieren](/docs/de/chrome#enable-chrome-by-default) beschrieben. Erscheint in `/config` als **Claude in Chrome standardmäßig aktiviert**.

6768 

6769* **Geltungsbereich**: [`Global config`](#scopes)

6770* **Typ**: Boolean

6771 * `true`: Claude Code aktiviert die Chrome-Integration, wenn eine interaktive CLI-Sitzung startet, so wie beim Übergeben von `--chrome`

6772 * `false`: Interaktive CLI-Sitzungen starten mit deaktivierter Chrome-Integration, und Claude Code [bietet die Einrichtung](/docs/de/chrome#install-the-extension-when-claude-asks) nicht mehr an. Übergeben Sie `--chrome`, um sie für eine interaktive Sitzung zu aktivieren

6773* **Standard**: nicht gesetzt, sodass die Chrome-Integration deaktiviert ist und Claude Code die Einrichtung weiterhin anbieten kann

6774* **Überschreibungen pro Sitzung**: `--chrome` und [`--no-chrome`](/docs/de/cli-reference) haben für eine interaktive Sitzung Vorrang vor diesem Schlüssel

6775 

6776```json ~/.claude.json theme={null}

6777{

6778 "claudeInChromeDefaultEnabled": true

6779}

6780```

6781 

6782Claude Code ignoriert diesen Schlüssel in `settings.json`.

6783 

6784<h3 id="copyfullresponse">

6785 `copyFullResponse`

6786</h3>

6787 

6788Lassen Sie [`/copy`](/docs/de/commands) jedes Mal die vollständige Antwort kopieren, ohne die Auswahl, die sonst angezeigt wird, wenn die Antwort Codeblöcke enthält. Wenn Sie in dieser Auswahl **Immer vollständige Antwort kopieren** wählen, wird dieser Schlüssel auf `true` gesetzt. Erscheint in `/config` als **/copy-Auswahl überspringen**.

6789 

6790* **Geltungsbereich**: [`Global config`](#scopes)

6791* **Typ**: Boolean

6792 * `true`: `/copy` kopiert die vollständige Antwort, ohne die Auswahl anzuzeigen

6793 * `false`: Wenn die Antwort Codeblöcke enthält, zeigt `/copy` eine Auswahl an, in der Sie einen Codeblock oder die vollständige Antwort wählen

6794* **Standard**: `false`

6795 

6796```json ~/.claude.json theme={null}

6797{

6798 "copyFullResponse": true

6799}

6800```

6801 

6802Claude Code ignoriert diesen Schlüssel in `settings.json`.

6803 

6524<h3 id="copyonselect">6804<h3 id="copyonselect">

6525 `copyOnSelect`6805 `copyOnSelect`

6526</h3>6806</h3>

6527 6807 

6528Kopieren Sie Text automatisch in Ihre Zwischenablage, wenn Sie die Auswahl mit der Maus in der [Vollbilddarstellung](/docs/de/fullscreen#use-the-mouse) oder [Agent-Ansicht](/docs/de/agent-view) beenden. Erscheint in `/config` als **Beim Auswählen kopieren**, während die Vollbilddarstellung aktiviert ist.6808Kopieren Sie Text automatisch in Ihre Zwischenablage, wenn Sie die Auswahl mit der Maus in der [Vollbilddarstellung](/docs/de/fullscreen#use-the-mouse) oder [Agent-Ansicht](/docs/de/agent-view) beenden. Erscheint in `/config` als **Beim Auswählen kopieren**, während die Vollbilddarstellung aktiviert ist.

6529 6809 

6530* **Bereich**: [`Global config`](#scopes)6810* **Geltungsbereich**: [`Global config`](#scopes)

6531* **Typ**: Boolean6811* **Typ**: Boolean

6532 * `true`: Claude Code kopiert Text in Ihre Zwischenablage, wenn Sie die Auswahl beenden6812 * `true`: Claude Code kopiert Text in Ihre Zwischenablage, wenn Sie die Auswahl beenden

6533 * `false`: Das Auswählen von Text lässt Ihre Zwischenablage unverändert, und Sie [kopieren die Auswahl stattdessen mit einer Tastenkombination](/docs/de/fullscreen#use-the-mouse)6813 * `false`: Das Auswählen von Text lässt Ihre Zwischenablage unverändert, und Sie [kopieren die Auswahl stattdessen mit einer Tastenkombination](/docs/de/fullscreen#use-the-mouse)


6541 6821 

6542Claude Code ignoriert diesen Schlüssel in `settings.json`.6822Claude Code ignoriert diesen Schlüssel in `settings.json`.

6543 6823 

6824<h3 id="defaulttoagentsview">

6825 `defaultToAgentsView`

6826</h3>

6827 

6828Öffnen Sie die [Agent-Ansicht](/docs/de/agent-view) statt einer neuen Konversation, wenn Sie `claude` ohne Argumente ausführen. Erscheint in `/config` als **Agent-Ansicht standardmäßig öffnen**, sofern die Agent-Ansicht nicht [ausgeschaltet](#disableagentview) ist.

6829 

6830* **Geltungsbereich**: [`Global config`](#scopes)

6831* **Typ**: Boolean

6832 * `true`: `claude` ohne Argumente öffnet die Agent-Ansicht, sofern die Agent-Ansicht nicht [ausgeschaltet](#disableagentview) ist

6833 * `false`: `claude` ohne Argumente startet eine neue Konversation

6834* **Standard**: `false`

6835 

6836```json ~/.claude.json theme={null}

6837{

6838 "defaultToAgentsView": true

6839}

6840```

6841 

6842Claude Code ignoriert diesen Schlüssel in `settings.json`.

6843 

6544<h3 id="difftool">6844<h3 id="difftool">

6545 `diffTool`6845 `diffTool`

6546</h3>6846</h3>

6547 6847 

6548Wählen Sie, wo Claude Code den Diff einer `Edit`- oder `Write`-Änderung anzeigt, die es vorschlägt, wenn eine [VS Code](/docs/de/vs-code)- oder [JetBrains](/docs/de/jetbrains#features)-IDE verbunden ist: `"auto"` öffnet es im Diff-Viewer der IDE, `"terminal"` behält es im Terminal. Erscheint in `/config` als **Diff-Tool** nur, wenn Claude Code mit einer VS Code- oder JetBrains-IDE verbunden ist.6848Wählen Sie, wo Claude Code den Diff einer `Edit`- oder `Write`-Änderung anzeigt, die es vorschlägt, wenn eine [VS Code](/docs/de/vs-code)- oder [JetBrains](/docs/de/jetbrains#features)-IDE verbunden ist: `"auto"` öffnet es im Diff-Viewer der IDE, `"terminal"` behält es im Terminal. Erscheint in `/config` als **Diff-Tool** nur, wenn Claude Code mit einer VS Code- oder JetBrains-IDE verbunden ist.

6549 6849 

6550* **Bereich**: [`Global config`](#scopes)6850* **Geltungsbereich**: [`Global config`](#scopes)

6551* **Typ**: string, einer von:6851* **Typ**: string, einer von:

6552 * `"auto"`: Claude Code öffnet den Diff im Diff-Viewer der IDE, wenn eine VS Code- oder JetBrains-IDE verbunden ist6852 * `"auto"`: Claude Code öffnet den Diff im Diff-Viewer der IDE, wenn eine VS Code- oder JetBrains-IDE verbunden ist

6553 * `"terminal"`: Claude Code behält den Diff im Terminal6853 * `"terminal"`: Claude Code behält den Diff im Terminal


6565 `externalEditorContext`6865 `externalEditorContext`

6566</h3>6866</h3>

6567 6867 

6568Wenn Sie `Ctrl+G` drücken, öffnet Claude Code die Eingabeaufforderung, die Sie eingeben, in Ihrem [externen Editor](/docs/de/interactive-mode#general-controls). Mit diesem Schlüssel aktiviert, startet der Editor-Puffer mit Claudes vorheriger Antwort als `#`-Kommentarzeilen, damit Sie sie lesen können, während Sie schreiben, und Claude Code entfernt diese Zeilen, wenn Sie speichern. Erscheint in `/config` als **Letzte Antwort im externen Editor anzeigen**.6868Wenn Sie `Ctrl+G` drücken, öffnet Claude Code den Prompt, den Sie gerade eingeben, in Ihrem [externen Editor](/docs/de/interactive-mode#general-controls). Mit diesem Schlüssel aktiviert, startet der Editor-Puffer mit Claudes vorheriger Antwort als `#`-Kommentarzeilen, damit Sie sie lesen können, während Sie schreiben, und Claude Code entfernt diese Zeilen, wenn Sie speichern. Erscheint in `/config` als **Letzte Antwort im externen Editor anzeigen**.

6569 6869 

6570* **Bereich**: [`Global config`](#scopes)6870* **Geltungsbereich**: [`Global config`](#scopes)

6571* **Typ**: Boolean6871* **Typ**: Boolean

6572 * `true`: Der Editor-Puffer startet mit Claudes vorheriger Antwort als `#`-Kommentarzeilen, die Claude Code beim Speichern entfernt6872 * `true`: Der Editor-Puffer startet mit Claudes vorheriger Antwort als `#`-Kommentarzeilen, die Claude Code beim Speichern entfernt

6573 * `false`: Der Editor-Puffer öffnet sich nur mit Ihrer Eingabeaufforderung6873 * `false`: Der Editor-Puffer öffnet sich nur mit Ihrem Prompt

6574* **Standard**: `false`6874* **Standard**: `false`

6575 6875 

6576```json ~/.claude.json theme={null}6876```json ~/.claude.json theme={null}


6579}6879}

6580```6880```

6581 6881 

6582Mit aktiviertem Schlüssel sieht der Puffer, den Claude Code öffnet, so aus, und nur der Text unter der Markierungszeile wird als Ihre Eingabeaufforderung gesendet:6882Mit aktiviertem Schlüssel sieht der Puffer, den Claude Code öffnet, so aus, und nur der Text unter der Markierungszeile wird als Ihr Prompt gesendet:

6583 6883 

6584```text theme={null}6884```text theme={null}

6585# ─── Claudes letzte Antwort (zur Referenz; beim Speichern entfernt) ───6885# ─── Claudes letzte Antwort (zur Referenz; beim Speichern entfernt) ───


6595 6895 

6596Claude Code ignoriert diesen Schlüssel in `settings.json`.6896Claude Code ignoriert diesen Schlüssel in `settings.json`.

6597 6897 

6898<h3 id="leftarrowopensagents">

6899 `leftArrowOpensAgents`

6900</h3>

6901 

6902Drücken Sie `←` in einem leeren Prompt, um [die Sitzung in den Hintergrund zu verschieben und die Agent-Ansicht zu öffnen](/docs/de/agent-view#switch-sessions-without-leaving-the-terminal). Setzen Sie diesen Schlüssel auf `false`, um diese Tastenkombination auszuschalten. Erscheint in `/config` als **← öffnet Agenten**, wenn die Agent-Ansicht verfügbar ist.

6903 

6904* **Geltungsbereich**: [`Global config`](#scopes)

6905* **Typ**: Boolean

6906 * `true`: Das Drücken von `←` in einem leeren Prompt in einer Sitzung, die Sie im Terminal gestartet haben, verschiebt diese in den Hintergrund und öffnet die Agent-Ansicht

6907 * `false`: Claude Code schaltet die Tastenkombination aus; in einer Sitzung, [mit der Sie sich aus der Agent-Ansicht verbunden haben](/docs/de/agent-view#attach-to-a-session), trennt `←` in einem leeren Prompt die Verbindung weiterhin

6908* **Standard**: `true`

6909 

6910```json ~/.claude.json theme={null}

6911{

6912 "leftArrowOpensAgents": false

6913}

6914```

6915 

6916Claude Code ignoriert diesen Schlüssel in `settings.json`.

6917 

6598<h3 id="permissionexplainerenabled">6918<h3 id="permissionexplainerenabled">

6599 `permissionExplainerEnabled`6919 `permissionExplainerEnabled`

6600</h3>6920</h3>

6601 6921 

6602<Warning>6922<Warning>

6603 Entfernt in v2.1.257, zusammen mit der `Ctrl+E`-Befehlserklärung auf Bash- und PowerShell-Berechtigungsaufforderungen. Das Setzen hat keine Auswirkung auf aktuelle Versionen.6923 Entfernt in v2.1.257, zusammen mit der `Ctrl+E`-Befehlserklärung in Bash- und PowerShell-Berechtigungsabfragen. Das Setzen hat keine Auswirkung auf aktuelle Versionen.

6604</Warning>6924</Warning>

6605 6925 

6606Bis v2.1.256 konnten Sie `Ctrl+E` auf einer Bash- oder PowerShell-Berechtigungsaufforderung drücken, um eine modellgenerierte Erklärung des Befehls zu sehen, und diesen Schlüssel auf `false` setzen, um diese Tastenkombination auszuschalten.6926Bis v2.1.256 konnten Sie `Ctrl+E` in einer Bash- oder PowerShell-Berechtigungsabfrage drücken, um eine modellgenerierte Erklärung des Befehls zu sehen, und diesen Schlüssel auf `false` setzen, um diese Tastenkombination auszuschalten.

6927 

6928* **Geltungsbereich**: [`Global config`](#scopes). Auf v2.1.256 und früher.

6929* **Typ**: Boolean

6930* **Standard**: `true`

6931 

6932<h3 id="prstatusfooterenabled">

6933 `prStatusFooterEnabled`

6934</h3>

6935 

6936Zeigen Sie in der Fußzeile des Prompts ein Badge für den offenen Pull Request oder Merge Request des aktuellen Branches an, mit einer farbigen Unterstreichung, die dessen [Status](/docs/de/interactive-mode#pr-review-status) anzeigt. Erscheint in `/config` als **PR-Status in Fußzeile anzeigen**.

6607 6937 

6608* **Bereich**: [`Global config`](#scopes). Auf v2.1.256 und früher.6938* **Geltungsbereich**: [`Global config`](#scopes)

6609* **Typ**: Boolean6939* **Typ**: Boolean

6940 * `true`: Die Fußzeile zeigt das Badge unter den in [PR-Review-Status](/docs/de/interactive-mode#pr-review-status) beschriebenen Bedingungen an

6941 * `false`: Claude Code überspringt die Prüfung von Pull Requests und Merge Requests für die Fußzeile und zeigt dieses Badge nicht an. Eine Sitzung, [mit der Sie sich aus der Agent-Ansicht verbunden haben](/docs/de/agent-view#attach-to-a-session), kann weiterhin einen einfachen Link zu einem [mit ihr verknüpften](/docs/de/agent-view#pull-request-status) Pull Request anzeigen

6610* **Standard**: `true`6942* **Standard**: `true`

6611 6943 

6944```json ~/.claude.json theme={null}

6945{

6946 "prStatusFooterEnabled": false

6947}

6948```

6949 

6950Claude Code ignoriert diesen Schlüssel in `settings.json`.

6951 

6612<h3 id="teammatedefaultmodel">6952<h3 id="teammatedefaultmodel">

6613 `teammateDefaultModel`6953 `teammateDefaultModel`

6614</h3>6954</h3>


6617 Entfernt in v2.1.234, zusammen mit seiner `/config`-Zeile **Standard-Teamkollegen-Modell**. Das Setzen hat keine Auswirkung auf aktuelle Versionen.6957 Entfernt in v2.1.234, zusammen mit seiner `/config`-Zeile **Standard-Teamkollegen-Modell**. Das Setzen hat keine Auswirkung auf aktuelle Versionen.

6618</Warning>6958</Warning>

6619 6959 

6620Bis v2.1.233 setzen Sie diesen Schlüssel auf das Modell für [Agent-Team](/docs/de/agent-teams#specify-teammates-and-models)-Teamkollegen, für die Ihre Eingabeaufforderung kein Modell benannt hat: ein Alias wie `"sonnet"` oder `null`, um dem Modell des Leads zu folgen. Für das Modell, das Claude Code für solche Teamkollegen jetzt auswählt, siehe [Teamkollegen und Modelle angeben](/docs/de/agent-teams#specify-teammates-and-models).6960Bis v2.1.233 setzten Sie diesen Schlüssel auf das Modell für [Agent-Team](/docs/de/agent-teams#specify-teammates-and-models)-Teamkollegen, für die Ihr Prompt kein Modell benannt hat: ein Alias wie `"sonnet"` oder `null`, um dem Modell des Leads zu folgen. Für das Modell, das Claude Code für solche Teamkollegen jetzt auswählt, siehe [Teamkollegen und Modelle angeben](/docs/de/agent-teams#specify-teammates-and-models).

6621 6961 

6622* **Bereich**: [`Global config`](#scopes). Auf v2.1.233 und früher.6962* **Geltungsbereich**: [`Global config`](#scopes). Auf v2.1.233 und früher.

6623* **Typ**: string, ein Modell-Alias oder vollständige Modell-ID oder `null`6963* **Typ**: string, ein Modell-Alias oder vollständige Modell-ID oder `null`

6624* **Standard**: nicht gesetzt6964* **Standard**: nicht gesetzt

6625 6965 

skills.md +22 −4

Details

56 56 

57Claude bearbeitet die aufgezeichnete Datei nur, wenn es einen Lauf falsch gesteuert hat, z. B. einen Befehl, der fehlgeschlagen ist, oder einen fehlenden Schritt, damit Sie die Datei ohne sitzungsspezifische Diffs committen können. Vor v2.1.205 sagte der gebündelte Skill Claude, dass es alles einbeziehen sollte, was ein Lauf gelernt hat, was häufige Merge-Konflikte verursachte.57Claude bearbeitet die aufgezeichnete Datei nur, wenn es einen Lauf falsch gesteuert hat, z. B. einen Befehl, der fehlgeschlagen ist, oder einen fehlenden Schritt, damit Sie die Datei ohne sitzungsspezifische Diffs committen können. Vor v2.1.205 sagte der gebündelte Skill Claude, dass es alles einbeziehen sollte, was ein Lauf gelernt hat, was häufige Merge-Konflikte verursachte.

58 58 

59<h3 id="run-your-checks-before-each-commit">

60 Führen Sie Ihre Prüfungen vor jedem Commit aus

61</h3>

62 

63Wenn eine Sitzung mit einem vorhandenen Skill namens `verify` oder `simplify` startet, weisen die Commit-Anweisungen von Claude Code Claude an, ihn unmittelbar vor jedem Commit auszuführen, außer bei Änderungen an Dokumentation oder Tests. Dies erfordert Claude Code v2.1.286 oder später. Claude erhält diese Anweisung, wenn zu Beginn der Sitzung die folgenden Bedingungen erfüllt sind:

64 

65* **Speicherort**: Der Skill wird aus dem Enterprise-, persönlichen, Projekt- oder zusätzlichen Verzeichnis-[Speicherort](#where-skills-live) geladen oder aus einer `.claude/commands/`-Datei mit diesem Namen. Das Rezept, das `/verify` in Ihrem Repository-Root aufzeichnet, ist ein Projekt-Skill und zählt daher. Die mitgelieferten Skills `/verify` und `/simplify`, Plugin-Skills und Skills aus Ihrem claude.ai-Konto zählen nicht.

66* **Aufruf**: Claude kann den Skill aufrufen. Wenn Sie [Claude daran gehindert haben, ihn aufzurufen](#control-who-invokes-a-skill), zum Beispiel mit `disable-model-invocation: true`, erhält Claude die Anweisung nicht.

67* **Git-Anweisungen**: Sie haben [`includeGitInstructions`](/docs/de/settings-reference#includegitinstructions) nicht ausgeschaltet. Wenn Sie es ausschalten, wird diese Anweisung zusammen mit den übrigen integrierten Commit- und PR-Anweisungen entfernt.

68 

59<h3 id="work-on-claude-api-projects">69<h3 id="work-on-claude-api-projects">

60 Arbeiten Sie an Claude API-Projekten70 Arbeiten Sie an Claude API-Projekten

61</h3>71</h3>


290 300 

291Claude Code wendet zwei Regeln auf die Frontmatter eines synchronisierten Skills an:301Claude Code wendet zwei Regeln auf die Frontmatter eines synchronisierten Skills an:

292 302 

293* Claude Code respektiert die Frontmatter in jeder Art von Sitzung, daher geht eine `allowed-tools`-Gewährung durch den normalen [Berechtigungsfluss](/docs/de/permissions).303* Das Frontmatter gilt in jeder Art von Sitzung, daher durchläuft eine `allowed-tools`-Gewährung den normalen [Berechtigungsfluss](/docs/de/permissions). Wenn Ihre Organisation `allowManagedPermissionRulesOnly` setzt, [gilt die Gewährung nicht](#when-only-managed-permission-rules-apply).

294* Claude Code bereinigt den Anzeigetext, den der Skill bereitstellt, wie seine Beschreibung. Es entfernt Steuerzeichen, und in Text, der Claude erreicht, wie die Beschreibung, maskiert es auch spitzklammern, damit der Text Claude Code's interne Formatierung nicht imitieren kann. Diese Bereinigung erfordert Claude Code v2.1.228 oder später.304* Claude Code bereinigt den Anzeigetext, den der Skill bereitstellt, wie seine Beschreibung. Es entfernt Steuerzeichen, und in Text, der Claude erreicht, wie die Beschreibung, maskiert es auch spitzklammern, damit der Text Claude Code's interne Formatierung nicht imitieren kann. Diese Bereinigung erfordert Claude Code v2.1.228 oder später.

295 305 

296<h4 id="how-claude-code-handles-the-body-of-a-synced-skill">306<h4 id="how-claude-code-handles-the-body-of-a-synced-skill">


603 613 

604Das Feld `allowed-tools` gewährt Genehmigung für die aufgelisteten Tools während des Turns, der die Fähigkeit aufruft, sodass Claude sie ohne Genehmigungsaufforderung verwenden kann. Die Genehmigung wird gelöscht, wenn Sie Ihre nächste Nachricht senden, obwohl der Fähigkeitsinhalt [im Kontext bleibt](#skill-content-lifecycle); das erneute Aufrufen der Fähigkeit wendet es für diesen Turn erneut an. Es schränkt nicht ein, welche Tools verfügbar sind: Jedes Tool bleibt aufrufbar, und Ihre [Berechtigungseinstellungen](/docs/de/permissions) regieren immer noch Tools, die nicht aufgelistet sind. Um Tools für die ganze Sitzung vorab zu genehmigen, anstatt einen einzelnen Turn, fügen Sie stattdessen Zulassungsregeln zu diesen Berechtigungseinstellungen hinzu.614Das Feld `allowed-tools` gewährt Genehmigung für die aufgelisteten Tools während des Turns, der die Fähigkeit aufruft, sodass Claude sie ohne Genehmigungsaufforderung verwenden kann. Die Genehmigung wird gelöscht, wenn Sie Ihre nächste Nachricht senden, obwohl der Fähigkeitsinhalt [im Kontext bleibt](#skill-content-lifecycle); das erneute Aufrufen der Fähigkeit wendet es für diesen Turn erneut an. Es schränkt nicht ein, welche Tools verfügbar sind: Jedes Tool bleibt aufrufbar, und Ihre [Berechtigungseinstellungen](/docs/de/permissions) regieren immer noch Tools, die nicht aufgelistet sind. Um Tools für die ganze Sitzung vorab zu genehmigen, anstatt einen einzelnen Turn, fügen Sie stattdessen Zulassungsregeln zu diesen Berechtigungseinstellungen hinzu.

605 615 

606Workspace-Vertrauen gatet dieses Feld nicht. Claude Code wendet die `allowed-tools` einer Projektfähigkeit an, wann immer Sie oder Claude die Fähigkeit aufrufen, einschließlich in einem `-p`-Lauf in einem Ordner, dem Sie nie vertraut haben. Eine Fähigkeit kann sich selbst breiten Tool-Zugriff gewähren, daher überprüfen Sie die `allowed-tools` von Fähigkeiten, die in ein Repository eingecheckt sind, bevor Sie Claude Code dort ausführen.616Workspace-Vertrauen hat keinen Einfluss auf dieses Feld. Claude Code wendet die `allowed-tools` eines Projekt-Skills selbst in einem `-p`-Lauf in einem Ordner an, dem Sie nie vertraut haben. Ein Skill kann sich selbst weitreichenden Tool-Zugriff gewähren, überprüfen Sie daher die `allowed-tools` von Skills, die in ein Repository eingecheckt sind, bevor Sie Claude Code dort ausführen. Wie Sie das Feld für Repository-Skills in Ihrer gesamten Organisation unwirksam machen, erfahren Sie unter [Wenn nur verwaltete Berechtigungsregeln gelten](#when-only-managed-permission-rules-apply).

607 617 

608Diese Fähigkeit ermöglicht es Claude, Git-Befehle ohne Genehmigung pro Verwendung auszuführen, wann immer Sie sie aufrufen:618Diese Fähigkeit ermöglicht es Claude, Git-Befehle ohne Genehmigung pro Verwendung auszuführen, wann immer Sie sie aufrufen:

609 619 


618 628 

619Um Tools aus Claudes verfügbarem Pool zu entfernen, während eine Fähigkeit aktiv ist, listen Sie sie im `disallowed-tools` im Frontmatter der Fähigkeit auf. Die Einschränkung wird gelöscht, wenn Sie Ihre nächste Nachricht senden. Wie Ablehnungsregeln kann das Feld [`EndConversation`](/docs/de/tools-reference#endconversation-tool-behavior) nicht entfernen, während ein anderes Tool verfügbar bleibt. Um Tools über alle Fähigkeiten und Eingabeaufforderungen hinweg zu blockieren, fügen Sie Ablehnungsregeln in Ihren [Berechtigungseinstellungen](/docs/de/permissions) hinzu.629Um Tools aus Claudes verfügbarem Pool zu entfernen, während eine Fähigkeit aktiv ist, listen Sie sie im `disallowed-tools` im Frontmatter der Fähigkeit auf. Die Einschränkung wird gelöscht, wenn Sie Ihre nächste Nachricht senden. Wie Ablehnungsregeln kann das Feld [`EndConversation`](/docs/de/tools-reference#endconversation-tool-behavior) nicht entfernen, während ein anderes Tool verfügbar bleibt. Um Tools über alle Fähigkeiten und Eingabeaufforderungen hinweg zu blockieren, fügen Sie Ablehnungsregeln in Ihren [Berechtigungseinstellungen](/docs/de/permissions) hinzu.

620 630 

631<h4 id="when-only-managed-permission-rules-apply">

632 Wenn nur verwaltete Berechtigungsregeln gelten

633</h4>

634 

635Wenn Ihre Organisation `allowManagedPermissionRulesOnly` in den verwalteten Einstellungen setzt, ignoriert Claude Code `allowed-tools` in Projekt- und persönlichen Skills sowie in den [weiteren Quellen, die der Eintrag der Einstellung aufführt](/docs/de/settings-reference#allowmanagedpermissionrulesonly). Dies erfordert Claude Code v2.1.282 oder später.

636 

637Die Tools, die ein betroffener Skill auflistet, durchlaufen stattdessen die verwalteten Regeln Ihrer Organisation und die normale Berechtigungsabfrage. Führen Sie `/status` aus, um jeden Skill aufzulisten, dessen `allowed-tools` Claude Code in der Sitzung bisher ignoriert hat. Für einen eingefügten Befehl im Skill, den keine verwaltete Regel erlaubt, gilt [Berechtigungsprüfungen für eingefügte Befehle](#permission-checks-on-injected-commands).

638 

621<h3 id="pass-arguments-to-skills">639<h3 id="pass-arguments-to-skills">

622 Argumente an Fähigkeiten übergeben640 Argumente an Fähigkeiten übergeben

623</h3>641</h3>


766 784 

767Injizierte Befehle fordern niemals Genehmigung an, während der Skill gerendert wird. Claude Code prüft jeden gegen Ihre [Berechtigungsregeln](/docs/de/permissions) zuerst. Ein Befehl, den eine Deny-Regel erfasst, bricht den Aufruf mit `Shell command permission check failed for pattern "..."` ab.785Injizierte Befehle fordern niemals Genehmigung an, während der Skill gerendert wird. Claude Code prüft jeden gegen Ihre [Berechtigungsregeln](/docs/de/permissions) zuerst. Ein Befehl, den eine Deny-Regel erfasst, bricht den Aufruf mit `Shell command permission check failed for pattern "..."` ab.

768 786 

769Außerhalb des [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode), wenn die Berechtigungsprüfung eines Befehls etwas anderes als Zulassung zurückgibt, bricht Claude Code den Aufruf ab. Dies schließt eine Regel ein, die normalerweise fragen würde. Um zu verhindern, dass ein nicht übereinstimmender Befehl hier abbricht, genehmigen Sie ihn vorher mit [`allowed-tools`](#pre-approve-tools-for-a-skill). Deny- und Ask-Regeln überschreiben immer noch `allowed-tools`. Siehe [Berechtigungen verwalten](/docs/de/permissions#manage-permissions).787Außerhalb des [Auto-Modus](/docs/de/permission-modes#eliminate-prompts-with-auto-mode) bricht Claude Code den Aufruf mit demselben Fehler ab, wenn die Berechtigungsprüfung eines Befehls etwas anderes als allow zurückgibt. Dies schließt eine Regel ein, die normalerweise bei Ihnen nachfragen würde. Um zu verhindern, dass ein nicht erfasster Befehl hier abbricht, genehmigen Sie ihn vorab mit [`allowed-tools`](#pre-approve-tools-for-a-skill). Wenn Ihre Organisation Berechtigungsregeln auf verwaltete Einstellungen beschränkt, siehe [Wenn nur verwaltete Berechtigungsregeln gelten](#when-only-managed-permission-rules-apply). deny- und ask-Regeln überschreiben weiterhin `allowed-tools`. Siehe [Berechtigungen verwalten](/docs/de/permissions#manage-permissions).

770 788 

771Im Auto-Modus bricht ein Befehl, der sonst Ihre Genehmigung benötigen würde, den Aufruf nicht ab. Der Skill wird mit einer Anweisung geladen, die Claude anweist, den Befehl zuerst auszuführen, und Claudes eigener Aufruf wird dann durch [die üblichen Prüfungen des Auto-Modus](/docs/de/permission-modes#how-the-classifier-evaluates-actions) durchgeführt. Der Aufruf bricht immer noch in einem [verzweigten Skill](#run-skills-in-a-subagent) ab, der `agent` setzt, und in einer Sitzung, in der Claude nicht das [Shell-Tool hat, das injizierte Befehle ausführt](#how-injected-commands-run).789Im Auto-Modus bricht ein Befehl, der sonst Ihre Genehmigung benötigen würde, den Aufruf nicht ab. Der Skill wird mit einer Anweisung geladen, die Claude anweist, den Befehl zuerst auszuführen, und Claudes eigener Aufruf wird dann durch [die üblichen Prüfungen des Auto-Modus](/docs/de/permission-modes#how-the-classifier-evaluates-actions) durchgeführt. Der Aufruf bricht immer noch in einem [verzweigten Skill](#run-skills-in-a-subagent) ab, der `agent` setzt, und in einer Sitzung, in der Claude nicht das [Shell-Tool hat, das injizierte Befehle ausführt](#how-injected-commands-run).

772 790 


840 Claudes Skill-Zugriff einschränken858 Claudes Skill-Zugriff einschränken

841</h3>859</h3>

842 860 

843Standardmäßig kann Claude jeden Skill aufrufen, der nicht `disable-model-invocation: true` gesetzt hat. Skills, die `allowed-tools` definieren, gewähren Claude Zugriff auf diese Tools ohne Genehmigung pro Verwendung während des Zugs, der den Skill aufruft; die Genehmigung wird gelöscht, wenn Sie Ihre nächste Nachricht senden. Ihre [Berechtigungseinstellungen](/docs/de/permissions) regeln immer noch das Baseline-Genehmigungsverhalten für alle anderen Tools. Einige integrierte Befehle sind auch über das Skill-Tool verfügbar, einschließlich `/init` und `/security-review`. Andere integrierte Befehle wie `/compact` sind nicht verfügbar.861Standardmäßig kann Claude jeden Skill aufrufen, der nicht `disable-model-invocation: true` gesetzt hat. Skills, die [`allowed-tools`](#pre-approve-tools-for-a-skill) definieren, gewähren Claude Zugriff auf diese Tools ohne Genehmigung pro Verwendung während des Turns, der den Skill aufruft; die Freigabe erlischt, wenn Sie Ihre nächste Nachricht senden. Ihre [Berechtigungseinstellungen](/docs/de/permissions) regeln weiterhin das grundlegende Genehmigungsverhalten für alle anderen Tools. Einige integrierte Befehle sind auch über das Skill-Tool verfügbar, einschließlich `/init` und `/security-review`. Andere integrierte Befehle wie `/compact` sind nicht verfügbar.

844 862 

845Drei Möglichkeiten, um zu kontrollieren, welche Skills Claude aufrufen kann:863Drei Möglichkeiten, um zu kontrollieren, welche Skills Claude aufrufen kann:

846 864 

sub-agents.md +6 −1

Details

1255| `x` | Stoppen Sie den ausgewählten Fork, wenn er läuft, oder schließen Sie seine Zeile, wenn er nicht mehr läuft. In der Hauptsitzungs-Zeile oder in der Zeile des Forks, dessen Transkript Sie mit `Enter` geöffnet haben, gibt `x` stattdessen in die Eingabeaufforderung ein |1255| `x` | Stoppen Sie den ausgewählten Fork, wenn er läuft, oder schließen Sie seine Zeile, wenn er nicht mehr läuft. In der Hauptsitzungs-Zeile oder in der Zeile des Forks, dessen Transkript Sie mit `Enter` geöffnet haben, gibt `x` stattdessen in die Eingabeaufforderung ein |

1256| `Esc` | Fokus zurück zur Eingabeaufforderung |1256| `Esc` | Fokus zurück zur Eingabeaufforderung |

1257 1257 

1258Mit einem geöffneten Transkript eines Forks oder Subagenten gehen Folgefragen und [Skills](/docs/de/skills) an diesen Agenten, aber integrierte Befehle werden weiterhin in Ihrer Hauptkonversation ausgeführt. Ab v2.1.199 zeigt die Eingabe von `/model` oder `/fast` in dieser Ansicht einen Hinweis an, dass dies das Modell oder den Schnellmodus der Hauptkonversation ändert, nicht des angezeigten Agenten, anstatt es stillschweigend auszuführen.1258Mit einem geöffneten Transkript eines Forks oder Subagenten gehen Folgenachrichten und [Skills](/docs/de/skills) an diesen Agenten, und integrierte Befehle gehen an Ihre Hauptkonversation, mit diesen Schutzmaßnahmen:

1259 

1260* `/compact`, `/clear` und `/rewind` wirken auf die Hauptkonversation, daher bittet Claude Code Sie um Bestätigung, bevor einer dieser Befehle aus dieser Ansicht ausgeführt wird.

1261* `/model` und `/fast` legen das Modell und den Fast-Modus der Hauptkonversation fest, nicht die des angezeigten Agenten, daher werden sie aus dieser Ansicht nicht ausgeführt. Ein Hinweis erklärt Ihnen den Grund.

1262 

1263Damit der angezeigte Agent Ihre Nachricht liest, bevor die Arbeit abgeschlossen ist, auf die er wartet, senden Sie sie mit [`Ctrl+Enter` oder `Ctrl+X Ctrl+S`](/docs/de/keybindings#chat-actions). Jeder Shell-Befehl oder Subagent, auf den der Agent wartet und der in den [Hintergrund](/docs/de/tools-reference#background-commands) verschoben werden kann, wird dorthin verschoben und läuft weiter. Wenn der Agent gerade eine Antwort schreibt oder auf Arbeit wartet, die nicht in den Hintergrund verschoben werden kann, macht er weiter und liest Ihre Nachricht, sobald diese abgeschlossen ist. Erfordert Claude Code v2.1.286 oder später.

1259 1264 

1260<h3 id="how-forks-differ-from-other-subagents">1265<h3 id="how-forks-differ-from-other-subagents">

1261 Wie sich Forks von anderen Subagenten unterscheiden1266 Wie sich Forks von anderen Subagenten unterscheiden

Details

231 231 

232Wenn ein Vordergrund-Befehl sein Timeout erreicht, ohne zu beenden, verschiebt Claude Code ihn in den Hintergrund, anstatt ihn zu stoppen, es sei denn, der Befehl beginnt mit `sleep`. Ein verschobener Befehl hat sein [Zeitlimit](#time-limit-for-background-commands) ab dem Wechsel, und ein Vordergrund-Subagent-Befehl stoppt immer noch, wenn dieser Subagent seine Ausführung beendet.232Wenn ein Vordergrund-Befehl sein Timeout erreicht, ohne zu beenden, verschiebt Claude Code ihn in den Hintergrund, anstatt ihn zu stoppen, es sei denn, der Befehl beginnt mit `sleep`. Ein verschobener Befehl hat sein [Zeitlimit](#time-limit-for-background-commands) ab dem Wechsel, und ein Vordergrund-Subagent-Befehl stoppt immer noch, wenn dieser Subagent seine Ausführung beendet.

233 233 

234Das Setzen von [`CLAUDE_CODE_DISABLE_BACKGROUND_TASKS=1`](/docs/de/env-vars#variables) deaktiviert Auto-Backgrounding zusammen mit dem Rest der Hintergrund-Task-Funktionalität.234Das Setzen von [`CLAUDE_CODE_DISABLE_BACKGROUND_TASKS=1`](/docs/de/env-vars#variables) oder die Ausführung im [Bare-Modus](/docs/de/headless#start-faster-with-bare-mode) deaktiviert Auto-Backgrounding zusammen mit dem Rest der Hintergrundaufgaben-Funktionalität, sodass ein Befehl, der sein Timeout erreicht, stattdessen gestoppt wird.

235 235 

236Das Ergebnis eines Befehls, der in den Hintergrund verschoben wird, gibt an, was passiert ist:236Das Ergebnis eines Befehls, der in den Hintergrund verschoben wird, gibt an, was passiert ist:

237 237 

Details

22| `curl: (23)` oder `curl: (56) Failure writing output to destination` | [Überprüfen Sie die Konnektivität oder verwenden Sie ein alternatives Installationsprogramm](#curl-56-failure-writing-output-to-destination) |22| `curl: (23)` oder `curl: (56) Failure writing output to destination` | [Überprüfen Sie die Konnektivität oder verwenden Sie ein alternatives Installationsprogramm](#curl-56-failure-writing-output-to-destination) |

23| `Killed` während der Installation unter Linux oder `Installation was killed before it could finish (exit code 137)` | [Geben Sie Speicher frei oder fügen Sie Swap-Speicher hinzu](#install-killed-on-low-memory-linux-servers) |23| `Killed` während der Installation unter Linux oder `Installation was killed before it could finish (exit code 137)` | [Geben Sie Speicher frei oder fügen Sie Swap-Speicher hinzu](#install-killed-on-low-memory-linux-servers) |

24| `Raw mode is not supported` während der Installation | [Führen Sie das Installationsprogramm erneut aus](#raw-mode-is-not-supported-during-install) |24| `Raw mode is not supported` während der Installation | [Führen Sie das Installationsprogramm erneut aus](#raw-mode-is-not-supported-during-install) |

25| `EACCES: permission denied` während der Installation | [Korrigieren Sie die Berechtigungen des Installationsverzeichnisses](#permission-errors-during-installation) |

25| `TLS connect error` oder `SSL/TLS secure channel` | [Aktualisieren Sie CA-Zertifikate](#tls-or-ssl-connection-errors) |26| `TLS connect error` oder `SSL/TLS secure channel` | [Aktualisieren Sie CA-Zertifikate](#tls-or-ssl-connection-errors) |

26| `Failed to fetch version` oder kann den Download-Server nicht erreichen | [Überprüfen Sie Netzwerk- und Proxy-Einstellungen](#check-network-connectivity) |27| `Failed to fetch version` oder kann den Download-Server nicht erreichen | [Überprüfen Sie Netzwerk- und Proxy-Einstellungen](#check-network-connectivity) |

27| `irm is not recognized` oder `The token '&&' is not a valid statement separator` | [Verwenden Sie den richtigen Befehl für Ihre Shell](#wrong-install-command-on-windows) |28| `irm is not recognized` oder `The token '&&' is not a valid statement separator` | [Verwenden Sie den richtigen Befehl für Ihre Shell](#wrong-install-command-on-windows) |


295 Überprüfen Sie Verzeichnisberechtigungen296 Überprüfen Sie Verzeichnisberechtigungen

296</h3>297</h3>

297 298 

298Das Installationsprogramm benötigt Schreibzugriff auf `~/.local/bin/` und `~/.claude/` auf macOS und Linux. Unter Windows befindet sich der Installationsort unter `%USERPROFILE%`, das standardmäßig von Ihrem Benutzer beschreibbar ist, daher gilt dieser Abschnitt dort selten.299Eine Installation, die an fehlenden Berechtigungen scheitert, nennt den Pfad, den sie nicht erstellen oder beschreiben konnte. Unter Windows schreibt die Installation unter `%USERPROFILE%`, das standardmäßig von Ihrem Benutzer beschreibbar ist, daher gilt dieser Abschnitt dort selten.

300 

301Auf macOS und Linux schreibt die Installation an folgende Orte:

302 

303* `~/.claude/downloads/`: wo der Installationsbefehl die heruntergeladene Binärdatei ablegt

304* `~/.local/bin/`: der `claude`-Launcher

305* `~/.local/share/claude/`: jede Version, die heruntergeladen wird

306* `~/.local/state/claude/`: die zugehörigen Sperrdateien

307* `~/.cache/claude/`: vorbereitete Downloads

308* [`~/.claude.json`](/docs/de/claude-directory): Ihre globale Konfigurationsdatei, in der das Installationsprogramm die Installationsmethode festhält

309 

310Wenn Sie `XDG_DATA_HOME`, `XDG_STATE_HOME` oder `XDG_CACHE_HOME` setzen, verwendet die Installation diese anstelle von `~/.local/share`, `~/.local/state` und `~/.cache`. Wenn Sie [`CLAUDE_CONFIG_DIR`](/docs/de/env-vars) setzen, befindet sich die globale Konfigurationsdatei in diesem Verzeichnis statt in Ihrem Home-Verzeichnis.

299 311 

300Überprüfen Sie, ob die Verzeichnisse beschreibbar sind:312Überprüfen Sie, ob die Verzeichnisse beschreibbar sind:

301 313 


1014 1026 

1015**Lösungen:**1027**Lösungen:**

1016 1028 

1017* Drücken Sie Enter, um zu wiederholen und die Anmeldung schnell nach dem Öffnen des Browsers abzuschließen1029* Drücken Sie Enter, um es erneut zu versuchen, und schließen Sie die Anmeldung schnell nach dem Öffnen des Browsers ab

1018* Geben Sie `c` ein, um die vollständige URL zu kopieren, wenn der Browser nicht automatisch geöffnet wird1030* Geben Sie `c` ein, um die vollständige URL zu kopieren, wenn der Browser nicht automatisch geöffnet wird

1019* Wenn Sie eine Remote-/SSH-Sitzung verwenden, kann der Browser auf der falschen Maschine geöffnet werden. Kopieren Sie die im Terminal angezeigte URL und öffnen Sie sie stattdessen in Ihrem lokalen Browser.1031* Wenn Sie eine Remote-/SSH-Sitzung verwenden, kann der Browser auf der falschen Maschine geöffnet werden. Kopieren Sie die im Terminal angezeigte URL und öffnen Sie sie stattdessen in Ihrem lokalen Browser.

1020 1032 


1045 1057 

1046Wenn Sie `API Error: 400 ... "This organization has been disabled"` sehen, obwohl Sie ein aktives Claude-Abonnement haben, überschreibt eine `ANTHROPIC_API_KEY` Umgebungsvariable Ihr Abonnement. Dies geschieht häufig, wenn ein alter API-Schlüssel von einem früheren Arbeitgeber oder Projekt noch in Ihrem Shell-Profil gesetzt ist.1058Wenn Sie `API Error: 400 ... "This organization has been disabled"` sehen, obwohl Sie ein aktives Claude-Abonnement haben, überschreibt eine `ANTHROPIC_API_KEY` Umgebungsvariable Ihr Abonnement. Dies geschieht häufig, wenn ein alter API-Schlüssel von einem früheren Arbeitgeber oder Projekt noch in Ihrem Shell-Profil gesetzt ist.

1047 1059 

1048Wenn `ANTHROPIC_API_KEY` vorhanden ist und Sie es genehmigt haben, verwendet Claude Code diesen Schlüssel statt der OAuth-Anmeldedaten Ihres Abonnements. Im nicht-interaktiven Modus mit dem `-p` Flag wird der Schlüssel immer verwendet, wenn er vorhanden ist. Siehe [Authentifizierungs-Priorität](/docs/de/authentication#authentication-precedence) für die vollständige Auflösungsreihenfolge.1060Wenn `ANTHROPIC_API_KEY` vorhanden ist und Sie es genehmigt haben, verwendet Claude Code diesen Schlüssel statt der OAuth-Anmeldedaten Ihres Abonnements. Im nicht interaktiven Modus mit dem `-p` Flag wird der Schlüssel immer verwendet, wenn er vorhanden ist. Siehe [Vorrang der Authentifizierung](/docs/de/authentication#authentication-precedence) für die vollständige Auflösungsreihenfolge.

1049 1061 

1050Um stattdessen Ihr Abonnement zu verwenden, heben Sie die Umgebungsvariable auf und entfernen Sie sie aus Ihrem Shell-Profil:1062Um stattdessen Ihr Abonnement zu verwenden, heben Sie die Umgebungsvariable auf und entfernen Sie sie aus Ihrem Shell-Profil:

1051 1063 


1098 1110 

1099Führen Sie `/login` aus, um sich erneut zu authentifizieren. Wenn dies häufig geschieht, überprüfen Sie, dass Ihre Systemuhr genau ist, da die Token-Validierung von korrekten Zeitstempeln abhängt.1111Führen Sie `/login` aus, um sich erneut zu authentifizieren. Wenn dies häufig geschieht, überprüfen Sie, dass Ihre Systemuhr genau ist, da die Token-Validierung von korrekten Zeitstempeln abhängt.

1100 1112 

1101Parallele Sitzungen auf einem Rechner teilen sich eine gespeicherte Anmeldung und koordinieren deren Erneuerung, sodass nur ein Prozess das Token gleichzeitig aktualisiert. Vor v2.1.211 konnte das Aufwecken des Rechners aus dem Ruhezustand dazu führen, dass zwei Sitzungen mit demselben Token erneuert werden, was die gespeicherte Anmeldung widerrief und jede offene Sitzung auf einmal erneut zur Anmeldung aufforderte.1113Parallele Sitzungen auf einem Rechner teilen sich eine gespeicherte Anmeldung und koordinieren deren Erneuerung, sodass nur ein Prozess das Token gleichzeitig aktualisiert. Was die anderen Sitzungen tun, nachdem Sie sich in einer davon erneut angemeldet haben, erfahren Sie unter [Nicht angemeldet](/docs/de/errors#not-logged-in).

1114 

1115Vor v2.1.211 konnte das Aufwecken des Rechners aus dem Ruhezustand dazu führen, dass zwei Sitzungen mit demselben Token erneuert werden, was die gespeicherte Anmeldung widerrief und jede offene Sitzung auf einmal erneut zur Anmeldung aufforderte.

1102 1116 

1103Auf macOS speichert Claude Code Anmeldedaten im Login-Keychain. Wenn der Keychain den Schreibzugriff ablehnt, z. B. wenn er in einer SSH-Sitzung gesperrt ist oder sein Passwort nicht mit Ihrem Kontopasswort synchronisiert ist, speichert Claude Code Ihre Anmeldung stattdessen in der Klartextdatei `~/.claude/.credentials.json`. Eine Console-Anmeldung, die einen API-Schlüssel erstellt, schlägt fehl, bis der Keychain wieder beschreibbar ist.1117Auf macOS speichert Claude Code Anmeldedaten im Login-Keychain. Wenn der Keychain den Schreibzugriff ablehnt, z. B. wenn er in einer SSH-Sitzung gesperrt ist oder sein Passwort nicht mit Ihrem Kontopasswort synchronisiert ist, speichert Claude Code Ihre Anmeldung stattdessen in der Klartextdatei `~/.claude/.credentials.json`. Eine Console-Anmeldung, die einen API-Schlüssel erstellt, schlägt fehl, bis der Keychain wieder beschreibbar ist.

1104 1118 

Details

803. Verschieben Sie die Arbeit mit großen Dateien zu einem [Subagent](/docs/de/sub-agents), damit sie in einem separaten Kontextfenster ausgeführt wird803. Verschieben Sie die Arbeit mit großen Dateien zu einem [Subagent](/docs/de/sub-agents), damit sie in einem separaten Kontextfenster ausgeführt wird

814. Führen Sie `/clear` aus, wenn die frühere Konversation nicht mehr benötigt wird814. Führen Sie `/clear` aus, wenn die frühere Konversation nicht mehr benötigt wird

82 82 

83Wenn der Fehler nach einem `/clear` erneut auftritt, führen Sie [`/context`](/docs/de/debug-your-config) aus und vergleichen Sie die Zeile `Messages` mit den Zeilen darüber:

84 

85* **`Messages` ist die größte Zeile**: Eine Datei oder Toolausgabe in der neuen Konversation füllt das Fenster erneut, gehen Sie daher die Schritte 1 bis 3 noch einmal durch

86* **Die anderen Zeilen sind zusammen größer**: Was beim Sitzungsstart geladen wird, lässt zu wenig Platz zum Arbeiten, daher sollten Sie [reduzieren, was beim Start geladen wird](/docs/de/errors#prompt-is-too-long)

87 

83<h3 id="command-hangs-or-freezes">88<h3 id="command-hangs-or-freezes">

84 Befehl hängt oder friert ein89 Befehl hängt oder friert ein

85</h3>90</h3>

ultrareview.md +5 −5

Details

153 Eine laufende Review verfolgen153 Eine laufende Review verfolgen

154</h2>154</h2>

155 155 

156Eine Review dauert normalerweise 5 bis 10 Minuten. Die Review läuft als Hintergrundaufgabe, sodass Sie in Ihrer Sitzung weiterarbeiten, andere Befehle starten oder das Terminal vollständig schließen können. Wenn Sie sich dafür entschieden haben, [die Ergebnisse in der Pull-Anfrage zu veröffentlichen](#post-findings-to-the-pull-request), halten Sie die Sitzung offen, bis die Review abgeschlossen ist. Wenn die Sitzung zuerst endet, veröffentlicht Claude Code nichts.156Eine Review dauert normalerweise 5 bis 10 Minuten. Die Review läuft als Hintergrundaufgabe, sodass Sie in Ihrer Sitzung weiterarbeiten oder andere Befehle starten können. Wenn Sie sich dafür entschieden haben, [die Ergebnisse im Pull Request zu veröffentlichen](#post-findings-to-the-pull-request), halten Sie die Sitzung offen, bis die Review abgeschlossen ist. Wenn die Sitzung zuerst endet, veröffentlicht Claude Code nichts.

157 157 

158Verwenden Sie `/tasks`, um laufende und abgeschlossene Reviews anzuzeigen, die Detailansicht für eine Review zu öffnen oder eine laufende Review zu stoppen. Wenn Sie eine Review stoppen, archiviert Claude Code die Cloud-Sitzung und gibt keine teilweisen Ergebnisse zurück.158Verwenden Sie `/tasks`, um laufende und abgeschlossene Reviews anzuzeigen, die Detailansicht für eine Review zu öffnen oder eine laufende Review zu stoppen. Wenn Sie eine Review stoppen, archiviert Claude Code die Cloud-Sitzung und gibt keine teilweisen Ergebnisse zurück.

159 159 


181 181 

182Sie 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.182Sie 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.

183 183 

184In Claude Code v2.1.218 oder später können Sie die Cloud-Review auch starten, indem Sie `/code-review ultra` in einer nicht-interaktiven Sitzung ausführen, beispielsweise `claude -p '/code-review ultra'`. Claude Code startet die Review und gibt einen Tracking-Link aus, ohne auf die Ergebnisse zu warten, im Gegensatz zu `claude ultrareview`, das blockiert, bis diese ankommen. Wenn die Review Nutzungsguthaben abrechnen würde, stoppt Claude Code vor dem Start und verweist Sie auf `claude ultrareview`, da die Abrechnungsbestätigung eine interaktive Sitzung benötigt. Vor v2.1.218 führte `/code-review ultra` in einer nicht-interaktiven Sitzung eine lokale Review aus.184`claude -p '/code-review ultra'` liefert Ihnen nicht die Ergebnisse, verwenden Sie daher in Skripten `claude ultrareview`. Die `-p`-Ausführung startet die Cloud-Review und beendet sich, ohne darauf zu warten. Wenn die Review Nutzungsguthaben abrechnen würde, stoppt die `-p`-Ausführung, ohne sie zu starten. Vor v2.1.218 führte `/code-review ultra` in einer nicht-interaktiven Sitzung eine lokale Review aus.

185 185 

186Fortschrittsmeldungen und die Live-Sitzungs-URL gehen zu stderr, sodass stdout analysierbar bleibt. Verwenden Sie diese Flags, um die Ausgabe, das Timeout und ob die Ergebnisse gepostet werden sollen, zu steuern:186`claude ultrareview` schreibt seine Fortschrittsmeldungen auf stderr, sodass stdout analysierbar bleibt. Verwenden Sie diese Flags, um die Ausgabe, den Timeout und das Posten der Ergebnisse zu steuern:

187 187 

188| Flag | Beschreibung |188| Flag | Beschreibung |

189| - | - |189| - | - |


200* **1**: Die Review konnte nicht gestartet werden, die Cloud-Sitzung ist fehlgeschlagen, oder das Timeout ist abgelaufen200* **1**: Die Review konnte nicht gestartet werden, die Cloud-Sitzung ist fehlgeschlagen, oder das Timeout ist abgelaufen

201* **130**: Sie haben den Unterbefehl mit Strg+C unterbrochen201* **130**: Sie haben den Unterbefehl mit Strg+C unterbrochen

202 202 

203Wenn Sie den Unterbefehl unterbrechen, läuft die Remote-Review weiter; folgen Sie der auf stderr gedruckten Sitzungs-URL, um sie im Browser zu beobachten.203Wenn sich der Unterbefehl beendet, bevor die Ergebnisse eintreffen, erreichen diese Ihr Terminal nie, und ein erneutes Ausführen startet eine neue Review, statt die bisherige fortzusetzen. Die neue Review [zählt als eigene Ausführung](#pricing-and-free-runs).

204 204 

205Mit `--post` startet der Unterbefehl das Posten direkt nach dem Ausdrucken der Ergebnisse und gibt den Link auf stderr aus.205Mit `--post` startet der Unterbefehl das Posten direkt nach dem Ausdrucken der Ergebnisse und gibt den Link auf stderr aus.

206 206 

207* Wenn die Ausführung fehlschlägt, das Timeout abläuft oder Sie sie unterbrechen, postet der Unterbefehl nichts.207* Wenn die Ausführung fehlschlägt, gestoppt wird oder eine Zeitüberschreitung auftritt, postet der Unterbefehl nichts.

208* Wenn die Review abgeschlossen ist, aber der Kommentar nicht gepostet wird, gibt Claude Code den Grund auf stderr aus, und die Ergebnisse bleiben auf stdout, sodass Sie sie manuell posten können.208* Wenn die Review abgeschlossen ist, aber der Kommentar nicht gepostet wird, gibt Claude Code den Grund auf stderr aus, und die Ergebnisse bleiben auf stdout, sodass Sie sie manuell posten können.

209 209 

210Für automatische Reviews bei GitHub Pull Requests integriert sich [Code Review](/docs/de/code-review) direkt mit Ihrem Repository und veröffentlicht Ergebnisse als Inline-PR-Kommentare ohne einen CLI-Schritt.210Für automatische Reviews bei GitHub Pull Requests integriert sich [Code Review](/docs/de/code-review) direkt mit Ihrem Repository und veröffentlicht Ergebnisse als Inline-PR-Kommentare ohne einen CLI-Schritt.

Details

75 75 

76 Mit dieser Verbindung kann eine Sitzung jedes öffentliche Repository klonen, kann aber nur dann in einem privaten Repository arbeiten, wenn die Claude GitHub App darauf installiert ist. [Installieren Sie die Claude GitHub App](https://github.com/apps/claude/installations/new) auf jedem GitHub-Konto oder jeder Organisation, deren private Repositories Sie verwenden möchten. Bei einer GitHub-Organisation muss möglicherweise ein Organisationsinhaber die Installation genehmigen. Die Installation der App ermöglicht auch [Auto-fix](/docs/de/claude-code-on-the-web#auto-fix-pull-requests), das Claude ermöglicht, auf CI-Fehler und Review-Kommentare zu Pull Requests in diesen Repositories zu reagieren.76 Mit dieser Verbindung kann eine Sitzung jedes öffentliche Repository klonen, kann aber nur dann in einem privaten Repository arbeiten, wenn die Claude GitHub App darauf installiert ist. [Installieren Sie die Claude GitHub App](https://github.com/apps/claude/installations/new) auf jedem GitHub-Konto oder jeder Organisation, deren private Repositories Sie verwenden möchten. Bei einer GitHub-Organisation muss möglicherweise ein Organisationsinhaber die Installation genehmigen. Die Installation der App ermöglicht auch [Auto-fix](/docs/de/claude-code-on-the-web#auto-fix-pull-requests), das Claude ermöglicht, auf CI-Fehler und Review-Kommentare zu Pull Requests in diesen Repositories zu reagieren.

77 77 

78 Wenn Sie die Verbindung herstellen, verknüpft Claude außerdem die GitHub-Konten, die Ihnen gehören, mit Ihrer Claude-Organisation, sofern auf ihnen die Claude GitHub App installiert ist. Bei Team- und Enterprise-Plänen sehen Admins diese Konten in der [Liste der verbundenen GitHub-Konten](/docs/de/admin-setup#connected-github-accounts).

79 

78 Wenn das Onboarding Sie an dieser Stelle auffordert, die Claude GitHub App zu installieren, und Sie dies lieber später tun möchten, klicken Sie auf **Überspringen**.80 Wenn das Onboarding Sie an dieser Stelle auffordert, die Claude GitHub App zu installieren, und Sie dies lieber später tun möchten, klicken Sie auf **Überspringen**.

79 </Step>81 </Step>

80 82 

worktrees.md +2 −0

Details

131 131 

132Subagent-Worktrees verwenden den gleichen [Basis-Branch](#choose-the-base-branch) wie `--worktree`, sodass sie von dem Standard-Branch Ihres Repositories verzweigen, es sei denn, `worktree.baseRef` ist auf `"head"` gesetzt.132Subagent-Worktrees verwenden den gleichen [Basis-Branch](#choose-the-base-branch) wie `--worktree`, sodass sie von dem Standard-Branch Ihres Repositories verzweigen, es sei denn, `worktree.baseRef` ist auf `"head"` gesetzt.

133 133 

134Ein Subagent in seinem eigenen Worktree übernimmt die Anweisungsdateien, mit denen er [startet](/docs/de/sub-agents#what-loads-at-startup), aus Ihrer Hauptkonversation, nicht aus seinem Worktree. Wenn sich dieser Worktree am Standardspeicherort unter `.claude/worktrees/` befindet, lädt der Subagent außerdem weder die `CLAUDE.md`-Datei noch das Verzeichnis `.claude/rules/` im Stammverzeichnis des Worktrees, während er dort Dateien liest, selbst wenn sich diese auf dem Branch des Worktrees unterscheiden.

135 

134<h3 id="clean-up-subagent-and-background-session-worktrees">136<h3 id="clean-up-subagent-and-background-session-worktrees">

135 Bereinigen Sie Subagent- und Hintergrund-Sitzungs-Worktrees137 Bereinigen Sie Subagent- und Hintergrund-Sitzungs-Worktrees

136</h3>138</h3>