SpyBara
Go Premium

Documentation 2026-10-27 22:59 UTC to 2026-10-28 23:57 UTC

82 files changed +2,326 −2,071. View all changes and history on the product overview
2026
Fri 30 23:01 Thu 29 23:57 Wed 28 23:57 Tue 27 22:59 Mon 26 22:57 Sun 25 23:58 Sat 24 22:59 Fri 23 22:59 Thu 22 22:58 Wed 21 23:02 Tue 20 23:00 Mon 19 23:58 Sat 17 23:57 Fri 16 22:59 Thu 15 23:58 Wed 14 22:58 Tue 13 23:57 Sun 11 23:57 Sat 10 23:01 Fri 9 23:02 Thu 8 22:58 Wed 7 23:59 Tue 6 23:59 Mon 5 23:58 Sun 4 23:58 Sat 3 23:57 Fri 2 22:59 Thu 1 23:59
Details

106 106 

107macOS Terminal reagiert nicht auf die Marker, und Claude Code gibt sie in WezTerm nicht aus. Durchsuchen Sie in diesen Terminals stattdessen den Scrollback nach der Beschriftung `you:`.107macOS Terminal reagiert nicht auf die Marker, und Claude Code gibt sie in WezTerm nicht aus. Durchsuchen Sie in diesen Terminals stattdessen den Scrollback nach der Beschriftung `you:`.

108 108 

109## Menüs und Eingabeaufforderungen beantworten109## Menüs und Abfragen beantworten

110 110 

111Im Bildschirmleser-Modus werden Menüs, die Sie normalerweise mit den Pfeiltasten navigieren würden, einschließlich Berechtigungsaufforderungen, zu nummerierten Listen. Claude Code kündigt jede Option als nummerierte Zeile an, gefolgt von einer Eingabeaufforderung `Select with numbers`, die den gültigen Bereich benennt. Geben Sie die Nummer der gewünschten Option ein und drücken Sie die Eingabetaste.111Im Screenreader-Modus werden Menüs, in denen Sie normalerweise mit den Pfeiltasten navigieren würden, einschließlich Berechtigungsabfragen, zu nummerierten Listen. Claude Code gibt jede Option als nummerierte Zeile aus, gefolgt von einer `Select with numbers`-Abfrage, die den gültigen Bereich nennt. Geben Sie die Nummer der gewünschten Option ein und drücken Sie Enter.

112 112 

113* Drücken Sie Escape, um ein Menü abzubrechen, dessen Eingabeaufforderung mit `or Escape to cancel` endet.113* Drücken Sie Escape, um ein Menü abzubrechen, dessen Abfrage mit `or Escape to cancel` endet.

114* Wenn Sie eine Nummer eingeben, die nicht auf der Liste steht, kündigt Claude Code den gültigen Bereich an und lässt Sie es erneut versuchen.114* Wenn Sie eine Nummer eingeben, die nicht in der Liste steht, gibt Claude Code den gültigen Bereich aus und lässt Sie es erneut versuchen.

115 115 

116Der [`/effort`](https://code.claude.com/docs/de/model-config#adjust-effort-level) Selektor, der außerhalb des Bildschirmleser-Modus ein Schieberegler ist, wird zur gleichen Art von nummerierter Liste.116Die [`/effort`](https://code.claude.com/docs/de/model-config#adjust-effort-level)-Auswahl, die außerhalb des Screenreader-Modus ein Schieberegler ist, wird zu derselben Art von nummerierter Liste.

117 117 

118Ja-oder-Nein-Aufforderungen fragen nach einer eingegebenen Antwort statt eines Zwei-Optionen-Menüs. Antworten Sie mit `y` oder `n` und drücken Sie die Eingabetaste. `yes` und `no` funktionieren auch.118Ja-oder-Nein-Abfragen verlangen eine eingetippte Antwort statt eines Menüs mit zwei Optionen. Antworten Sie mit `y` oder `n` und drücken Sie Enter. `yes` und `no` funktionieren ebenfalls.

119 119 

120## Hören Sie, wenn Claude Code Sie braucht120## Hören Sie, wenn Claude Code Sie braucht

121 121 

Details

211. **Prompt empfangen.** Claude empfängt Ihren Prompt zusammen mit dem System-Prompt, Werkzeugdefinitionen und Gesprächsverlauf. Das SDK gibt eine [`SystemMessage`](#message-types) mit dem Subtyp `"init"` aus, die Sitzungsmetadaten enthält.211. **Prompt empfangen.** Claude empfängt Ihren Prompt zusammen mit dem System-Prompt, Werkzeugdefinitionen und Gesprächsverlauf. Das SDK gibt eine [`SystemMessage`](#message-types) mit dem Subtyp `"init"` aus, die Sitzungsmetadaten enthält.

222. **Bewerten und antworten.** Claude bewertet den aktuellen Status und bestimmt, wie vorzugehen ist. Es kann mit Text antworten, einen oder mehrere Werkzeugaufrufe anfordern oder beides. Das SDK gibt ein oder mehrere [`AssistantMessage`](#message-types)-Objekte aus, eines für jeden Inhaltsblock, wie einen Textblock oder eine Werkzeugaufrufsanforderung.222. **Bewerten und antworten.** Claude bewertet den aktuellen Status und bestimmt, wie vorzugehen ist. Es kann mit Text antworten, einen oder mehrere Werkzeugaufrufe anfordern oder beides. Das SDK gibt ein oder mehrere [`AssistantMessage`](#message-types)-Objekte aus, eines für jeden Inhaltsblock, wie einen Textblock oder eine Werkzeugaufrufsanforderung.

233. **Werkzeuge ausführen.** Das SDK führt jedes angeforderte Werkzeug aus und sammelt die Ergebnisse. Jeder Satz von Werkzeugergebnissen wird an Claude für die nächste Entscheidung zurückgesendet. Sie können [Hooks](https://code.claude.com/docs/de/agent-sdk/hooks.md) verwenden, um Werkzeugaufrufe vor ihrer Ausführung abzufangen, zu ändern oder zu blockieren.233. **Werkzeuge ausführen.** Das SDK führt jedes angeforderte Werkzeug aus und sammelt die Ergebnisse. Jeder Satz von Werkzeugergebnissen wird an Claude für die nächste Entscheidung zurückgesendet. Sie können [Hooks](https://code.claude.com/docs/de/agent-sdk/hooks.md) verwenden, um Werkzeugaufrufe vor ihrer Ausführung abzufangen, zu ändern oder zu blockieren.

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

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

26 26 

27Eine schnelle Frage („welche Dateien sind hier?“) könnte eine oder zwei Runden dauern, in denen `Glob` aufgerufen und die Ergebnisse beantwortet werden. Eine komplexe Aufgabe („refaktorisieren Sie das Auth-Modul und aktualisieren Sie die Tests“) kann Dutzende von Werkzeugaufrufen über viele Runden hinweg verketten, Dateien lesen, Code bearbeiten und Tests ausführen, wobei Claude seinen Ansatz basierend auf jedem Ergebnis anpasst.27Eine kurze Frage wie „Welche Dateien gibt es hier?“ kann zwei oder drei [Turns](#turns-and-messages) dauern: ein oder zwei, in denen `Glob` aufgerufen wird, und dann einer, der mit den Ergebnissen antwortet. Eine komplexe Aufgabe wie „Refaktorisieren Sie das Auth-Modul und aktualisieren Sie die Tests“ kann Dutzende von Tool-Aufrufen über viele Turns hinweg verketten, wobei Claude sich nach jedem Ergebnis anpasst.

28 28 

29## Runden und Nachrichten29## Runden und Nachrichten

30 30 

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

32 32 

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

34 34 

Details

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

1275| `updated_permissions` | `list[PermissionUpdate] \| None` | `None` | Anzuwendende Berechtigungsaktualisierungen |1275| `updated_permissions` | `list[PermissionUpdate] \| None` | `None` | Anzuwendende Berechtigungsaktualisierungen |

1276 1276 

1277Wenn Sie `PermissionResultAllow` mit mehr als 4.096 Elementen in `updated_permissions` zurückgeben, behandelt Claude Code das Ergebnis als ungültig und verweigert den Tool-Aufruf. Jedes [`PermissionUpdate`](#permissionupdate) zählt als ein Element, ebenso jeder Eintrag in seiner `rules`- oder `directories`-Liste. Die Ablehnungsmeldung endet mit `updatedPermissions may hold at most 4096 updates, rules and directories in all.` Um die Ablehnung zu vermeiden, geben Sie höchstens 4.096 Elemente zurück.

1278 

1277### `PermissionResultDeny`1279### `PermissionResultDeny`

1278 1280 

1279Ergebnis, das angibt, dass der Tool-Aufruf verweigert werden soll.1281Ergebnis, das angibt, dass der Tool-Aufruf verweigert werden soll.

Details

1405 };1405 };

1406```1406```

1407 1407 

1408Wenn Sie `allow` mit mehr als 4.096 Elementen in `updatedPermissions` zurückgeben, behandelt Claude Code das Ergebnis als ungültig und lehnt den Tool-Aufruf ab. Jede Aktualisierung zählt als ein Element, ebenso jeder Eintrag in ihrer `rules`- oder `directories`-Liste. Die Ablehnungsmeldung endet mit `updatedPermissions may hold at most 4096 updates, rules and directories in all`. Damit der Aufruf erlaubt wird, geben Sie höchstens 4.096 Elemente zurück.1408Wenn Sie `allow` mit mehr als 4.096 Elementen in `updatedPermissions` zurückgeben, behandelt Claude Code das Ergebnis als ungültig und lehnt den Tool-Aufruf ab. Jede Aktualisierung zählt als ein Element, ebenso jeder Eintrag in ihrer `rules`- oder `directories`-Liste. Die Ablehnungsmeldung endet mit `updatedPermissions may hold at most 4096 updates, rules and directories in all.` Damit der Aufruf erlaubt wird, geben Sie höchstens 4.096 Elemente zurück.

1409 1409 

1410### `ToolConfig`1410### `ToolConfig`

1411 1411 


4704 humanSchedule: string;4704 humanSchedule: string;

4705 recurring: boolean;4705 recurring: boolean;

4706 durable?: boolean; // true when persisted to .claude/scheduled_tasks.json; false when session-only4706 durable?: boolean; // true when persisted to .claude/scheduled_tasks.json; false when session-only

4707 nextFireAt?: number;

4707};4708};

4708```4709```

4709 4710 

4710Gibt die Job-ID und eine menschenlesbare Beschreibung des Zeitplans zurück.4711Gibt die Job-ID, eine menschenlesbare Beschreibung des Zeitplans und den nächsten Ausführungszeitpunkt zurück. `nextFireAt` gibt diesen in Epoch-Millisekunden an, mit bereits angewendetem [Jitter](https://code.claude.com/docs/de/scheduled-tasks.md#jitter), und ist damit der Zeitpunkt, zu dem der Job ausgeführt werden soll. Das Feld erfordert TypeScript Agent SDK v0.3.299 oder später und Claude Code v2.1.299 oder später.

4711 4712 

4712### CronDelete4713### CronDelete

4713 4714 


4734 prompt: string;4735 prompt: string;

4735 recurring?: boolean;4736 recurring?: boolean;

4736 durable?: boolean;4737 durable?: boolean;

4738 nextFireAt?: number;

4737 }[];4739 }[];

4738};4740};

4739```4741```

4740 4742 

4741Gibt die geplanten Cron-Jobs zurück: dauerhafte Jobs aus `.claude/scheduled_tasks.json` und Sitzungs-Only-Jobs aus der aktuellen Sitzung. Ein Sitzungs-Only-Job enthält `durable: false`; Jobs, die von der Festplatte gelesen werden, lassen das Feld weg.4743Gibt die geplanten Cron-Jobs zurück: dauerhafte Jobs aus `.claude/scheduled_tasks.json` und Sitzungs-Only-Jobs aus der aktuellen Sitzung. Ein Sitzungs-Only-Job enthält `durable: false`; Jobs, die von der Festplatte gelesen werden, lassen das Feld weg.

4742 4744 

4745`nextFireAt` ist der nächste Ausführungszeitpunkt des Jobs in Epoch-Millisekunden, [Jitter](https://code.claude.com/docs/de/scheduled-tasks.md#jitter) eingeschlossen. Kein Wert liegt vor dem Zeitpunkt des `CronList`-Aufrufs: Ein Job, dessen Zeitpunkt [ohne Ausführung verstrichen ist](https://code.claude.com/docs/de/scheduled-tasks.md#how-scheduled-tasks-run), enthält den Zeitpunkt des Aufrufs. Das Feld erfordert TypeScript Agent SDK v0.3.299 oder später und Claude Code v2.1.299 oder später.

4746 

4743### ScheduleWakeup4747### ScheduleWakeup

4744 4748 

4745**Tool-Name:** `ScheduleWakeup`4749**Tool-Name:** `ScheduleWakeup`


5457};5461};

5458```5462```

5459 5463 

5464Das `setMcpServers()`-Promise wird aufgelöst, nachdem neu hinzugefügte Stdio-, HTTP- und SSE-Server verbunden oder fehlgeschlagen sind, daher sind Tools von Servern, die verbunden sind, im nächsten Turn verfügbar.

5465 

5460Wenn Sie `setMcpServers()` aufrufen, wendet Claude Code diese Regeln an:5466Wenn Sie `setMcpServers()` aufrufen, wendet Claude Code diese Regeln an:

5461 5467 

5462* **Server, die der Aufruf nicht benennt**: Außerhalb einer [Cloud-Sitzung](https://code.claude.com/docs/de/claude-code-on-the-web.md) trennt Claude Code die Server, die ein früherer `setMcpServers()`-Aufruf hinzugefügt hat, sowie die In-Process-SDK-Server und listet sie in `removed` auf. Andere Server laufen weiter und werden nicht in `removed` aufgeführt, darunter die Stdio-, HTTP- und SSE-Server aus der [`mcpServers`](#options)-Option, Server aus Einstellungsdateien und von Plugins bereitgestellte Server.5468* **Server, die der Aufruf nicht benennt**: Außerhalb einer [Cloud-Sitzung](https://code.claude.com/docs/de/claude-code-on-the-web.md) trennt Claude Code die Server, die ein früherer `setMcpServers()`-Aufruf hinzugefügt hat, sowie die In-Process-SDK-Server und listet sie in `removed` auf. Andere Server laufen weiter und werden nicht in `removed` aufgeführt, darunter die Stdio-, HTTP- und SSE-Server aus der [`mcpServers`](#options)-Option, Server aus Einstellungsdateien und von Plugins bereitgestellte Server.


5466* **Integrierte Server, die die CLI beim Start gestartet hat**: Wenn der Aufruf einen benennt, verwirft Claude Code diesen Eintrag und meldet ihn in `errors`.5472* **Integrierte Server, die die CLI beim Start gestartet hat**: Wenn der Aufruf einen benennt, verwirft Claude Code diesen Eintrag und meldet ihn in `errors`.

5467* **Stdio-, HTTP- oder SSE-Server, die ihren Namen mit einem Server aus einem MCP-Installations-Geltungsbereich wie `.mcp.json` teilen**: Unter diesem Namen verwendet die Sitzung die Tools Ihres Servers statt die des [Servers aus dem Installations-Geltungsbereich](https://code.claude.com/docs/de/mcp.md#mcp-installation-scopes). Vor Claude Code v2.1.305 konnte Claude Code Ihren Server trennen und den Server aus dem Installations-Geltungsbereich verbinden, wenn Ihre App [Plugins neu lud](#query-object).5473* **Stdio-, HTTP- oder SSE-Server, die ihren Namen mit einem Server aus einem MCP-Installations-Geltungsbereich wie `.mcp.json` teilen**: Unter diesem Namen verwendet die Sitzung die Tools Ihres Servers statt die des [Servers aus dem Installations-Geltungsbereich](https://code.claude.com/docs/de/mcp.md#mcp-installation-scopes). Vor Claude Code v2.1.305 konnte Claude Code Ihren Server trennen und den Server aus dem Installations-Geltungsbereich verbinden, wenn Ihre App [Plugins neu lud](#query-object).

5468 5474 

5469Das Promise wird aufgelöst, nachdem neu hinzugefügte Stdio-, HTTP- und SSE-Server verbunden oder fehlgeschlagen sind, daher sind Tools von Servern, die verbunden sind, im nächsten Turn verfügbar.

5470 

5471`added` listet die Server auf, die Claude Code hinzugefügt oder ersetzt hat, unabhängig davon, ob sie verbunden sind. Ein Server, der keine Verbindung hergestellt hat, erscheint sowohl in `added` als auch in `errors`, mit dem Fehlertext unter `errors` und einer `failed`-Zeile in [`mcpServerStatus()`](#methods). Vor Claude Code v2.1.257 wurde ein Server, dessen Verbindungsversuch einen Fehler auslöste, nur unter `errors` gemeldet.5475`added` listet die Server auf, die Claude Code hinzugefügt oder ersetzt hat, unabhängig davon, ob sie verbunden sind. Ein Server, der keine Verbindung hergestellt hat, erscheint sowohl in `added` als auch in `errors`, mit dem Fehlertext unter `errors` und einer `failed`-Zeile in [`mcpServerStatus()`](#methods). Vor Claude Code v2.1.257 wurde ein Server, dessen Verbindungsversuch einen Fehler auslöste, nur unter `errors` gemeldet.

5472 5476 

5477Ein `errors`-Wert, der mit `Blocked by enterprise` beginnt, bedeutet, dass eine Richtlinie den Server abgelehnt hat, nicht dass die Verbindung fehlgeschlagen ist:

5478 

5479* `Blocked by enterprise policy (allowedMcpServers/deniedMcpServers)`: Der Server ist nicht in `added`. Ein [`deniedMcpServers`](https://code.claude.com/docs/de/managed-mcp#policy-based-control-with-allowlists-and-denylists)-Eintrag passt auf ihn, oder eine `allowedMcpServers`-Liste ist gesetzt und enthält ihn nicht. Wenn sich diese Liste in einer Einstellungsdatei befindet, die Sie über [`settingSources`](#options) laden, bearbeiten Sie die Datei. Wenn sie sich in verwalteten Einstellungen befindet, bitten Sie Ihre Administratoren, sie zu ändern.

5480* `Blocked by enterprise managed policy`: Der Server ist in `added`, mit einer `failed`-Zeile in `mcpServerStatus()`. Fragen Sie einen Administrator, welche Richtlinie ihn blockiert.

5481 

5473### `RewindFilesResult`5482### `RewindFilesResult`

5474 5483 

5475Ergebnis einer `rewindFiles()`-Operation.5484Ergebnis einer `rewindFiles()`-Operation.

agent-teams.md +63 −63

Details

59 59 

60Das Starten von Teamkollegen erfordert auch eine interaktive Sitzung. Im [nicht-interaktiven Modus](https://code.claude.com/docs/de/headless.md) mit dem Flag `-p`, einschließlich Agent SDK-Sitzungen, startet Claude keine Teamkollegen, und ein Subagent, den Claude benennt, wird als gewöhnlicher [Subagent](https://code.claude.com/docs/de/sub-agents.md) ausgeführt, auch wenn Agent-Teams aktiviert sind.60Das Starten von Teamkollegen erfordert auch eine interaktive Sitzung. Im [nicht-interaktiven Modus](https://code.claude.com/docs/de/headless.md) mit dem Flag `-p`, einschließlich Agent SDK-Sitzungen, startet Claude keine Teamkollegen, und ein Subagent, den Claude benennt, wird als gewöhnlicher [Subagent](https://code.claude.com/docs/de/sub-agents.md) ausgeführt, auch wenn Agent-Teams aktiviert sind.

61 61 

62## Starten Sie Ihr erstes Agent-Team62## Ihr erstes Agent-Team starten

63 63 

64Nach der Aktivierung von Agent-Teams beschreiben Sie die Aufgabe und die Teammates, die Sie möchten, in natürlicher Sprache. Claude erzeugt sie und koordiniert die Arbeit basierend auf Ihrem Prompt.64Nachdem Sie Agent Teams aktiviert haben, beschreiben Sie die Aufgabe und die gewünschten Teammitglieder in natürlicher Sprache. Claude erstellt sie und koordiniert die Arbeit basierend auf Ihrem Prompt.

65 65 

66Dieses Beispiel funktioniert gut, weil die drei Rollen unabhängig sind und das Problem erkunden können, ohne aufeinander zu warten:66Dieses Beispiel funktioniert gut, weil die drei Rollen unabhängig voneinander sind und das Problem erkunden können, ohne aufeinander warten zu müssen:

67 67 

68```text wrap theme={null}68```text wrap theme={null}

69I'm designing a CLI tool that helps developers track TODO comments across69I'm designing a CLI tool that helps developers track TODO comments across


71one on UX, one on technical architecture, one playing devil's advocate.71one on UX, one on technical architecture, one playing devil's advocate.

72```72```

73 73 

74Von dort aus füllt Claude eine [gemeinsame Aufgabenliste](https://code.claude.com/docs/de/interactive-mode.md#task-list) in einer [Sitzung, die die Task-Tools hat](https://code.claude.com/docs/de/tools-reference.md#task-tool-availability), erzeugt Teammates für jede Perspektive, lässt sie das Problem erkunden und synthetisiert Erkenntnisse, wenn fertig.74Von dort aus füllt Claude eine [gemeinsame Aufgabenliste](https://code.claude.com/docs/de/interactive-mode.md#task-list) in einer [Sitzung, die über die Task-Tools verfügt](https://code.claude.com/docs/de/tools-reference.md#task-tool-availability), erstellt Teammitglieder für jede Perspektive, lässt sie das Problem erkunden und fasst die Ergebnisse zusammen, wenn sie fertig sind.

75 75 

76Claude kann manchmal [Subagenten](https://code.claude.com/docs/de/sub-agents.md) statt eines Teams erstellen. Subagenten erscheinen im gleichen Agent-Panel wie Teammates, daher bestätigt das Panel allein nicht, dass ein Team gebildet wurde. Wenn Claude stattdessen Subagenten erzeugt hat, fragen Sie erneut und fordern Sie explizit ein Agent-Team an.76Claude verwendet manchmal [Subagenten](https://code.claude.com/docs/de/sub-agents.md), anstatt ein Team zu erstellen. Subagenten erscheinen im selben Agenten-Panel wie Teammitglieder, daher bestätigt das Panel allein nicht, dass ein Team gebildet wurde. Falls Claude stattdessen Subagenten erstellt hat, fragen Sie erneut und fordern Sie ausdrücklich ein Agent-Team an.

77 77 

78Das Terminal des Leads listet Teammates im Agent-Panel unterhalb der Prompt-Eingabe auf. Aus dem Panel:78Das Terminal des Leads listet die Teammitglieder im Agenten-Panel unterhalb des Prompt-Eingabefelds auf. Im Panel:

79 79 

80* **Pfeile nach oben und unten**: Wählen Sie einen Teammate aus80* **Pfeiltasten nach oben und unten**: ein Teammitglied auswählen

81* **Eingabe**: Öffnen Sie das Transkript des ausgewählten Teammates und senden Sie ihm direkt eine Nachricht81* **Enter**: das Transkript des ausgewählten Teammitglieds öffnen und ihm direkt eine Nachricht senden

82* **Escape**: Löschen Sie die Auswahl. Während Sie das Transkript eines Teammates anschauen, unterbricht Escape den aktuellen Zug dieses Teammates82* **Escape**: die Auswahl aufheben. Während Sie das Transkript eines Teammitglieds ansehen, unterbricht Escape den aktuellen Turn dieses Teammitglieds

83 83 

84Die Zeile eines untätigen Teammates bleibt im Panel, während noch ein Teammate oder Subagent arbeitet, sodass Sie sie auswählen können, um sein Transkript zu überprüfen oder ihm mehr Arbeit zu geben. Sobald jeder Agent im Panel untätig ist, werden untätige Zeilen nach 30 Sekunden ausgeblendet und erscheinen beim nächsten Turn des Teammates wieder; der Teammate läuft weiter und ist adressierbar, während er ausgeblendet ist.84Die Zeile eines inaktiven Teammitglieds bleibt im Panel, solange noch ein Teammitglied oder Subagent arbeitet, sodass Sie sie auswählen können, um das Transkript zu prüfen oder weitere Arbeit zu übergeben. Sobald alle Agenten im Panel inaktiv sind, werden inaktive Zeilen nach 30 Sekunden ausgeblendet und erscheinen beim nächsten Turn des Teammitglieds wieder; das Teammitglied läuft weiter und bleibt ansprechbar, während es ausgeblendet ist.

85 85 

86Wenn mehr als drei Teammates gleichzeitig untätig sind, werden die Zeilen über die ersten drei hinaus in einer einzelnen Zeile zusammengefasst, die die zusammengefassten Teammates zählt, z. B. `2 idle agents`, wenn fünf untätig sind. Wählen Sie sie aus und drücken Sie die Eingabetaste, um die zusammengefassten Zeilen zu erweitern, oder drücken Sie Esc, um sie wieder zusammenzufassen. Arbeitende Teammates, fehlgeschlagene Teammates und der Teammate, den Sie gerade anschauen, behalten immer ihre eigenen Zeilen.86Wenn mehr als drei Teammitglieder gleichzeitig inaktiv sind, werden die Zeilen nach den ersten drei zu einer einzigen Zeile zusammengefasst, die die zusammengefassten Teammitglieder zählt, etwa `2 idle agents`, wenn fünf inaktiv sind. Wählen Sie sie aus und drücken Sie Enter, um die zusammengefassten Zeilen aufzuklappen, oder drücken Sie Esc, um sie wieder zusammenzuklappen. Arbeitende Teammitglieder, fehlgeschlagene Teammitglieder und das Teammitglied, das Sie gerade ansehen, behalten immer ihre eigenen Zeilen.

87 87 

88Wenn Sie jeden Teammate in seinem eigenen Split-Pane haben möchten, siehe [Wählen Sie einen Anzeigemodus](#choose-a-display-mode).88Wenn Sie jedes Teammitglied in einem eigenen geteilten Bereich haben möchten, lesen Sie [Anzeigemodus auswählen](#choose-a-display-mode).

89 89 

90## Ihr Agent-Team steuern90## Ihr Agent-Team steuern

91 91 


95 95 

96Agent-Teams unterstützen zwei Anzeigemodi:96Agent-Teams unterstützen zwei Anzeigemodi:

97 97 

98* **In-Process**: Alle Teammitglieder laufen in Ihrem Hauptterminal. Verwenden Sie die Pfeiltasten nach oben und unten im Agenten-Panel, um ein Teammitglied auszuwählen, drücken Sie dann die Eingabetaste, um es anzuzeigen, und tippen Sie, um ihm direkt eine Nachricht zu senden. Funktioniert in jedem Terminal, keine zusätzliche Einrichtung erforderlich.98* **In-Process**: Alle Teammitglieder laufen in Ihrem Hauptterminal. Verwenden Sie die Pfeiltasten nach oben und unten im Agentenbereich, um ein Teammitglied auszuwählen, drücken Sie dann Enter, um es anzuzeigen, und tippen Sie, um ihm direkt eine Nachricht zu senden. Funktioniert in jedem Terminal, keine zusätzliche Einrichtung erforderlich.

99* **Geteilte Bereiche**: Jedes Teammitglied erhält einen eigenen Bereich. Sie sehen die Ausgabe aller gleichzeitig und können in einen Bereich klicken, um direkt damit zu interagieren. Erfordert tmux oder iTerm2.99* **Geteilte Bereiche**: Jedes Teammitglied erhält einen eigenen Bereich. Sie sehen die Ausgabe aller gleichzeitig und können in einen Bereich klicken, um direkt zu interagieren. Erfordert tmux oder iTerm2.

100 100 

101> [!NOTE]101> [!NOTE]

102>102>

103> `tmux` hat bekannte Einschränkungen auf bestimmten Betriebssystemen und funktioniert traditionell am besten unter macOS. Die Verwendung von `tmux -CC` in iTerm2 ist der empfohlene Einstieg in `tmux`.103> `tmux` hat bekannte Einschränkungen auf bestimmten Betriebssystemen und funktioniert traditionell am besten unter macOS. Die Verwendung von `tmux -CC` in iTerm2 ist der empfohlene Einstiegspunkt in `tmux`.

104 104 

105Der Standardwert ist `"in-process"`. Setzen Sie `"auto"`, um geteilte Bereiche zu aktivieren, wenn Sie bereits innerhalb einer tmux-Sitzung arbeiten oder Ihr Terminal iTerm2 mit installiertem `it2` CLI ist; andernfalls wird auf In-Process zurückgefallen. Die Einstellung `"tmux"` aktiviert den Modus mit geteilten Bereichen und erkennt anhand Ihres Terminals automatisch, ob tmux oder iTerm2 verwendet werden soll.105Der Standardwert ist `"in-process"`. Setzen Sie `"auto"`, um geteilte Bereiche zu aktivieren, wenn Sie bereits innerhalb einer tmux-Sitzung arbeiten oder Ihr Terminal iTerm2 mit installierter `it2`-CLI ist; andernfalls wird auf In-Process zurückgefallen. Die Einstellung `"tmux"` aktiviert den Modus mit geteilten Bereichen und erkennt anhand Ihres Terminals automatisch, ob tmux oder iTerm2 verwendet werden soll.

106 106 

107Setzen Sie `"iterm2"`, um explizit die nativen geteilten Bereiche von iTerm2 zu verwenden. Dieser Modus erfordert das [`it2` CLI](https://github.com/mkusaka/it2) und zeigt einen Fehler mit dem Installationsbefehl an, wenn `it2` fehlt. Die Einrichtungsabfrage, die anbietet, `it2` zu installieren oder zu tmux zu wechseln, erscheint bei `"auto"` oder `"tmux"`, wenn Ihr Terminal iTerm2 ist und tmux als Fallback verfügbar ist.107Setzen Sie `"iterm2"`, um explizit die nativen geteilten Bereiche von iTerm2 zu verwenden. Dieser Modus erfordert die [`it2`-CLI](https://github.com/mkusaka/it2) und zeigt einen Fehler mit dem Installationsbefehl an, wenn `it2` fehlt. Die Einrichtungsabfrage, die anbietet, `it2` zu installieren oder zu tmux zu wechseln, erscheint unter `"auto"` oder `"tmux"`, wenn Ihr Terminal iTerm2 ist und tmux als Fallback verfügbar ist.

108 108 

109Um den Standardwert zu überschreiben, setzen Sie [`teammateMode`](https://code.claude.com/docs/de/settings-reference#teammatemode) in `~/.claude/settings.json`:109Um den Standardwert zu überschreiben, setzen Sie [`teammateMode`](https://code.claude.com/docs/de/settings-reference#teammatemode) in `~/.claude/settings.json`:

110 110 


122 122 

123Das Flag `--teammate-mode` ist experimentell und erscheint nicht in `claude --help`.123Das Flag `--teammate-mode` ist experimentell und erscheint nicht in `claude --help`.

124 124 

125Der Modus mit geteilten Bereichen erfordert entweder [tmux](https://github.com/tmux/tmux/wiki) oder iTerm2 mit dem [`it2` CLI](https://github.com/mkusaka/it2). So installieren Sie manuell:125Der Modus mit geteilten Bereichen erfordert entweder [tmux](https://github.com/tmux/tmux/wiki) oder iTerm2 mit der [`it2`-CLI](https://github.com/mkusaka/it2). So installieren Sie manuell:

126 126 

127* **tmux**: Installieren Sie es über den Paketmanager Ihres Systems. Plattformspezifische Anweisungen finden Sie im [tmux-Wiki](https://github.com/tmux/tmux/wiki/Installing).127* **tmux**: Installieren Sie es über den Paketmanager Ihres Systems. Plattformspezifische Anweisungen finden Sie im [tmux-Wiki](https://github.com/tmux/tmux/wiki/Installing).

128* **iTerm2**: Installieren Sie das [`it2` CLI](https://github.com/mkusaka/it2) und aktivieren Sie dann die Python API unter **iTerm2 → Settings → General → Magic → Enable Python API**.128* **iTerm2**: Installieren Sie die [`it2`-CLI](https://github.com/mkusaka/it2) und aktivieren Sie dann die Python-API unter **iTerm2 → Settings → General → Magic → Enable Python API**.

129 129 

130### Teammitglieder und Modelle festlegen130### Teammitglieder und Modelle festlegen

131 131 

132Claude entscheidet anhand Ihrer Aufgabe, wie viele Teammitglieder erzeugt werden, oder Sie geben genau an, was Sie möchten:132Claude entscheidet anhand Ihrer Aufgabe, wie viele Teammitglieder erzeugt werden, oder Sie können genau angeben, was Sie möchten:

133 133 

134```text wrap theme={null}134```text wrap theme={null}

135Spawn 4 teammates to refactor these modules in parallel. Use Sonnet for135Spawn 4 teammates to refactor these modules in parallel. Use Sonnet for


139Claude Code wählt das Modell jedes Teammitglieds aus der ersten der folgenden Quellen, die zutrifft:139Claude Code wählt das Modell jedes Teammitglieds aus der ersten der folgenden Quellen, die zutrifft:

140 140 

1411. Das Modell, das Ihr Spawn-Prompt für dieses Teammitglied nennt.1411. Das Modell, das Ihr Spawn-Prompt für dieses Teammitglied nennt.

1422. Für ein Teammitglied, das aus einer [Subagent-Definition](#use-subagent-definitions-for-teammates) erzeugt wurde, das `model` der Definition, wobei `inherit` das Modell des Leads auswählt.1422. Für ein Teammitglied, das aus einer [Subagenten-Definition](#use-subagent-definitions-for-teammates) erzeugt wurde, das `model` der Definition, wobei `inherit` das Modell des Leads auswählt.

1433. [`CLAUDE_CODE_SUBAGENT_MODEL`](https://code.claude.com/docs/de/model-config#environment-variables), wenn diese Variable auf einen anderen Wert als `inherit` gesetzt ist.1433. [`CLAUDE_CODE_SUBAGENT_MODEL`](https://code.claude.com/docs/de/model-config#environment-variables), wenn diese Variable auf einen anderen Wert als `inherit` gesetzt ist.

1444. Das aktuelle Modell des Leads.1444. Das aktuelle Modell des Leads.

145 145 

146Wenn ein installierter [Mod](https://code.claude.com/docs/de/plugins/mods/overview.md) in seinem [`agent.spawn`](https://code.claude.com/docs/de/plugins/mods/reference#subagents)-Hook ein Modell festlegt, verwendet Claude Code dieses Modell anstelle der ersten Quelle.146Wenn ein installierter [Mod](https://code.claude.com/docs/de/plugins/mods/overview.md) in seinem [`agent.spawn`](https://code.claude.com/docs/de/plugins/mods/reference#subagents)-Hook ein Modell festlegt, verwendet Claude Code dieses Modell anstelle der ersten Quelle.

147 147 

148Wenn Sie [`CLAUDE_CODE_SUBAGENT_MODEL_FORCE=1`](https://code.claude.com/docs/de/sub-agents#run-every-subagent-on-one-model) setzen, gelten die ersten beiden Quellen nicht. Claude Code wählt das Modell jedes Teammitglieds aus `CLAUDE_CODE_SUBAGENT_MODEL`, wenn diese Variable auf einen anderen Wert als `inherit` gesetzt ist, und andernfalls aus dem aktuellen Modell des Leads. Erfordert Claude Code v2.1.257 oder neuer.148Wenn Sie [`CLAUDE_CODE_SUBAGENT_MODEL_FORCE=1`](https://code.claude.com/docs/de/sub-agents#run-every-subagent-on-one-model) setzen, gelten die ersten beiden Quellen nicht. Claude Code wählt das Modell jedes Teammitglieds aus `CLAUDE_CODE_SUBAGENT_MODEL`, wenn diese Variable auf einen anderen Wert als `inherit` gesetzt ist, und andernfalls aus dem aktuellen Modell des Leads. Erfordert Claude Code v2.1.257 oder höher.

149 149 

150Vor v2.1.251 stand `CLAUDE_CODE_SUBAGENT_MODEL` an erster Stelle dieser Reihenfolge.150Vor v2.1.251 stand `CLAUDE_CODE_SUBAGENT_MODEL` an erster Stelle dieser Reihenfolge.

151 151 


153>153>

154> `teammateDefaultModel` wurde in v2.1.234 entfernt; Claude Code ignoriert einen verbliebenen Wert. Nennen Sie das Modell stattdessen in Ihrem Prompt.154> `teammateDefaultModel` wurde in v2.1.234 entfernt; Claude Code ignoriert einen verbliebenen Wert. Nennen Sie das Modell stattdessen in Ihrem Prompt.

155 155 

156Claude Code prüft das Modell, das es für ein Teammitglied auswählt, anhand der [`availableModels`](https://code.claude.com/docs/de/model-config#restrict-model-selection)-Allowlist Ihrer Organisation. Wenn die Allowlist einen Wert blockiert, setzt Claude Code ein anderes Modell ein:156Claude Code prüft das Modell, das es für ein Teammitglied auswählt, gegen die [`availableModels`](https://code.claude.com/docs/de/model-config#restrict-model-selection)-Allowlist Ihrer Organisation. Wenn die Allowlist einen Wert blockiert, ersetzt Claude Code ihn durch ein anderes Modell:

157 157 

158* **Familienalias wie `opus`**: Bei der Anthropic API und der Claude Platform on AWS führt Claude Code das Teammitglied mit der neuesten Version dieser Familie aus, die die Allowlist zulässt. Bei Anbietern mit anbieterspezifischen Modell-IDs, bei denen die [Ersetzung nicht greift](https://code.claude.com/docs/de/model-config.md#restrict-model-selection), fällt ein blockierter Alias wie jeder andere blockierte Wert gemäß dem nächsten Punkt zurück158* **Familien-Alias wie `opus`**: Auf der Anthropic API und der Claude Platform on AWS führt Claude Code das Teammitglied mit der neuesten Version dieser Familie aus, die die Allowlist zulässt. Bei Anbietern mit anbieterspezifischen Modell-IDs, bei denen die [Ersetzung nicht greift](https://code.claude.com/docs/de/model-config.md#restrict-model-selection), fällt ein blockierter Alias wie jeder andere blockierte Wert gemäß dem nächsten Punkt zurück

159* **Jeder andere blockierte Wert, einschließlich eines Familienalias bei Anbietern, bei denen die Ersetzung nicht greift, oder eines Alias, dessen Familie keine zulässige Version hat**: Claude Code führt das Teammitglied stattdessen mit dem Modell des Leads aus. Wenn Sie `CLAUDE_CODE_SUBAGENT_MODEL` setzen, versucht Claude Code zuerst dieses Modell, nach denselben Regeln159* **Jeder andere blockierte Wert, einschließlich eines Familien-Alias bei Anbietern, bei denen die Ersetzung nicht greift, oder eines Alias, dessen Familie keine zulässige Version hat**: Claude Code führt das Teammitglied stattdessen mit dem Modell des Leads aus. Wenn Sie `CLAUDE_CODE_SUBAGENT_MODEL` setzen, versucht Claude Code zuerst dieses Modell, nach denselben Regeln

160 160 

161Standardmäßig übernehmen Teammitglieder die [Effort-Stufe](https://code.claude.com/docs/de/model-config.md#adjust-effort-level) des Leads. Im Modus mit geteilten Bereichen gilt dies ab v2.1.186; frühere Versionen haben die Effort-Stufe der Sitzung des Leads nicht an Teammitglieder in geteilten Bereichen weitergegeben.161Standardmäßig übernehmen Teammitglieder die [Effort-Stufe](https://code.claude.com/docs/de/model-config.md#adjust-effort-level) des Leads. Im Modus mit geteilten Bereichen gilt dies ab v2.1.186; frühere Versionen haben die Effort-Stufe der Sitzung des Leads nicht an Teammitglieder in geteilten Bereichen weitergegeben.

162 162 


170 170 

171Wenn dieses Teammitglied mit der Planung fertig ist, sendet es eine Anfrage zur Plangenehmigung an den Lead. Wenn Sie den Berechtigungsmodus dieses Teammitglieds seit seiner Erzeugung nicht geändert haben, genehmigt Claude Code den Plan, sobald die Anfrage eintrifft, ohne dass der Lead ihn prüft. Die Bearbeitungen und Befehle des Teammitglieds durchlaufen weiterhin die unter [Berechtigungen](#permissions) beschriebenen Berechtigungsabfragen. Nach der Genehmigung verlässt das Teammitglied den Plan-Modus und beginnt mit der Implementierung.171Wenn dieses Teammitglied mit der Planung fertig ist, sendet es eine Anfrage zur Plangenehmigung an den Lead. Wenn Sie den Berechtigungsmodus dieses Teammitglieds seit seiner Erzeugung nicht geändert haben, genehmigt Claude Code den Plan, sobald die Anfrage eintrifft, ohne dass der Lead ihn prüft. Die Bearbeitungen und Befehle des Teammitglieds durchlaufen weiterhin die unter [Berechtigungen](#permissions) beschriebenen Berechtigungsabfragen. Nach der Genehmigung verlässt das Teammitglied den Plan-Modus und beginnt mit der Implementierung.

172 172 

173Wenn Sie ein laufendes In-Process-Teammitglied in den Plan-Modus versetzen, indem Sie beim Anzeigen seiner Sitzung [`Shift+Tab`](https://code.claude.com/docs/de/permission-modes#switch-permission-modes) drücken, prüft der Lead den Plan dieses Durchlaufs, anstatt dass Claude Code ihn genehmigt. Sie werden nicht um Genehmigung gebeten; der Lead genehmigt den Plan oder schickt ihn zur Überarbeitung zurück.173Wenn Sie ein laufendes In-Process-Teammitglied in den Plan-Modus versetzen, indem Sie beim Anzeigen seiner Sitzung [`Shift+Tab`](https://code.claude.com/docs/de/permission-modes#switch-permission-modes) drücken, prüft der Lead den Plan dieses Laufs, statt dass Claude Code ihn genehmigt. Sie werden nicht um Genehmigung gebeten; der Lead genehmigt den Plan oder schickt ihn zur Überarbeitung zurück.

174 174 

175### Direkt mit Teammitgliedern sprechen175### Direkt mit Teammitgliedern sprechen

176 176 

177Jedes Teammitglied ist eine vollständige, unabhängige Claude Code-Sitzung. Sie können jedem Teammitglied direkt eine Nachricht senden, um zusätzliche Anweisungen zu geben, Rückfragen zu stellen oder seine Vorgehensweise umzulenken.177Jedes Teammitglied ist eine vollständige, unabhängige Claude Code-Sitzung. Sie können jedem Teammitglied direkt eine Nachricht senden, um zusätzliche Anweisungen zu geben, Rückfragen zu stellen oder seine Vorgehensweise umzulenken.

178 178 

179* **In-Process-Modus**: Verwenden Sie die Pfeiltasten nach oben und unten im Agenten-Panel, um ein Teammitglied auszuwählen, drücken Sie dann die Eingabetaste, um seine Sitzung anzuzeigen, und tippen Sie, um ihm eine Nachricht zu senden. Drücken Sie `x` bei einem ausgewählten Teammitglied, um es zu stoppen. Drücken Sie Ctrl+T, um die Aufgabenliste ein- oder auszublenden.179* **In-Process-Modus**: Verwenden Sie die Pfeiltasten nach oben und unten im Agentenbereich, um ein Teammitglied auszuwählen, drücken Sie dann Enter, um seine Sitzung anzuzeigen, und tippen Sie, um ihm eine Nachricht zu senden. Drücken Sie `x` bei einem ausgewählten Teammitglied, um es zu stoppen. Drücken Sie Ctrl+T, um die Aufgabenliste ein- oder auszublenden.

180* **Modus mit geteilten Bereichen**: Klicken Sie in den Bereich eines Teammitglieds, um direkt mit seiner Sitzung zu interagieren. Jedes Teammitglied hat eine vollständige Ansicht seines eigenen Terminals.180* **Modus mit geteilten Bereichen**: Klicken Sie in den Bereich eines Teammitglieds, um direkt mit seiner Sitzung zu interagieren. Jedes Teammitglied hat eine vollständige Ansicht seines eigenen Terminals.

181 181 

182Während Sie ein In-Process-Teammitglied anzeigen, gehen einfacher Text und [Skills](https://code.claude.com/docs/de/skills.md) an dieses Teammitglied, und integrierte Befehle gehen an die Sitzung des Leads, mit folgenden Schutzmaßnahmen:182Während Sie ein In-Process-Teammitglied anzeigen, gehen einfacher Text und [Skills](https://code.claude.com/docs/de/skills.md) an dieses Teammitglied, und integrierte Befehle gehen an die Sitzung des Leads, mit diesen Schutzmaßnahmen:

183 183 

184* `/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.184* `/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.

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

186 186 

187Das Modell und der Fast-Modus eines Teammitglieds werden bei seiner Erzeugung festgelegt.187Modell und Fast-Modus eines Teammitglieds werden bei seiner Erzeugung festgelegt.

188 188 

189### Aufgaben zuweisen und übernehmen189### Aufgaben zuweisen und übernehmen

190 190 

191Die gemeinsame Aufgabenliste koordiniert die Arbeit im gesamten Team. Der Lead erstellt Aufgaben, und die Teammitglieder arbeiten sie ab. Aufgaben haben drei Zustände: ausstehend, in Bearbeitung und abgeschlossen. Eine Aufgabe kann auch von anderen Aufgaben abhängen und wird in der Aufgabenliste als blockiert angezeigt, bis diese abgeschlossen sind. Teammitglieder übernehmen eine blockierte Aufgabe nicht selbst, aber Sie oder der Lead können sie dennoch zuweisen.191Die gemeinsame Aufgabenliste koordiniert die Arbeit im Team. Der Lead erstellt Aufgaben, und die Teammitglieder arbeiten sie ab. Aufgaben haben drei Zustände: ausstehend, in Bearbeitung und abgeschlossen. Eine Aufgabe kann auch von anderen Aufgaben abhängen und wird in der Aufgabenliste als blockiert angezeigt, bis diese abgeschlossen sind. Teammitglieder übernehmen eine blockierte Aufgabe nicht selbst, aber Sie oder der Lead können sie trotzdem zuweisen.

192 192 

193Agenten [ohne die Task-Tools](https://code.claude.com/docs/de/tools-reference.md#task-tool-availability) koordinieren sich stattdessen über Nachrichten statt über die gemeinsame Aufgabenliste.193Agenten [ohne die Task-Tools](https://code.claude.com/docs/de/tools-reference.md#task-tool-availability) koordinieren sich stattdessen über Nachrichten statt über die gemeinsame Aufgabenliste.

194 194 

195Der Lead kann Aufgaben explizit zuweisen, oder Teammitglieder können sie selbst übernehmen:195Der Lead kann Aufgaben explizit zuweisen, oder Teammitglieder können sie selbst übernehmen:

196 196 

197* **Lead weist zu**: Teilen Sie dem Lead mit, welche Aufgabe er welchem Teammitglied geben soll197* **Zuweisung durch den Lead**: Teilen Sie dem Lead mit, welche Aufgabe er welchem Teammitglied geben soll

198* **Selbst übernehmen**: Nach Abschluss einer Aufgabe übernimmt ein Teammitglied selbstständig die nächste nicht zugewiesene, nicht blockierte Aufgabe198* **Selbstübernahme**: Nach Abschluss einer Aufgabe übernimmt ein Teammitglied selbstständig die nächste nicht zugewiesene, nicht blockierte Aufgabe

199 199 

200Die Übernahme von Aufgaben verwendet Dateisperren, um Race Conditions zu verhindern, wenn mehrere Teammitglieder gleichzeitig versuchen, dieselbe Aufgabe zu übernehmen.200Die Übernahme von Aufgaben verwendet Dateisperren, um Race Conditions zu verhindern, wenn mehrere Teammitglieder gleichzeitig versuchen, dieselbe Aufgabe zu übernehmen.

201 201 


207Ask the researcher teammate to shut down207Ask the researcher teammate to shut down

208```208```

209 209 

210Der Lead sendet eine Anfrage zum Beenden. Das Teammitglied kann zustimmen und sich ordnungsgemäß beenden oder mit einer Begründung ablehnen.210Der Lead sendet eine Anfrage zum Herunterfahren. Das Teammitglied kann zustimmen und sich ordnungsgemäß beenden oder mit einer Begründung ablehnen.

211 211 

212Die gemeinsamen Verzeichnisse des Teams werden beim Ende der Sitzung automatisch bereinigt, daher gibt es keinen separaten Bereinigungsschritt. Unter [Architektur](#architecture) erfahren Sie, welche Verzeichnisse entfernt werden und welche auf dem Datenträger verbleiben.212Die gemeinsamen Verzeichnisse des Teams werden automatisch bereinigt, wenn die Sitzung endet, daher gibt es keinen separaten Bereinigungsschritt. Unter [Architektur](#architecture) erfahren Sie, welche Verzeichnisse entfernt werden und welche auf dem Datenträger verbleiben.

213 213 

214### Qualitätsprüfungen mit Hooks durchsetzen214### Qualitätskontrollen mit Hooks durchsetzen

215 215 

216Verwenden Sie [Hooks](https://code.claude.com/docs/de/hooks.md), um Regeln durchzusetzen, wenn Teammitglieder ihre Arbeit beenden oder Aufgaben erstellt oder abgeschlossen werden:216Verwenden Sie [Hooks](https://code.claude.com/docs/de/hooks.md), um Regeln durchzusetzen, wenn Teammitglieder ihre Arbeit beenden oder Aufgaben erstellt oder abgeschlossen werden:

217 217 

218* [`TeammateIdle`](https://code.claude.com/docs/de/hooks#teammateidle): wird ausgeführt, wenn ein Teammitglied kurz davor ist, in den Leerlauf zu wechseln. Beenden Sie mit Code 2, um Feedback zu senden und das Teammitglied weiterarbeiten zu lassen.218* [`TeammateIdle`](https://code.claude.com/docs/de/hooks#teammateidle): Wird ausgeführt, wenn ein Teammitglied kurz davor ist, in den Leerlauf zu wechseln. Beenden Sie mit Code 2, um Feedback zu senden und das Teammitglied weiterarbeiten zu lassen.

219* [`TaskCreated`](https://code.claude.com/docs/de/hooks#taskcreated): wird ausgeführt, wenn eine Aufgabe erstellt wird. Beenden Sie mit Code 2, um die Erstellung zu verhindern und Feedback zu senden.219* [`TaskCreated`](https://code.claude.com/docs/de/hooks#taskcreated): Wird ausgeführt, wenn eine Aufgabe erstellt wird. Beenden Sie mit Code 2, um die Erstellung zu verhindern und Feedback zu senden.

220* [`TaskCompleted`](https://code.claude.com/docs/de/hooks#taskcompleted): wird ausgeführt, wenn eine Aufgabe als abgeschlossen markiert wird. Beenden Sie mit Code 2, um den Abschluss zu verhindern und Feedback zu senden.220* [`TaskCompleted`](https://code.claude.com/docs/de/hooks#taskcompleted): Wird ausgeführt, wenn eine Aufgabe als abgeschlossen markiert wird. Beenden Sie mit Code 2, um den Abschluss zu verhindern und Feedback zu senden.

221 221 

222## Wie Agent-Teams funktionieren222## Wie Agent-Teams funktionieren

223 223 


417 417 

418## Fehlerbehebung418## Fehlerbehebung

419 419 

420### Teammates erscheinen nicht420### Teammates werden nicht angezeigt

421 421 

422Wenn Teammates nicht erscheinen, nachdem Sie Claude aufgefordert haben, sie zu erzeugen:422Wenn Teammates nicht angezeigt werden, nachdem Sie Claude gebeten haben, sie zu starten:

423 423 

424* Im In-Process-Modus erscheinen Teammates im Agent-Panel unterhalb der Eingabeaufforderung. Verwenden Sie die Pfeiltasten nach oben und unten, um einen auszuwählen, und drücken Sie dann die Eingabetaste, um ihn anzuzeigen.424* Im In-Process-Modus erscheinen Teammates im Agenten-Panel unterhalb des Prompt-Eingabefelds. Verwenden Sie die Pfeiltasten nach oben und unten, um einen Teammate auszuwählen, und drücken Sie dann Enter, um ihn anzuzeigen.

425* Eine Teammate-Zeile, die nach dem Leerlauf verschwunden ist, wurde ausgeblendet, nicht gestoppt. Leerlauf-Zeilen werden 30 Sekunden nach dem Leerlauf des gesamten Panels ausgeblendet und erscheinen beim nächsten Zug des Teammates wieder. Wenn mehr als drei Teammates untätig sind, werden ihre überschüssigen Zeilen in einer einzelnen `N idle agents`-Zeile zusammengefasst, die Enter erweitert. Senden Sie dem Teammate eine Nachricht nach Name, um eine ausgeblendete Zeile zurückzubringen.425* Eine Teammate-Zeile, die nach einer Leerlaufphase verschwunden ist, wurde ausgeblendet, nicht gestoppt. Leerlaufzeilen werden 30 Sekunden, nachdem das gesamte Panel in den Leerlauf gewechselt ist, ausgeblendet und erscheinen beim nächsten Turn des Teammates wieder. Wenn sich mehr als drei Teammates im Leerlauf befinden, werden die überzähligen Zeilen zu einer einzigen Zeile `N idle agents` zusammengefasst, die Sie mit Enter aufklappen. Senden Sie dem Teammate eine Nachricht mit seinem Namen, um eine ausgeblendete Zeile zurückzuholen.

426* Überprüfen Sie, dass die Aufgabe, die Sie Claude gegeben haben, komplex genug war, um ein Team zu rechtfertigen. Claude entscheidet basierend auf der Aufgabe, ob Teammates erzeugt werden sollen.426* Prüfen Sie, ob die Aufgabe, die Sie Claude gegeben haben, komplex genug war, um ein Team zu rechtfertigen. Claude entscheidet anhand der Aufgabe, ob Teammates gestartet werden.

427* Wenn Sie explizit Split Panes angefordert haben, stellen Sie sicher, dass tmux installiert ist und in Ihrem PATH verfügbar ist:427* Wenn Sie ausdrücklich geteilte Bereiche angefordert haben, stellen Sie sicher, dass tmux installiert und in Ihrem PATH verfügbar ist:

428 ```bash theme={null}428 ```bash theme={null}

429 which tmux429 which tmux

430 ```430 ```

431* Für iTerm2 überprüfen Sie, dass die `it2` CLI installiert ist und die Python-API in iTerm2-Einstellungen aktiviert ist.431* Prüfen Sie bei iTerm2, ob die `it2` CLI installiert ist und die Python-API in den iTerm2-Einstellungen aktiviert ist.

432 432 

433### Claude erzeugt Teammates statt Subagenten433### Claude startet Teammates statt Subagenten

434 434 

435Während Agent-Teams aktiviert sind, wird ein Subagent, den Claude in der Sitzung des Lead benennt, als Teammate gestartet. Claude [kann Subagenten selbstständig benennen](#how-claude-starts-agent-teams), daher kann dies während einer Delegation geschehen, die Sie nie als Teamarbeit formuliert haben.435Solange Agent-Teams aktiviert sind, wird ein Subagent, den Claude in der Sitzung des Leads benennt, als Teammate gestartet. Claude [kann Subagenten selbstständig benennen](#how-claude-starts-agent-teams), daher kann dies auch bei einer Delegation passieren, die Sie nie als Teamarbeit formuliert haben.

436 436 

437Um benannte Subagenten wieder als Subagenten zu starten, deaktivieren Sie Agent-Teams, indem Sie `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` auf `0` setzen:437Damit benannte Subagenten wieder als Subagenten gestartet werden, schalten Sie Agent-Teams aus, indem Sie `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` auf `0` setzen:

438 438 

439```json settings.json theme={null}439```json settings.json theme={null}

440{440{


444}444}

445```445```

446 446 

447Sie müssen keine neue Sitzung starten: Claude Code wendet `env`-Werte aus der Einstellungsdatei auf die laufende Sitzung an, wenn Sie speichern, und liest die Variable jedes Mal neu, wenn Claude einen Subagenten erzeugt, sodass der nächste Subagent, den Claude benennt, als Subagent gestartet wird.447Sie müssen keine neue Sitzung starten: Claude Code wendet die `env`-Werte aus der Einstellungsdatei beim Speichern erneut auf die laufende Sitzung an und liest die Variable jedes Mal neu ein, wenn Claude einen Subagenten startet, sodass der nächste Subagent, den Claude benennt, als Subagent gestartet wird.

448 448 

449Das Setzen der Variable auf `0` in Ihrer Benutzer-`settings.json` überschreibt einen Shell-Export. Andere Einstellungsquellen können Agent-Teams immer noch aktivieren:449Das Setzen der Variable auf `0` in Ihrer Benutzer-`settings.json` überschreibt einen Shell-Export. Andere Einstellungsquellen können Agent-Teams dennoch aktivieren:

450 450 

451* **Einstellungsdateien mit höherer Priorität**: Projekteinstellungen, lokale Einstellungen und eine `--settings`-Nutzlast werden nach Benutzereinstellungen angewendet, daher gewinnt ein `env`-Eintrag, der die Variable auf `1` in einer von ihnen setzt. Siehe [Einstellungspriorität](https://code.claude.com/docs/de/settings.md#settings-precedence).451* **Einstellungsdateien mit höherem Vorrang**: Projekteinstellungen, lokale Einstellungen und eine `--settings`-Payload werden nach den Benutzereinstellungen angewendet, sodass ein `env`-Eintrag, der die Variable in einer davon auf `1` setzt, Vorrang hat. Siehe [Vorrang von Einstellungen](https://code.claude.com/docs/de/settings.md#settings-precedence).

452* **Verwaltete Einstellungen**: [Verwaltete Einstellungen](https://code.claude.com/docs/de/server-managed-settings.md) werden nach jeder anderen Quelle angewendet. Wenn Ihre Organisation Agent-Teams dort aktiviert, bitten Sie Ihren Administrator, den verwalteten Wert zu ändern.452* **Verwaltete Einstellungen**: [Verwaltete Einstellungen](https://code.claude.com/docs/de/server-managed-settings.md) werden nach allen anderen Quellen angewendet. Wenn Ihre Organisation Agent-Teams dort aktiviert, bitten Sie Ihren Administrator, den verwalteten Wert zu ändern.

453 453 

454Nach der Änderung kann Claude immer noch Subagenten benennen, und der Name funktioniert weiterhin als [`SendMessage`-Adresse](https://code.claude.com/docs/de/sub-agents#resume-subagents). Claude erhält das Ergebnis jedes Subagenten, wenn dieser abgeschlossen ist.454Nach der Änderung kann Claude weiterhin Subagenten benennen, und der Name funktioniert weiterhin als [`SendMessage`-Adresse](https://code.claude.com/docs/de/sub-agents#resume-subagents). Claude erhält das Ergebnis jedes Subagenten, sobald dieser fertig ist.

455 455 

456### Zu viele Berechtigungsaufforderungen456### Zu viele Berechtigungsabfragen

457 457 

458Teammate-Berechtigungsanfragen sprudeln zum Lead auf, was zu Reibung führen kann. Genehmigen Sie häufige Operationen in Ihren [Berechtigungseinstellungen](https://code.claude.com/docs/de/permissions.md) vor dem Erzeugen von Teammates, um Unterbrechungen zu reduzieren.458Berechtigungsanfragen von Teammates werden an den Lead weitergeleitet, was zu Reibung führen kann. Genehmigen Sie häufige Vorgänge vorab in Ihren [Berechtigungseinstellungen](https://code.claude.com/docs/de/permissions.md), bevor Sie Teammates starten, um Unterbrechungen zu reduzieren.

459 459 

460### Agents stoppen früh460### Agenten stoppen vorzeitig

461 461 

462Teammates können nach Fehlern stoppen, anstatt sich zu erholen. Überprüfen Sie ihre Ausgabe, indem Sie den Teammate im Agent-Panel auswählen und die Eingabetaste im In-Process-Modus drücken, oder indem Sie im Split-Modus auf den Pane klicken, dann entweder:462Teammates können nach Fehlern stoppen, anstatt sich davon zu erholen. Prüfen Sie ihre Ausgabe, indem Sie im In-Process-Modus den Teammate im Agenten-Panel auswählen und Enter drücken oder im Split-Modus auf den Bereich klicken, und dann entweder:

463 463 

464* Geben Sie ihnen zusätzliche Anweisungen direkt464* Geben Sie ihnen direkt zusätzliche Anweisungen

465* Erzeugen Sie einen Ersatz-Teammate, um die Arbeit fortzusetzen465* Starten Sie einen Ersatz-Teammate, der die Arbeit fortsetzt

466 466 

467Eine Nachricht vom Lead oder einem anderen Teammate weckt einen In-Process-Teammate auf, der darauf wartet, eine fehlgeschlagene API-Anfrage erneut zu versuchen, sodass er sofort erneut versucht wird, anstatt auf die vollständige Wiederholungsverzögerung zu warten.467Eine Nachricht vom Lead oder einem anderen Teammate weckt einen In-Process-Teammate, der darauf wartet, eine fehlgeschlagene API-Anfrage erneut zu versuchen, sodass er es sofort erneut versucht, anstatt die volle Wartezeit bis zum nächsten Wiederholungsversuch abzuwarten.

468 468 

469Der Lead kann auch früh stoppen und entscheiden, dass das Team fertig ist, bevor alle Aufgaben tatsächlich abgeschlossen sind. Wenn das geschieht, teilen Sie ihm mit, dass er weitermachen soll.469Auch der Lead kann vorzeitig stoppen, wenn er entscheidet, dass das Team fertig ist, bevor tatsächlich alle Aufgaben abgeschlossen sind. Falls das passiert, weisen Sie ihn an, weiterzumachen.

470 470 

471### Verwaiste tmux-Sitzungen471### Verwaiste tmux-Sitzungen

472 472 

473Wenn eine tmux-Sitzung nach dem Ende der Claude Code-Sitzung bestehen bleibt, wurde sie möglicherweise nicht vollständig bereinigt. Listen Sie Sitzungen auf und beenden Sie die vom Team erstellte:473Wenn eine tmux-Sitzung nach dem Ende der Claude Code-Sitzung bestehen bleibt, wurde sie möglicherweise nicht vollständig bereinigt. Listen Sie die Sitzungen auf und beenden Sie die vom Team erstellte Sitzung:

474 474 

475```bash theme={null}475```bash theme={null}

476tmux ls476tmux ls

Details

17 17 

18Wenn der Browser nicht automatisch geöffnet wird, drücken Sie `c`, um die Anmelde-URL in Ihre Zwischenablage zu kopieren, und fügen Sie sie dann in Ihren Browser ein.18Wenn der Browser nicht automatisch geöffnet wird, drücken Sie `c`, um die Anmelde-URL in Ihre Zwischenablage zu kopieren, und fügen Sie sie dann in Ihren Browser ein.

19 19 

20Wenn Ihr Browser nach der Anmeldung einen Anmeldecode anzeigt, anstatt Sie zurückzuleiten, fügen Sie ihn an der Eingabeaufforderung `Paste code here if prompted` im Terminal ein. Dies geschieht, wenn der Browser den lokalen Callback-Server von Claude Code nicht erreichen kann, was in WSL2, SSH-Sitzungen und Containern häufig vorkommt.20Wenn Ihr Browser nach der Anmeldung einen Anmeldecode anzeigt, anstatt Sie zurückzuleiten, fügen Sie ihn an der Eingabeaufforderung `Paste code here if prompted` im Terminal ein.

21 21 

22Wenn die Anmeldung abgeschlossen ist, zeigt das Terminal `Login successful` an und fordert Sie auf, `Enter` zu drücken, um fortzufahren.22Wenn die Anmeldung abgeschlossen ist, zeigt das Terminal `Login successful` an und fordert Sie auf, `Enter` zu drücken, um fortzufahren.

23 23 


127Sie erhalten nicht bei jedem Computer die Wahl. Claude Code erstellt einen API-Schlüssel ohne Nachfrage in diesen Fällen:127Sie erhalten nicht bei jedem Computer die Wahl. Claude Code erstellt einen API-Schlüssel ohne Nachfrage in diesen Fällen:

128 128 

129* Sie führen gegen einen Cloud-Anbieter aus, z. B. [Amazon Bedrock, Google Cloud's Agent Platform oder Microsoft Foundry](https://code.claude.com/docs/de/third-party-integrations.md) oder [Claude Platform auf AWS](https://code.claude.com/docs/de/claude-platform-on-aws.md)129* Sie führen gegen einen Cloud-Anbieter aus, z. B. [Amazon Bedrock, Google Cloud's Agent Platform oder Microsoft Foundry](https://code.claude.com/docs/de/third-party-integrations.md) oder [Claude Platform auf AWS](https://code.claude.com/docs/de/claude-platform-on-aws.md)

130* Eine beliebige Einstellungsdatei setzt [`forceLoginOrgUUID`](#restrict-login-to-your-organization) oder setzt `forceLoginMethod` auf `"claudeai"` oder `"console"`130* Eine beliebige Einstellungsdatei setzt [`forceLoginOrgUUID`](#restrict-login-to-your-organization) oder setzt `forceLoginMethod` auf `"claudeai"`

131* `forceLoginMethod` ist `"console"` und keine Einstellungsdatei setzt `forceLoginOrgUUID`, bis Sie es nach einer fehlgeschlagenen Anmeldung vom Fehlerbildschirm aus erneut versuchen

131* Eine verwaltete Einstellungsquelle auf Ihrem Computer, z. B. die verwaltete Einstellungsdatei, ein MDM-Profil oder die zwischengespeicherten serverseitig verwalteten Einstellungen, existiert, aber Claude Code [kann sie nicht lesen](https://code.claude.com/docs/de/managed-settings.md#invalid-entries-in-managed-settings) und keine andere verwaltete Quelle liefert eine Richtlinie132* Eine verwaltete Einstellungsquelle auf Ihrem Computer, z. B. die verwaltete Einstellungsdatei, ein MDM-Profil oder die zwischengespeicherten serverseitig verwalteten Einstellungen, existiert, aber Claude Code [kann sie nicht lesen](https://code.claude.com/docs/de/managed-settings.md#invalid-entries-in-managed-settings) und keine andere verwaltete Quelle liefert eine Richtlinie

132 133 

133Heben Sie `ANTHROPIC_API_KEY` auf, bevor Sie sich ohne Schlüssel anmelden.134Heben Sie `ANTHROPIC_API_KEY` auf, bevor Sie sich ohne Schlüssel anmelden.


140 141 

141Alles andere über Profile gilt für diese Anmeldung, einschließlich wo sie gegen Ihre anderen Anmeldedaten rangiert, die `Profile`-Zeile, die Sie in `/status` erhalten, und die Funktionen, die eine claude.ai-Anmeldung benötigen. Siehe [Anthropic-Profile und Verbundanmeldedaten](#anthropic-profiles-and-federation-credentials).142Alles andere über Profile gilt für diese Anmeldung, einschließlich wo sie gegen Ihre anderen Anmeldedaten rangiert, die `Profile`-Zeile, die Sie in `/status` erhalten, und die Funktionen, die eine claude.ai-Anmeldung benötigen. Siehe [Anthropic-Profile und Verbundanmeldedaten](#anthropic-profiles-and-federation-credentials).

142 143 

144#### Schlüssellose Anmeldung auf verwalteten Computern nicht mehr anbieten

145 

146Damit Claude Code die [schlüssellose Anmeldung](#sign-in-without-an-api-key) nicht mehr anbietet, stellen Sie mit Ihren Geräteverwaltungstools [`forceLoginOrgUUID`](https://code.claude.com/docs/de/settings-reference#forceloginorguuid) in [verwalteten Einstellungen](https://code.claude.com/docs/de/managed-settings.md) auf dem Computer jedes Entwicklers bereit. Setzen Sie den Wert auf Ihre [Console-Organisations-ID](https://platform.claude.com/settings/organization). Stellen Sie vor der Bereitstellung sicher, dass jeder Entwickler eine [Rolle hat, die API-Schlüssel erstellen kann](#claude-console-authentication). Nach der Bereitstellung kann sich ein Entwickler ohne diese Rolle unter `/login` nicht bei der Console anmelden.

147 

148Wenn nur `forceLoginMethod` auf `"console"` gesetzt ist, können Entwickler eine fehlgeschlagene Anmeldung erneut versuchen und die schlüssellose Option wählen. Sobald `forceLoginOrgUUID` bereitgestellt ist, entfällt diese Option auf dem Anmeldebildschirm, Entwickler können aber weiterhin ein [Anthropic-Profil](#anthropic-profiles-and-federation-credentials) verwenden, das sie bereits haben oder mit [`ant auth login`](https://platform.claude.com/docs/en/cli-sdks-libraries/cli/authentication) erstellen. Behandeln Sie nach der Bereitstellung die folgenden Anmeldedaten und Anmeldungen auf jedem Computer:

149 

150* **Schlüssellose Anmeldungen**: Um einen Entwickler auf einen API-Schlüssel umzustellen, lassen Sie ihn sich abmelden und dann erneut bei der Console anmelden, wodurch der Schlüssel erstellt wird. Bei einer schlüssellosen Anmeldung führt er `claude auth logout` in seiner Shell aus. Bei einem `ant auth login`-Profil führt er `ant auth logout` aus. Claude Code lehnt die Sitzung ab, wenn sowohl ein Profil als auch ein API-Schlüssel auf dem Computer vorhanden sind, daher meldet er sich zuerst ab.

151* **Anmeldedaten aus Umgebung und Helper**: Claude Code lehnt Sitzungen ab, die sich mit `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` oder `apiKeyHelper` authentifizieren, selbst wenn verwaltete Einstellungen diese bereitstellen. Entfernen Sie diese Anmeldedaten und lassen Sie Entwickler dann `/login` ausführen, um einen gespeicherten API-Schlüssel zu erstellen.

152* **claude.ai-Anmeldungen**: Claude Code [lehnt eine Anmeldung](#restrict-login-to-your-organization) bei einer Organisation ab, die Sie nicht aufgelistet haben, auch wenn diese bereits auf dem Computer verwendet wird. Um eine solche beizubehalten, fügen Sie sie einem `forceLoginOrgUUID`-Array hinzu.

153 

143### Cloud-Anbieter-Authentifizierung154### Cloud-Anbieter-Authentifizierung

144 155 

145Für Teams, die Amazon Bedrock, Google Cloud's Agent Platform oder Microsoft Foundry verwenden:156Für Teams, die Amazon Bedrock, Google Cloud's Agent Platform oder Microsoft Foundry verwenden:


172* **`claude setup-token` und `/install-github-app`**: Erzwingen Sie nur `forceLoginMethod`, daher können sie ein Token in einer anderen Organisation prägen183* **`claude setup-token` und `/install-github-app`**: Erzwingen Sie nur `forceLoginMethod`, daher können sie ein Token in einer anderen Organisation prägen

173* **[Gateway](https://code.claude.com/docs/de/claude-apps-gateway)-Anmeldung**: Wird durch `forceLoginMethod: "gateway"` ausgewählt, anstatt dadurch eingeschränkt zu werden, und authentifiziert sich nicht gegen eine Anthropic-Organisation, daher gilt `forceLoginOrgUUID` nicht; verwenden Sie Ihren Gateway-Identitätsanbieter, um den Zugriff einzuschränken184* **[Gateway](https://code.claude.com/docs/de/claude-apps-gateway)-Anmeldung**: Wird durch `forceLoginMethod: "gateway"` ausgewählt, anstatt dadurch eingeschränkt zu werden, und authentifiziert sich nicht gegen eine Anthropic-Organisation, daher gilt `forceLoginOrgUUID` nicht; verwenden Sie Ihren Gateway-Identitätsanbieter, um den Zugriff einzuschränken

174 185 

175Stellen Sie die Schlüssel über Ihre Geräteverwaltungstools bereit. [Serverseitig verwaltete Einstellungen](https://code.claude.com/docs/de/server-managed-settings.md) erreichen nur Konten, die bereits bei Ihrer Organisation authentifiziert sind, daher können sie die erste Anmeldung eines Entwicklers nicht umleiten. Wenn Ihre Organisation auch serverseitig verwaltete Einstellungen verteilt, setzen Sie die Schlüssel an beiden Orten: Verwaltete Einstellungsquellen [werden nicht zusammengeführt](https://code.claude.com/docs/de/server-managed-settings.md#settings-precedence), und zwischengespeicherte serverseitig verwaltete Einstellungen ersetzen die geräteverwaltete Datei, mit Ausnahme von einigen [pro-Schlüssel-Ausnahmen](https://code.claude.com/docs/de/server-managed-settings.md#per-key-exceptions-across-managed-sources). `forceLoginOrgUUID` und die `"claudeai"`- und `"console"`-Werte von `forceLoginMethod` sind nicht unter diesen Ausnahmen, daher behalten Sie sie an beiden Orten.186Stellen Sie `forceLoginMethod` und `forceLoginOrgUUID` über Ihre Geräteverwaltungstools bereit. Ein Entwickler erhält [serverseitig verwaltete Einstellungen](https://code.claude.com/docs/de/server-managed-settings.md) erst nach der Authentifizierung bei Ihrer Organisation, daher können Sie eine erste Anmeldung mit diesen Einstellungen nicht umleiten. Wenn Sie auch serverseitig verwaltete Einstellungen über claude.ai verteilen, setzen Sie beide Schlüssel auch dort, bis jeder Client v2.1.299 oder später ausführt. Wo Sie die Schlüssel danach setzen und welcher Quelle Wert gilt, erfahren Sie unter [Welche verwaltete Quelle Anmeldeschlüssel liefert](https://code.claude.com/docs/de/managed-settings.md#which-managed-source-supplies-login-keys).

176 187 

177In einer [Gateway](https://code.claude.com/docs/de/claude-apps-gateway)-Bereitstellung lassen Sie `forceLoginMethod` und `forceLoginOrgUUID` außerdem aus den [Einstellungen, die das Gateway bereitstellt](https://code.claude.com/docs/de/claude-apps-gateway-config.md#managed), heraus.188In einer [Gateway](https://code.claude.com/docs/de/claude-apps-gateway)-Bereitstellung lassen Sie `forceLoginMethod` und `forceLoginOrgUUID` außerdem aus den [Einstellungen, die das Gateway bereitstellt](https://code.claude.com/docs/de/claude-apps-gateway-config.md#managed), heraus.

178 189 

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# Gebühren für Klassifikator-Anfragen im Auto-Modus5# Abrechnung der Klassifikator-Anfragen im Auto-Modus

6 6 

7> Beheben Sie die Claude Code-Benachrichtigung, dass diese Sitzung nicht für gebührenfreie Klassifikator-Anfragen im Auto-Modus berechtigt ist: Was sie bedeutet, warum sie angezeigt wird und was Sie tun können.7> Beheben Sie den Claude Code-Hinweis, dass diese Sitzung nicht für kostenlose Klassifikator-Anfragen im Auto-Modus berechtigt ist: was er bedeutet, warum er erscheint und was zu tun ist.

8 8 

9Im [Auto-Modus](https://code.claude.com/docs/de/permission-modes.md#eliminate-prompts-with-auto-mode) führt ein Classifier Aktionen wie Shell-Befehle und Netzwerkanfragen vor ihrer Ausführung durch. Überall dort, wo [serverseitige Prüfungen aktiviert sind](https://code.claude.com/docs/de/permission-modes.md#server-side-classifier-review), führt der Server diese Prüfungen als Teil der eigenen Modellanfragen der Sitzung durch, ohne Gebühren. Diese Benachrichtigung bedeutet, dass die Prüfungen des Servers Ihre Sitzung nicht erreichen, daher erstellt Claude Code stattdessen eigene Classifier-Anfragen, und auf Ihrem Konto werden diese Anfragen auf Ihre Token-Nutzung angerechnet:9Im [Auto-Modus](https://code.claude.com/docs/de/permission-modes.md#eliminate-prompts-with-auto-mode) prüft ein Klassifikator Aktionen wie Shell-Befehle und Netzwerkanfragen, bevor sie ausgeführt werden. Überall dort, wo [serverseitige Prüfungen aktiviert sind](https://code.claude.com/docs/de/permission-modes.md#server-side-classifier-review), führt der Server diese Prüfungen im Rahmen der eigenen Modellanfragen der Sitzung kostenlos durch. Dieser Hinweis bedeutet, dass die Prüfungen des Servers Ihre Sitzung nicht erreichen, sodass Claude Code stattdessen eigene Klassifikator-Anfragen stellt, und bei Ihrem Konto werden diese Anfragen auf Ihre Token-Nutzung angerechnet:

10 10 

11```text theme={null}11```text theme={null}

12We're changing auto mode to no longer charge for classifier requests in Claude Code. However, this session isn't eligible.12We're changing auto mode to no longer charge for classifier requests in Claude Code. However, this session isn't eligible.

13```13```

14 14 

15An der Eingabeaufforderung hält Claude Code die erste Aktion, die es auf diese Weise prüfen würde, an, bis Sie antworten. Der Auto-Modus funktioniert weiterhin, und seine Klassifikator-Anfragen werden wie zuvor in Rechnung gestellt.15Bei dieser Abfrage hält Claude Code die erste Aktion, die es auf diese Weise prüfen würde, zurück, bis Sie antworten. Der Auto-Modus funktioniert weiterhin, und seine Klassifikator-Anfragen werden wie bisher abgerechnet.

16 16 

17Die häufigste Ursache ist ein LLM-Gateway oder Proxy zwischen Claude Code und der API, und wenn Claude Code einen identifizieren kann, benennt die Benachrichtigung ihn. Drücken Sie **Eingabe**, um fortzufahren, oder siehe [Machen Sie die Sitzung berechtigt](#make-the-session-eligible), um zu verhindern, dass sie in neuen Sitzungen angezeigt wird.17Die häufigste Ursache ist ein LLM-Gateway oder Proxy zwischen Claude Code und der API, und wenn Claude Code einen solchen erkennen kann, wird er im Hinweis genannt. Drücken Sie **Enter**, um fortzufahren, oder lesen Sie [Die Sitzung berechtigt machen](#make-the-session-eligible), um zu verhindern, dass der Hinweis in neuen Sitzungen erscheint.

18 18 

19## Auf die Benachrichtigung antworten19## Auf den Hinweis reagieren

20 20 

21Die Benachrichtigung hält die Aktion an, bis Sie sie beantworten:21Der Hinweis hält die Aktion zurück, bis Sie darauf antworten:

22 22 

23* **Eingabe** setzt fort: Die gehaltene Aktion und der Rest der Sitzung verwenden Claude Codes eigene Classifier-Anfragen, die wie zuvor als Token-Nutzung abgerechnet werden, und die Benachrichtigung wird in dieser Sitzung nicht erneut angezeigt. Wenn die Benachrichtigung ein Gateway benannt hat, verhindert die Bestätigung, dass sie auf diesem Computer 24 Stunden lang erneut angezeigt wird. Wenn nicht, wird die Benachrichtigung beim nächsten Fallback einer Sitzung erneut angezeigt.23* **Enter** fährt fort: Die zurückgehaltene Aktion und der Rest der Sitzung verwenden die eigenen Klassifikator-Anfragen von Claude Code, die wie bisher als Token-Nutzung abgerechnet werden, und der Hinweis erscheint in dieser Sitzung nicht erneut. Wenn der Hinweis ein Gateway genannt hat, verhindert eine Bestätigung, dass er auf diesem Rechner 24 Stunden lang erneut erscheint. Wenn nicht, erscheint der Hinweis wieder, sobald eine Sitzung das nächste Mal auf diesen Fallback zurückgreift.

24* **Esc** oder **Strg+C** bricht ab: Die gehaltene Aktion wird nicht ausgeführt und der aktuelle Zug stoppt, wobei die Sitzung noch im Auto-Modus ist. Nichts wird gespeichert, daher wird die Benachrichtigung erneut angezeigt, bevor die nächste überprüfte Aktion ausgeführt wird.24* **Esc** oder **Ctrl+C** bricht ab: Die zurückgehaltene Aktion wird nicht ausgeführt und der aktuelle Turn wird beendet, wobei die Sitzung im Auto-Modus bleibt. Nichts wird gespeichert, sodass der Hinweis vor der nächsten geprüften Aktion erneut erscheint.

25 25 

26Um stattdessen den Auto-Modus zu beenden, wechseln Sie die Berechtigungsmodi mit `Shift+Tab`, nachdem Sie geantwortet haben.26Um den Auto-Modus stattdessen nicht mehr zu verwenden, wechseln Sie nach Ihrer Antwort mit `Shift+Tab` den Berechtigungsmodus.

27 27 

28Wenn die Benachrichtigung nicht auf eine Antwort warten kann, meldet Claude Code denselben Text und die Sitzung wird im Auto-Modus fortgesetzt, es sei denn, eine Gateway-Bestätigung auf diesem Computer in den letzten 24 Stunden hat sie verworfen. Im [nicht-interaktiven Modus](https://code.claude.com/docs/de/headless.md) mit `-p` wird der Text auf stderr ausgegeben, und in der `stream-json`-Ausgabe wird eine `system`-Warnmeldung ausgegeben, die Agent SDK-Anwendungen aus dem Nachrichtenstrom lesen können.28Wo der Hinweis nicht auf eine Antwort warten kann, meldet Claude Code denselben Text und die Sitzung wird im Auto-Modus fortgesetzt, es sei denn, eine Gateway-Bestätigung auf diesem Rechner innerhalb der letzten 24 Stunden hat ihn ausgeblendet. Im [nicht interaktiven Modus](https://code.claude.com/docs/de/headless.md) mit `-p` wird der Text auf stderr ausgegeben, und bei `stream-json`-Ausgabe wird eine `system`-Warnmeldung ausgegeben, die Agent SDK-Anwendungen aus dem Nachrichtenstrom lesen können.

29 29 

30## Machen Sie die Sitzung berechtigt30## Machen Sie die Sitzung berechtigt

31 31 

Details

157 157 

158## Umgebungseinträge mit `/auto-mode-setup` generieren158## Umgebungseinträge mit `/auto-mode-setup` generieren

159 159 

160Führen Sie `/auto-mode-setup` aus, damit Claude Code `autoMode.environment`-Einträge und manchmal auch [Regeleinträge](#override-the-block-and-allow-rules) aus Ihrem Projekt und Ihren letzten Sitzungen darin entwirft. Wenn Sie den Entwurf akzeptieren, schreibt Claude Code ihn in `~/.claude/settings.json`.160Führen Sie `/auto-mode-setup` aus, damit Claude Code anhand Ihres Projekts und Ihrer letzten Sitzungen darin Einträge für `autoMode.environment` und manchmal auch [Regeleinträge](#override-the-block-and-allow-rules) entwirft. Wenn Sie den Entwurf annehmen, schreibt Claude Code ihn in `~/.claude/settings.json`.

161 161 

162> [!NOTE]162> [!NOTE]

163>163>

164> `/auto-mode-setup` ist in den Plänen Pro, Max, Team und Enterprise sowie mit einem Claude Console API-Schlüssel verfügbar. Bei einem Pro-, Max- oder Team-Plan benötigen Sie v2.1.228 oder später bzw. unter nativem Windows v2.1.233 oder später. Bei einem Enterprise-Plan oder mit einem Claude Console API-Schlüssel benötigen Sie v2.1.283 oder später. Wenn der Befehl in Ihrer Sitzung fehlt, lesen Sie [`/auto-mode-setup` gibt „Unknown command“ zurück](#auto-mode-setup-returns-unknown-command).164> `/auto-mode-setup` ist in den Pro-, Max-, Team- und Enterprise-Plänen sowie mit einem Claude Console API-Schlüssel verfügbar. Mit einem Pro-, Max- oder Team-Plan benötigen Sie v2.1.228 oder höher bzw. v2.1.233 oder höher unter nativem Windows. Mit einem Enterprise-Plan oder einem Claude Console API-Schlüssel benötigen Sie v2.1.283 oder höher. Wenn der Befehl in Ihrer Sitzung fehlt, lesen Sie [`/auto-mode-setup` gibt „Unknown command“ zurück](#auto-mode-setup-returns-unknown-command).

165 165 

166### Was `/auto-mode-setup` liest166### Was `/auto-mode-setup` liest

167 167 

168Wenn `~/.claude/settings.json` bereits `autoMode`-Einträge enthält, fragt Claude Code zunächst, ob Sie Ihre Umgebungsliste erweitern oder ersetzen möchten, und behält die von Ihnen geschriebenen Regeln in jedem Fall bei. Claude Code fragt dann, wie Sie dieses Projekt nutzen, und bietet zwei optionale Scans an, bevor es etwas scannt. Beim Scan liest Claude Code immer diese Quellen:168Wenn `~/.claude/settings.json` bereits `autoMode`-Einträge enthält, fragt Claude Code zunächst, ob Ihre Umgebungsliste ergänzt oder ersetzt werden soll, und behält die von Ihnen geschriebenen Regeln in jedem Fall bei. Anschließend fragt Claude Code, wie Sie dieses Projekt nutzen, und bietet zwei optionale Scans an, bevor überhaupt etwas gescannt wird. Beim Scan liest Claude Code immer diese Quellen:

169 169 

170* Die `CLAUDE.md`, `README.md`, Konfigurationsdateien und Git-Remotes dieses Projekts170* Die Dateien `CLAUDE.md` und `README.md`, Konfigurationsdateien und Git-Remotes dieses Projekts

171* Ihre `autoMode`- und `permissions.allow`-Einstellungen171* Ihre Einstellungen `autoMode` und `permissions.allow`

172* Die Hosts, Buckets und Befehlsnamen aus den Befehlen, die Claude in Ihren letzten Sitzungen in diesem Projekt ausgeführt hat, niemals Ihre Nachrichten172* Die Hosts, Buckets und Befehlsnamen aus den Befehlen, die Claude in Ihren letzten Sitzungen in diesem Projekt ausgeführt hat, niemals Ihre Nachrichten

173 173 

174Die zwei optionalen Scans fügen jeweils eine Quelle hinzu:174Die beiden optionalen Scans fügen jeweils eine Quelle hinzu:

175 175 

176* Das erste Wort jedes Befehls in Ihrem Shell-Verlauf176* Das erste Wort jedes Befehls in Ihrem Shell-Verlauf

177* Die Remote-Hosts und Namen der Repositories unter Ihrem Home-Verzeichnis177* Die Remote-Hosts und Namen der Repositorys unter Ihrem Home-Verzeichnis

178 178 

179### Entwurf überprüfen und speichern179### Den Entwurf prüfen und speichern

180 180 

181Claude Code scannt im Hintergrund und zeigt Ihnen dann den Entwurf. Sie akzeptieren oder verwerfen ihn als Ganzes, daher bearbeiten Sie `~/.claude/settings.json` danach, um einzelne Einträge anzupassen. Wenn Sie akzeptieren, schreibt Claude Code den Entwurf und gleicht ihn mit den Einstellungen ab, die Sie bereits haben:181Claude Code scannt im Hintergrund und zeigt Ihnen dann den Entwurf. Sie nehmen ihn als Ganzes an oder verwerfen ihn. Bearbeiten Sie daher anschließend `~/.claude/settings.json`, um einzelne Einträge anzupassen. Wenn Sie annehmen, schreibt Claude Code den Entwurf und gleicht ihn mit Ihren vorhandenen Einstellungen ab:

182 182 

183* Claude Code schreibt die `environment`-Liste ohne `"$defaults"`, da der Entwurf die integrierten Einträge aufzählt, die unverändert geblieben sind183* Claude Code schreibt die Liste `environment` ohne `"$defaults"`, da der Entwurf die integrierten Einträge, die er unverändert gelassen hat, ausdrücklich aufführt

184* Claude Code fügt `"$defaults"` in jede der `allow`-, `soft_deny`- und `hard_deny`-Listen ein, zu denen der Entwurf Einträge hinzufügt, es sei denn, Sie haben bereits eine `allow`-Liste ohne sie geschrieben, damit die [integrierten Regeln](#override-the-block-and-allow-rules), die Sie nicht ersetzt haben, weiterhin gelten184* Claude Code fügt `"$defaults"` in jede der Listen `allow`, `soft_deny` und `hard_deny` ein, zu denen der Entwurf Einträge hinzufügt, es sei denn, Sie haben bereits eine `allow`-Liste ohne diesen Eintrag geschrieben. So bleiben die [integrierten Regeln](#override-the-block-and-allow-rules), die Sie nicht ersetzt haben, wirksam

185* Nach dem Speichern bietet Claude Code an, `permissions.allow`-Regeln in `~/.claude/settings.json` zu entfernen, die der Auto-Modus ignoriert, wie `Bash(*)`, oder die destruktive Befehle automatisch genehmigen185* Nach dem Speichern bietet Claude Code an, `permissions.allow`-Regeln in `~/.claude/settings.json` zu entfernen, die der Auto-Modus ignoriert, wie etwa `Bash(*)`, oder die destruktive Befehle automatisch genehmigen

186 186 

187Führen Sie dann `claude auto-mode config` aus, um [das effektive Ergebnis zu sehen](#inspect-the-defaults-and-your-effective-config).187Führen Sie dann `claude auto-mode config` aus, um [das wirksame Ergebnis anzuzeigen](#inspect-the-defaults-and-your-effective-config).

188 188 

189### `/auto-mode-setup` ausschalten189### `/auto-mode-setup` ausschalten

190 190 

191Sobald der Auto-Modus mehrere Aktionen blockiert hat und Sie immer noch keine `autoMode.environment`-Einträge haben, zeigt Claude Code am Ende einer Runde ein Dialogfeld mit dem Titel „Auto-Modus über Ihre Umgebung unterrichten?“ an und bietet an, `/auto-mode-setup` für Sie auszuführen. Um das Angebot zu stoppen, aber den Befehl zu behalten, wählen Sie **Nicht mehr anzeigen** in diesem Dialogfeld.191Sobald der Auto-Modus mehrere Aktionen blockiert hat und Sie noch keine `autoMode.environment`-Einträge haben, zeigt Claude Code am Ende eines Turns einen Dialog mit dem Titel „Teach auto mode about your environment?“ an und bietet an, `/auto-mode-setup` für Sie auszuführen. Um das Angebot zu unterbinden, den Befehl aber zu behalten, wählen Sie in diesem Dialog **Don't show again**.

192 192 

193Um sowohl den Befehl als auch das Angebot auszuschalten, fügen Sie diesen [`skillOverrides`](https://code.claude.com/docs/de/skills#override-skill-visibility-from-settings)-Eintrag zu `~/.claude/settings.json` hinzu:193Um sowohl den Befehl als auch das Angebot auszuschalten, fügen Sie diesen [`skillOverrides`](https://code.claude.com/docs/de/skills#override-skill-visibility-from-settings)-Eintrag zu `~/.claude/settings.json` hinzu:

194 194 


200}200}

201```201```

202 202 

203`/auto-mode-setup` ist ein integrierter Befehl und keine [gebündelte Skill](https://code.claude.com/docs/de/skills.md#bundled-skills), daher gilt dieser `skillOverrides`-Eintrag immer noch dafür, aber [`disableBundledSkills`](https://code.claude.com/docs/de/settings-reference#disablebundledskills) schaltet ihn nicht aus.203`/auto-mode-setup` ist ein integrierter Befehl und kein [mitgelieferter Skill](https://code.claude.com/docs/de/skills.md#bundled-skills). Dieser `skillOverrides`-Eintrag gilt daher trotzdem dafür, [`disableBundledSkills`](https://code.claude.com/docs/de/settings-reference#disablebundledskills) schaltet ihn jedoch nicht aus.

204 204 

205### `/auto-mode-setup` gibt „Unknown command“ zurück205### `/auto-mode-setup` gibt „Unknown command“ zurück

206 206 

207Wenn die Eingabe von `/auto-mode-setup` im Claude Code-Prompt `Unknown command: /auto-mode-setup` ausgibt, prüfen Sie diese Ursachen:207Wenn die Eingabe von `/auto-mode-setup` im Claude Code-Prompt `Unknown command: /auto-mode-setup` ausgibt, prüfen Sie diese Ursachen:

208 208 

209* **Erste Sitzung nach einer Installation oder einem Upgrade**: Starten Sie eine neue Sitzung. Wenn der Befehl dort immer noch fehlt, lesen Sie die [Konfigurationen, in denen auch spätere Sitzungen ohne ihn starten](https://code.claude.com/docs/de/env-vars.md#first-session-after-an-install-or-upgrade).209* **Erste Sitzung nach einer Installation oder einem Upgrade**: Starten Sie eine neue Sitzung. Wenn der Befehl dort weiterhin fehlt, lesen Sie über die [Konfigurationen, in denen auch spätere Sitzungen ohne ihn starten](https://code.claude.com/docs/de/env-vars.md#first-session-after-an-install-or-upgrade).

210* **Veraltete Version**: Führen Sie `claude --version` in Ihrer Shell aus. Wenn die Version unter [dem Minimum für Ihren Plan](#generate-environment-entries) liegt, [aktualisieren Sie Claude Code](https://code.claude.com/docs/de/setup.md#update-claude-code).210* **Veraltete Version**: Führen Sie `claude --version` in Ihrer Shell aus. Wenn die Version unter [dem Minimum für Ihren Plan](#generate-environment-entries) liegt, [aktualisieren Sie Claude Code](https://code.claude.com/docs/de/setup.md#update-claude-code).

211* **Telemetrie ausgeschaltet, Drittanbieter oder Claude-Apps-Gateway**: Vor v2.1.304 ist der Befehl in [Sitzungen, in denen der Feature-Flag-Abruf ausgeschaltet ist](https://code.claude.com/docs/de/env-vars.md#features-that-need-feature-flag-fetching), nicht verfügbar. Wenn Ihre Sitzung dazu gehört, [aktualisieren Sie Claude Code](https://code.claude.com/docs/de/setup.md#update-claude-code) auf v2.1.304 oder später.211* **Telemetrie aus, Drittanbieter oder Claude Apps-Gateway**: Vor v2.1.304 ist der Befehl in [Sitzungen, in denen das Abrufen von Feature-Flags deaktiviert ist](https://code.claude.com/docs/de/env-vars.md#features-that-need-feature-flag-fetching), nicht verfügbar. Wenn Ihre Sitzung dazu gehört, [aktualisieren Sie Claude Code](https://code.claude.com/docs/de/setup.md#update-claude-code) auf v2.1.304 oder höher.

212 212 

213In einer [Cloud-Sitzung](https://code.claude.com/docs/de/claude-code-on-the-web.md) gibt der Befehl stattdessen `/auto-mode-setup isn't available in this environment.` aus. Führen Sie ihn in einer interaktiven Sitzung in Ihrem Terminal aus.213In einer [Cloud-Sitzung](https://code.claude.com/docs/de/claude-code-on-the-web.md) gibt der Befehl stattdessen `/auto-mode-setup isn't available in this environment.` aus. Führen Sie ihn in einer interaktiven Sitzung in Ihrem Terminal aus.

214 214 

champion-kit.md +22 −22

Details

41 41 

42Beispiele für wiederverwendbare Techniken:42Beispiele für wiederverwendbare Techniken:

43 43 

44* „Ich habe gelernt, dass das @-Erwähnen eines Verzeichnisses funktioniert. Wenn ich es auf `@src/components/` zeige und frage, welche Tests fehlen, werden zwei angezeigt, die ich übersehen hatte."44* „Ich habe gelernt, dass das @-Erwähnen eines Verzeichnisses funktioniert. Wenn ich es auf `@src/components/` zeige und frage, welche Tests fehlen, werden zwei angezeigt, die ich übersehen hatte.“

45* „Der Plan-Modus (`Shift+Tab`) stellt zuerst die vorgeschlagenen Änderungen dar, weshalb ich mich wohlfühle, ihn auf gemeinsamen Code anzuwenden."45* „Der Plan-Modus (`Shift+Tab`) stellt zuerst die vorgeschlagenen Änderungen dar, weshalb ich mich wohlfühle, ihn auf gemeinsamen Code anzuwenden.“

46* „Ich habe einen Stop-Hook konfiguriert, damit ich eine Desktop-Benachrichtigung erhalte, wenn eine lange Aufgabe abgeschlossen ist. Die Konfiguration ist im Thread."46* „Ich habe einen Stop-Hook konfiguriert, damit ich eine Desktop-Benachrichtigung erhalte, wenn eine lange Aufgabe abgeschlossen ist. Die Konfiguration ist im Thread.“

47* „Das Ausführen von `/init` generiert eine `CLAUDE.md` aus dem Repository, damit der Assistent nicht mehr nach unseren Konventionen fragt."47* „Das Ausführen von `/init` generiert eine `CLAUDE.md` aus dem Repository, damit der Assistent nicht mehr nach unseren Konventionen fragt.“

48 48 

49### Wo man es teilt49### Wo man es teilt

50 50 


52 52 

53| Ort | Am besten geeignet für | Empfohlenes Format |53| Ort | Am besten geeignet für | Empfohlenes Format |

54| - | - | - |54| - | - | - |

55| Ein `#claude-code`- oder allgemeiner Engineering-Kanal | Entdeckungen, Prompts und „heute habe ich gelernt"-Momente | Ein Screenshot mit ein oder zwei Sätzen Kontext |55| Ein `#claude-code`- oder allgemeiner Engineering-Kanal | Entdeckungen, Prompts und „heute habe ich gelernt“-Momente | Ein Screenshot mit ein oder zwei Sätzen Kontext |

56| Pull-Request-Beschreibungen | Demonstration des Ansatzes auf echtem Code, den Reviewer bereits lesen | Ein einzelner Satz wie „Claude und ich haben dieses Refactoring durchgeführt; ich stelle gerne den Ansatz vor." |56| Pull-Request-Beschreibungen | Demonstration des Ansatzes auf echtem Code, den Reviewer bereits lesen | Ein einzelner Satz wie „Claude und ich haben dieses Refactoring durchgeführt; ich stelle gerne den Ansatz vor.“ |

57| Standups oder wöchentliche schriftliche Updates | Normalisierung der Nutzung mit Vorgesetzten und Skip-Level-Managern | Ein Satz, der ein konkretes Ergebnis beschreibt |57| Standups oder wöchentliche schriftliche Updates | Normalisierung der Nutzung mit Vorgesetzten und Skip-Level-Managern | Ein Satz, der ein konkretes Ergebnis beschreibt |

58| Team-Wiki oder interne Dokumentation | Dauerhafte Muster, benutzerdefinierte Skills und `CLAUDE.md`-Beispiele | Eine kurze Seite, verlinkt vom Kanal-Thema, damit sie auffindbar bleibt |58| Team-Wiki oder interne Dokumentation | Dauerhafte Muster, benutzerdefinierte Skills und `CLAUDE.md`-Beispiele | Eine kurze Seite, verlinkt vom Kanal-Thema, damit sie auffindbar bleibt |

59 59 


97 97 

98### Zeigen Sie auf die Funktion statt auf die Dokumentation98### Zeigen Sie auf die Funktion statt auf die Dokumentation

99 99 

100Eine Antwort wie „Versuchen Sie Plan Mode, drücken Sie `Shift+Tab`, bis Sie ihn sehen" ist im Moment nützlicher als ein Link zur Dokumentation. Wenn die Person später mehr Tiefe braucht, wird sie sie selbst finden; jetzt brauchen sie das eine, das sie freischaltet.100Eine Antwort wie „Versuchen Sie Plan Mode, drücken Sie `Shift+Tab`, bis Sie ihn sehen“ ist im Moment nützlicher als ein Link zur Dokumentation. Wenn die Person später mehr Tiefe braucht, wird sie sie selbst finden; jetzt brauchen sie das eine, das sie freischaltet.

101 101 

102### Fragen, die Sie wahrscheinlich hören werden102### Fragen, die Sie wahrscheinlich hören werden

103 103 

104| Frage | Vorgeschlagene Antwort | Nachschlageressource |104| Frage | Vorgeschlagene Antwort | Nachschlageressource |

105| - | - | - |105| - | - | - |

106| „Womit sollte ich es zuerst versuchen?" | Empfehlen Sie eine echte, aber begrenzte Aufgabe, idealerweise einen Bug oder eine Aufgabe, die die Person aufgeschoben hat, weil sie mühsam ist, nicht schwierig. | [Häufige Workflows](https://code.claude.com/docs/de/common-workflows.md) |106| „Womit sollte ich es zuerst versuchen?“ | Empfehlen Sie eine echte, aber begrenzte Aufgabe, idealerweise einen Bug oder eine Aufgabe, die die Person aufgeschoben hat, weil sie mühsam ist, nicht schwierig. | [Häufige Workflows](https://code.claude.com/docs/de/common-workflows.md) |

107| „Wie kann ich ihm meinen Code anvertrauen?" | Stellen Sie den Plan-Modus vor: Durch Drücken von `Shift+Tab` wechseln Sie in diesen Modus, und Claude recherchiert und schlägt Änderungen vor, ohne Ihren Quellcode zu bearbeiten. | [Berechtigungen](https://code.claude.com/docs/de/permissions.md) |107| „Wie kann ich ihm meinen Code anvertrauen?“ | Stellen Sie den Plan-Modus vor: Durch Drücken von `Shift+Tab` wechseln Sie in diesen Modus, und Claude recherchiert und schlägt Änderungen vor, ohne Ihren Quellcode zu bearbeiten. | [Berechtigungen](https://code.claude.com/docs/de/permissions.md) |

108| „Lohnt sich der Einrichtungsaufwand?" | Die Installation dauert etwa zwei Minuten, läuft im Terminal und erfordert keine IDE-Erweiterung. Das einmalige Ausführen von `/init` reicht aus, um zu beginnen. | [Quickstart](https://code.claude.com/docs/de/quickstart.md) |108| „Lohnt sich der Einrichtungsaufwand?“ | Die Installation dauert etwa zwei Minuten, läuft im Terminal und erfordert keine IDE-Erweiterung. Das einmalige Ausführen von `/init` reicht aus, um zu beginnen. | [Quickstart](https://code.claude.com/docs/de/quickstart.md) |

109| „Es hat ein falsches Ergebnis produziert." | Ermutigen Sie sie, den Fehler an Claude zurückzugeben. Das Einfügen der Fehlermeldung oder des fehlgeschlagenen Tests ist viel effektiver als die Umformulierung der ursprünglichen Anfrage. | [Häufige Workflows](https://code.claude.com/docs/de/common-workflows.md) |109| „Es hat ein falsches Ergebnis produziert.“ | Ermutigen Sie sie, den Fehler an Claude zurückzugeben. Das Einfügen der Fehlermeldung oder des fehlgeschlagenen Tests ist viel effektiver als die Umformulierung der ursprünglichen Anfrage. | [Häufige Workflows](https://code.claude.com/docs/de/common-workflows.md) |

110| „Es versteht unsere Codebase-Konventionen nicht." | Schlagen Sie vor, `/init` auszuführen, um eine `CLAUDE.md`-Datei zu generieren, und fügen Sie dann die Konventionen des Teams, Testbefehle und alle Verzeichnisse hinzu, die vermieden werden sollten. | [Memory](https://code.claude.com/docs/de/memory.md) |110| „Es versteht unsere Codebase-Konventionen nicht.“ | Schlagen Sie vor, `/init` auszuführen, um eine `CLAUDE.md`-Datei zu generieren, und fügen Sie dann die Konventionen des Teams, Testbefehle und alle Verzeichnisse hinzu, die vermieden werden sollten. | [Memory](https://code.claude.com/docs/de/memory.md) |

111| „Ist das nur Autovervollständigung?" | Bieten Sie eine kurze Demonstration an, in der Claude eine unbekannte Datei erklärt, einen Bug über Services hinweg verfolgt oder einen Migrationsplan entwirft. Diese Aufgaben erfordern Überlegungen über das Repository hinweg, nicht das Vervollständigen einer einzelnen Zeile. | Eine zweiminütige Live-Demonstration |111| „Ist das nur Autovervollständigung?“ | Bieten Sie eine kurze Demonstration an, in der Claude eine unbekannte Datei erklärt, einen Bug über Services hinweg verfolgt oder einen Migrationsplan entwirft. Diese Aufgaben erfordern Überlegungen über das Repository hinweg, nicht das Vervollständigen einer einzelnen Zeile. | Eine zweiminütige Live-Demonstration |

112| „Was ist mit Sicherheit und Datenbehandlung?" | Verweisen Sie diese Frage an Ihren Administrator. Die Bereitstellungs- und Datenbehandlungsrichtlinie Ihrer Organisation ist bereits konfiguriert, und Champions sollten diese Antwort nicht improvisieren. | [Sicherheit](https://code.claude.com/docs/de/security.md) · [Datennutzung](https://code.claude.com/docs/de/data-usage.md) |112| „Was ist mit Sicherheit und Datenbehandlung?“ | Verweisen Sie diese Frage an Ihren Administrator. Die Bereitstellungs- und Datenbehandlungsrichtlinie Ihrer Organisation ist bereits konfiguriert, und Champions sollten diese Antwort nicht improvisieren. | [Sicherheit](https://code.claude.com/docs/de/security.md) · [Datennutzung](https://code.claude.com/docs/de/data-usage.md) |

113 113 

114## Erweitern Sie den Kreis114## Erweitern Sie den Kreis

115 115 


120| Muster | Wie man es ausführt | Erforderlicher Aufwand |120| Muster | Wie man es ausführt | Erforderlicher Aufwand |

121| - | - | - |121| - | - | - |

122| Ein dedizierter Kanal | Erstellen Sie einen `#claude-code`-Kanal (oder einen wiederkehrenden Thread in einem bestehenden), heften Sie den [Quickstart](https://code.claude.com/docs/de/quickstart.md)-Link und ein starkes Beispiel an, und beantworten Sie Fragen öffentlich, damit jede Antwort jedem, der zuschaut, zugute kommt. | Etwa fünf Minuten zum Einrichten, dann ambient |122| Ein dedizierter Kanal | Erstellen Sie einen `#claude-code`-Kanal (oder einen wiederkehrenden Thread in einem bestehenden), heften Sie den [Quickstart](https://code.claude.com/docs/de/quickstart.md)-Link und ein starkes Beispiel an, und beantworten Sie Fragen öffentlich, damit jede Antwort jedem, der zuschaut, zugute kommt. | Etwa fünf Minuten zum Einrichten, dann ambient |

123| Ein wöchentlicher Show-and-Tell-Thread | Jeden Freitag posten Sie „Womit hat Claude dir diese Woche geholfen?" Keine Vorbereitung, Folien oder Meetings erforderlich; Screenshots und kurze Beschreibungen reichen aus. | Etwa zwei Minuten pro Woche |123| Ein wöchentlicher Show-and-Tell-Thread | Jeden Freitag posten Sie „Womit hat Claude dir diese Woche geholfen?“ Keine Vorbereitung, Folien oder Meetings erforderlich; Screenshots und kurze Beschreibungen reichen aus. | Etwa zwei Minuten pro Woche |

124| Teilen Sie einen benutzerdefinierten Skill | Posten Sie Ihre nützlichste `.claude/skills/<name>/SKILL.md`-Datei, z. B. einen `/ship`-Skill, der Tests und Lint vor dem Commit ausführt, mit einer einzeiligen Beschreibung. Da Skills einfaches Markdown sind, können Kollegen sie sofort übernehmen. | Etwa fünf Minuten pro Skill |124| Teilen Sie einen benutzerdefinierten Skill | Posten Sie Ihre nützlichste `.claude/skills/<name>/SKILL.md`-Datei, z. B. einen `/ship`-Skill, der Tests und Lint vor dem Commit ausführt, mit einer einzeiligen Beschreibung. Da Skills einfaches Markdown sind, können Kollegen sie sofort übernehmen. | Etwa fünf Minuten pro Skill |

125| Generieren Sie einen Setup-Leitfaden aus Ihrer eigenen Nutzung | Führen Sie `/team-onboarding` in einem Projekt aus, in dem Sie echte Zeit verbracht haben. Claude scannt Ihre letzten Sessions, Befehle und MCP-Server und erstellt dann einen Leitfaden, den ein neuer Teamkollege als erste Nachricht einfügen kann, um Ihr Setup zu wiederholen. Heften Sie ihn im Kanal an. | Etwa zwei Minuten |125| Generieren Sie einen Setup-Leitfaden aus Ihrer eigenen Nutzung | Führen Sie `/team-onboarding` in einem Projekt aus, in dem Sie echte Zeit verbracht haben. Claude scannt Ihre letzten Sessions, Befehle und MCP-Server und erstellt dann einen Leitfaden, den ein neuer Teamkollege als erste Nachricht einfügen kann, um Ihr Setup zu wiederholen. Heften Sie ihn im Kanal an. | Etwa zwei Minuten |

126| Pairing bei einer ersten Aufgabe | Bieten Sie eine einzelne fünfzehnminütige Pairing-Sitzung für jeden an, der anfängt. Ein erfolgreicher Ergebnis auf ihrem eigenen Code ist überzeugender als jede Präsentation. | Etwa fünfzehn Minuten pro Person |126| Pairing bei einer ersten Aufgabe | Bieten Sie eine einzelne fünfzehnminütige Pairing-Sitzung für jeden an, der anfängt. Ein erfolgreicher Ergebnis auf ihrem eigenen Code ist überzeugender als jede Präsentation. | Etwa fünfzehn Minuten pro Person |


156 156 

157### Wenn jemand tiefer gehen möchte157### Wenn jemand tiefer gehen möchte

158 158 

159Sie sind die warme Einführung, nicht das Onboarding-Programm. Wenn ein Kollege von „sollte ich das versuchen" zu „wie werde ich damit effektiv" übergeht, verweisen Sie ihn auf die Seiten [Quickstart](https://code.claude.com/docs/de/quickstart.md) und [Häufige Workflows](https://code.claude.com/docs/de/common-workflows.md). Sie enthalten kurze Abschnitte, die die Funktionen abdecken, die wirklich nützlich sind, aber schwer zu entdecken sind.159Sie sind die warme Einführung, nicht das Onboarding-Programm. Wenn ein Kollege von „sollte ich das versuchen“ zu „wie werde ich damit effektiv“ übergeht, verweisen Sie ihn auf die Seiten [Quickstart](https://code.claude.com/docs/de/quickstart.md) und [Häufige Workflows](https://code.claude.com/docs/de/common-workflows.md). Sie enthalten kurze Abschnitte, die die Funktionen abdecken, die wirklich nützlich sind, aber schwer zu entdecken sind.

160 160 

161## Reagieren Sie auf häufige Bedenken161## Reagieren Sie auf häufige Bedenken

162 162 


164 164 

165| Bedenken | Vorgeschlagene Antwort | Zu bietender Beweis |165| Bedenken | Vorgeschlagene Antwort | Zu bietender Beweis |

166| - | - | - |166| - | - | - |

167| „Ich bin schneller ohne es." | Das ist wahrscheinlich wahr für Code, den die Person routinemäßig schreibt. Schlagen Sie vor, es auf die Arbeit zu versuchen, die sie tendenziell vermeiden: Legacy-Dateien, unbekannte Services oder Test-Gerüste, wo es am meisten hilft. | Zeitlich eine mühsame Aufgabe auf beide Arten und vergleichen Sie. |167| „Ich bin schneller ohne es.“ | Das ist wahrscheinlich wahr für Code, den die Person routinemäßig schreibt. Schlagen Sie vor, es auf die Arbeit zu versuchen, die sie tendenziell vermeiden: Legacy-Dateien, unbekannte Services oder Test-Gerüste, wo es am meisten hilft. | Zeitlich eine mühsame Aufgabe auf beide Arten und vergleichen Sie. |

168| „Ich vertraue KI nicht, Production-Code zu berühren." | Stimmen Sie zu, dass keine Änderung ungelesen landen sollte. Schlagen Sie den Plan-Modus vor, um die vorgeschlagenen Änderungen zuerst zu sehen, und überprüfen Sie dann den Diff nach demselben Standard wie jeden Pull Request. | Demonstrieren Sie den Plan-Modus an einer echten Datei. |168| „Ich vertraue KI nicht, Production-Code zu berühren.“ | Stimmen Sie zu, dass keine Änderung ungelesen landen sollte. Schlagen Sie den Plan-Modus vor, um die vorgeschlagenen Änderungen zuerst zu sehen, und überprüfen Sie dann den Diff nach demselben Standard wie jeden Pull Request. | Demonstrieren Sie den Plan-Modus an einer echten Datei. |

169| „Es wird Junior-Ingenieure schwächer machen." | Wenn es gut verwendet wird, ist es ein effektiver Erklärer. Ermutigen Sie Junior-Ingenieure, Claude zu bitten, eine Datei und ihre Aufruforte zu erklären, bevor sie ihn bitten, etwas zu ändern. | Führen Sie „Erklären Sie @file und wo es aufgerufen wird" zusammen aus. |169| „Es wird Junior-Ingenieure schwächer machen.“ | Wenn es gut verwendet wird, ist es ein effektiver Erklärer. Ermutigen Sie Junior-Ingenieure, Claude zu bitten, eine Datei und ihre Aufruforte zu erklären, bevor sie ihn bitten, etwas zu ändern. | Führen Sie „Erklären Sie @file und wo es aufgerufen wird“ zusammen aus. |

170| „Ich habe es einmal versucht und es hat halluziniert." | Dies ist normalerweise ein Kontextproblem, kein Modellproblem. Das @-Erwähnen der relevanten Dateien, das Ausführen von `/init` und das Bereitstellen der tatsächlichen Fehlerausgabe lösen es normalerweise. | Führen Sie ihren ursprünglichen Prompt mit ordnungsgemäßem `@`-Kontext erneut aus. |170| „Ich habe es einmal versucht und es hat halluziniert.“ | Dies ist normalerweise ein Kontextproblem, kein Modellproblem. Das @-Erwähnen der relevanten Dateien, das Ausführen von `/init` und das Bereitstellen der tatsächlichen Fehlerausgabe lösen es normalerweise. | Führen Sie ihren ursprünglichen Prompt mit ordnungsgemäßem `@`-Kontext erneut aus. |

171| „Wir haben keine Zeit, ein anderes Tool zu lernen." | Claude Code ist ein Terminal-Befehl, kein Plattform. Wenn es in der ersten Sitzung keinen Wert zurückgibt, ist es angemessen, es beiseite zu legen. | Eine zweiminütige Installation gefolgt von einem echten Bug. |171| „Wir haben keine Zeit, ein anderes Tool zu lernen.“ | Claude Code ist ein Terminal-Befehl, kein Plattform. Wenn es in der ersten Sitzung keinen Wert zurückgibt, ist es angemessen, es beiseite zu legen. | Eine zweiminütige Installation gefolgt von einem echten Bug. |

172 172 

173## Schnellreferenz-Blatt173## Schnellreferenz-Blatt

174 174 


182| Verwenden Sie einen Workflow erneut | Speichern Sie eine `SKILL.md`-Datei in `.claude/skills/<name>/`, um einen `/name`-Skill zu erstellen, den das gesamte Team verwenden kann. Siehe [Skills](https://code.claude.com/docs/de/skills.md). |182| Verwenden Sie einen Workflow erneut | Speichern Sie eine `SKILL.md`-Datei in `.claude/skills/<name>/`, um einen `/name`-Skill zu erstellen, den das gesamte Team verwenden kann. Siehe [Skills](https://code.claude.com/docs/de/skills.md). |

183| Bleiben Sie während langer Aufgaben informiert | Konfigurieren Sie einen Stop-Hook, um eine Desktop-Benachrichtigung zu erhalten, wenn eine lange Aufgabe abgeschlossen ist. Siehe [Hooks](https://code.claude.com/docs/de/hooks-guide.md). |183| Bleiben Sie während langer Aufgaben informiert | Konfigurieren Sie einen Stop-Hook, um eine Desktop-Benachrichtigung zu erhalten, wenn eine lange Aufgabe abgeschlossen ist. Siehe [Hooks](https://code.claude.com/docs/de/hooks-guide.md). |

184| Erholen Sie sich von einem falschen Ergebnis | Anstatt die Anfrage umzuformulieren, fügen Sie den fehlgeschlagenen Test oder Stack Trace an Claude zurück und bitten Sie ihn, diesen spezifischen Fehler zu beheben. |184| Erholen Sie sich von einem falschen Ergebnis | Anstatt die Anfrage umzuformulieren, fügen Sie den fehlgeschlagenen Test oder Stack Trace an Claude zurück und bitten Sie ihn, diesen spezifischen Fehler zu beheben. |

185| Halten Sie Bearbeitungen chirurgisch | Fragen Sie nach einem Diff, oder geben Sie an „ändere nur X". Claude respektiert den Umfang, wenn der Umfang angegeben ist. |185| Halten Sie Bearbeitungen chirurgisch | Fragen Sie nach einem Diff, oder geben Sie an „ändere nur X“. Claude respektiert den Umfang, wenn der Umfang angegeben ist. |

186 186 

187> [!TIP]187> [!TIP]

188>188>

checkpointing.md +40 −40

Details

10 10 

11## Wie Checkpoints funktionieren11## Wie Checkpoints funktionieren

12 12 

13Während Sie mit Claude arbeiten, erfasst Checkpointing automatisch den Zustand Ihres Codes vor jedem Prompt, den Sie senden und der einen Turn startet.13Während Sie mit Claude arbeiten, erfasst das Checkpointing automatisch den Zustand Ihres Codes vor jedem Prompt, den Sie senden und der einen Turn startet.

14 14 

15### Automatische Verfolgung15### Automatische Nachverfolgung

16 16 

17Claude Code verfolgt alle Änderungen, die von seinen Datei-Bearbeitungswerkzeugen vorgenommen werden:17Claude Code verfolgt alle Änderungen, die durch seine Tools zur Dateibearbeitung vorgenommen werden:

18 18 

19* Jeder Prompt, den Sie senden und der einen Turn startet, erstellt einen neuen Checkpoint19* Jeder Prompt, den Sie senden und der einen Turn startet, erstellt einen neuen Checkpoint

20* Claude Code speichert Datei-Snapshots für die 100 neuesten Checkpoints in einer Sitzung. Das Verwerfen eines älteren Checkpoints löscht die Snapshot-Dateien, auf die kein verbleibender Checkpoint verweist, außer dem ersten Snapshot jeder Datei, den die VS Code-Erweiterung als Baseline für ihre Sitzungs-Diffs verwendet.20* Claude Code behält Datei-Snapshots für die 100 neuesten Checkpoints in einer Sitzung. Beim Verwerfen eines älteren Checkpoints werden die Snapshot-Dateien gelöscht, auf die kein verbleibender Checkpoint mehr verweist, mit Ausnahme des ersten Snapshots jeder Datei, den die VS Code-Erweiterung als Basis für ihre Sitzungs-Diffs verwendet.

21* Claude Code speichert Checkpoints mit der Konversation, sodass Sie `/rewind` auch nach dem Fortsetzen einer Sitzung noch ausführen können21* Claude Code speichert Checkpoints zusammen mit der Konversation, sodass Sie `/rewind` auch nach dem Fortsetzen einer Sitzung noch ausführen können

22* Claude Code löscht die Datei-Snapshots einer Sitzung im [Aufbewahrungsdurchlauf](https://code.claude.com/docs/de/claude-directory.md#cleaned-up-automatically), standardmäßig etwa 30 Tage, nachdem die Sitzung zuletzt einen gespeichert hat. Das Zurückspulen zu einem Checkpoint, dessen Snapshots weg sind, kann mit [`No files were restored`](https://code.claude.com/docs/de/errors#no-files-were-restored) fehlschlagen. Um Snapshots länger zu behalten, setzen Sie [`cleanupPeriodDays`](https://code.claude.com/docs/de/settings-reference#cleanupperioddays).22* Claude Code löscht die Datei-Snapshots einer Sitzung bei der [Aufbewahrungsbereinigung](https://code.claude.com/docs/de/claude-directory.md#cleaned-up-automatically), standardmäßig etwa 30 Tage nachdem die Sitzung zuletzt einen gespeichert hat. Das Zurückspulen zu einem Checkpoint, dessen Snapshots nicht mehr vorhanden sind, kann mit [`No files were restored`](https://code.claude.com/docs/de/errors#no-files-were-restored) fehlschlagen. Um Snapshots länger aufzubewahren, legen Sie [`cleanupPeriodDays`](https://code.claude.com/docs/de/settings-reference#cleanupperioddays) fest.

23 23 

24### Rewind und Zusammenfassung24### Zurückspulen und zusammenfassen

25 25 

26Führen Sie `/rewind` aus, oder drücken Sie `Esc` zweimal, wenn das Prompt-Eingabefeld leer ist, um das Rewind-Menü zu öffnen.26Führen Sie `/rewind` aus oder drücken Sie zweimal `Esc`, wenn das Eingabefeld leer ist, um das Rewind-Menü zu öffnen.

27 27 

28> [!NOTE]28> [!NOTE]

29>29>

30> Wenn das Prompt-Eingabefeld Text enthält, löscht doppeltes `Esc` diesen stattdessen, anstatt das Menü zu öffnen. Der gelöschte Text wird in Ihrem Eingabeverlauf gespeichert, sodass Sie `Up` drücken können, um ihn abzurufen, nachdem Sie im Rewind-Menü fertig sind.30> Wenn das Eingabefeld Text enthält, löscht zweimaliges Drücken von `Esc` diesen, anstatt das Menü zu öffnen. Der gelöschte Text wird in Ihrem Eingabeverlauf gespeichert, sodass Sie ihn mit `Up` wieder abrufen können, nachdem Sie im Rewind-Menü fertig sind.

31 31 

32Das Rewind-Menü listet die Prompts auf, die Sie während der Sitzung gesendet haben. Wählen Sie den Punkt aus, auf den Sie einwirken möchten, und wählen Sie dann eine Aktion:32Das Rewind-Menü listet die Prompts auf, die Sie während der Sitzung gesendet haben. Wählen Sie den Punkt aus, auf den Sie eine Aktion anwenden möchten, und wählen Sie dann eine Aktion:

33 33 

34* **Code und Konversation wiederherstellen**: Revert sowohl Code als auch Konversation zu diesem Punkt34* **Restore code and conversation**: Code und Konversation auf diesen Punkt zurücksetzen

35* **Konversation wiederherstellen**: Zurückspulen zu dieser Nachricht, während der aktuelle Code beibehalten wird35* **Restore conversation**: zu dieser Nachricht zurückspulen und den aktuellen Code beibehalten

36* **Code wiederherstellen**: Dateiänderungen rückgängig machen, während die Konversation beibehalten wird36* **Restore code**: Dateiänderungen rückgängig machen und die Konversation beibehalten

37* **Von hier aus zusammenfassen**: Komprimieren Sie die Konversation von diesem Punkt an in eine Zusammenfassung und geben Sie Kontextfensterplatz frei37* **Summarize from here**: die Konversation ab diesem Punkt zu einer Zusammenfassung komprimieren und so Platz im Kontextfenster freigeben

38* **Bis hier zusammenfassen**: Komprimieren Sie die Konversation vor diesem Punkt in eine Zusammenfassung und behalten Sie spätere Nachrichten bei38* **Summarize up to here**: die Konversation vor diesem Punkt zu einer Zusammenfassung komprimieren und spätere Nachrichten unverändert lassen

39* **Abbrechen**: Kehren Sie zur Nachrichtenliste zurück, ohne Änderungen vorzunehmen39* **Never mind**: ohne Änderungen zur Nachrichtenliste zurückkehren

40 40 

41Die beiden Code-Wiederherstellungsoptionen werden nur angezeigt, wenn der ausgewählte Checkpoint nachverfolgbare Dateiänderungen zum Rückgängigmachen hat. Wenn nach diesem Punkt keine Dateibearbeitungen erfasst wurden, bietet das Menü nur **Konversation wiederherstellen**, die Zusammenfassungsoptionen und **Abbrechen**.41Die beiden Optionen zum Wiederherstellen von Code erscheinen nur, wenn der ausgewählte Checkpoint nachverfolgte Dateiänderungen enthält, die rückgängig gemacht werden können. Wurden nach diesem Punkt keine Dateibearbeitungen erfasst, bietet das Menü nur **Restore conversation**, die Zusammenfassungsoptionen und **Never mind** an.

42 42 

43Nach dem Wiederherstellen der Konversation oder nach Auswahl von „Von hier aus zusammenfassen“ wird der ursprüngliche Prompt aus der ausgewählten Nachricht in das Eingabefeld wiederhergestellt, sodass Sie ihn erneut senden oder bearbeiten können.43Nachdem Sie die Konversation wiederhergestellt oder Summarize from here gewählt haben, wird der ursprüngliche Prompt der ausgewählten Nachricht in das Eingabefeld zurückgeschrieben, sodass Sie ihn erneut senden oder bearbeiten können.

44 44 

45Die Auswahl von „Bis hier zusammenfassen“ lässt Sie am Ende der Konversation mit leerem Eingabefeld zurück. Bei beiden Zusammenfassungsoptionen wird ein **Zusammengefasste Konversation**-Marker in der Konversation angezeigt, wo die komprimierten Nachrichten waren.45Wenn Sie Summarize up to here wählen, befinden Sie sich am Ende der Konversation mit leerem Eingabefeld. Bei beiden Zusammenfassungsoptionen erscheint eine Markierung **Summarized conversation** in der Konversation an der Stelle, an der sich die komprimierten Nachrichten befanden.

46 46 

47#### Zurückgespulte Nachrichten können zurückkehren, wenn Sie vor Ihrem nächsten Prompt beenden47#### Zurückgespulte Nachrichten können zurückkehren, wenn Sie vor Ihrem nächsten Prompt beenden

48 48 

49Um die zurückgekehrten Nachrichten erneut zu entfernen, führen Sie `/rewind` in der Sitzung aus, wählen Sie denselben Prompt aus und anschließend **Konversation wiederherstellen**. Senden Sie Claude vor dem Beenden einen Prompt, da Claude Code die zurückgespulte Konversation zusammen mit diesem Prompt speichert. Von Ihnen wiederhergestellte Dateien bleiben so, wie der Rewind sie hinterlassen hat.49Um die zurückgekehrten Nachrichten erneut zu entfernen, führen Sie `/rewind` in der Sitzung aus, wählen Sie denselben Prompt und dann **Restore conversation**. Senden Sie Claude vor dem Beenden einen Prompt, da Claude Code die zurückgespulte Konversation zusammen mit diesem Prompt speichert. Wiederhergestellte Dateien bleiben so, wie das Zurückspulen sie hinterlassen hat.

50 50 

51#### Rewind über eine gelöschte Konversation hinweg51#### Über eine gelöschte Konversation hinaus zurückspulen

52 52 

53Wenn Sie `/clear` früher im selben Claude Code-Prozess ausgeführt haben, zeigt das Rewind-Menü einen zusätzlichen Eintrag oben in der Liste mit der Bezeichnung `/resume <session-id> (previous session)`. Wählen Sie ihn aus, um die Konversation fortzusetzen, die vor dem Ausführen von `/clear` aktiv war. Der Eintrag ist verfügbar, bis Sie Claude Code beenden oder eine andere Sitzung fortsetzen.53Wenn Sie zuvor im selben Claude Code-Prozess `/clear` ausgeführt haben, zeigt das Rewind-Menü oben in der Liste einen zusätzlichen Eintrag mit der Bezeichnung `/resume <session-id> (previous session)`. Wählen Sie ihn aus, um die Konversation fortzusetzen, die vor der Ausführung von `/clear` aktiv war. Der Eintrag ist verfügbar, bis Sie Claude Code beenden oder eine andere Sitzung fortsetzen.

54 54 

55#### Eine Zusammenfassung leiten55#### Eine Zusammenfassung steuern

56 56 

57Das Zusammenfassen ändert keine Dateien auf der Festplatte, und die ursprünglichen Nachrichten bleiben im Sitzungstranskript, sodass Claude die Details immer noch referenzieren kann. Um zu lenken, worauf sich die Zusammenfassung konzentriert, markieren Sie eine **Zusammenfassen**-Option mit den Pfeiltasten und geben Sie Anweisungen ein, wo die Zeile **add context (optional)** liest, und drücken Sie dann `Enter`. Die Auswahl der Option mit ihrer Zahlentaste fasst sofort ohne Anweisungen zusammen.57Das Zusammenfassen ändert keine Dateien auf der Festplatte, und die ursprünglichen Nachrichten bleiben im Sitzungstranskript erhalten, sodass Claude weiterhin auf die Details zugreifen kann. Um festzulegen, worauf sich die Zusammenfassung konzentriert, markieren Sie eine **Summarize**-Option mit den Pfeiltasten, geben Sie Anweisungen dort ein, wo in der Zeile **add context (optional)** steht, und drücken Sie dann `Enter`. Wenn Sie die Option mit ihrer Zifferntaste auswählen, wird sofort ohne Anweisungen zusammengefasst.

58 58 

59> [!NOTE]59> [!NOTE]

60>60>

61> Zusammenfassen hält Sie in derselben Sitzung und komprimiert den Kontext, ähnlich wie ein gezieltes `/compact`. Um abzuzweigen und einen anderen Ansatz zu versuchen, während die ursprüngliche Sitzung intakt bleibt, verwenden Sie stattdessen [`/branch`](https://code.claude.com/docs/de/sessions#branch-a-session) oder `claude --continue --fork-session`.61> Das Zusammenfassen hält Sie in derselben Sitzung und komprimiert den Kontext, ähnlich wie ein gezieltes `/compact`. Um abzuzweigen und einen anderen Ansatz auszuprobieren, während die ursprüngliche Sitzung unverändert erhalten bleibt, verwenden Sie stattdessen [`/branch`](https://code.claude.com/docs/de/sessions#branch-a-session) oder `claude --continue --fork-session`.

62 62 

63## Häufige Anwendungsfälle63## Häufige Anwendungsfälle

64 64 


71 71 

72## Einschränkungen72## Einschränkungen

73 73 

74### Bash-Befehlsänderungen werden nicht verfolgt74### Änderungen durch Bash-Befehle werden nicht nachverfolgt

75 75 

76Sobald Claude in Ihrer Konversation eine Datei mit seinen Dateibearbeitungs-Tools bearbeitet hat, macht `/rewind` Änderungen rückgängig, die Bash-Befehle anschließend an dieser Datei vornehmen. Eine Datei, die nur durch Bash-Befehle geändert wurde, wird nicht verfolgt und bleibt unverändert. Um sie zurückzusetzen, verwenden Sie eine Versionskontrolle wie Git.76Sobald Claude eine Datei mit seinen Tools zur Dateibearbeitung in Ihrer Konversation bearbeitet hat, macht `/rewind` Änderungen rückgängig, die Bash-Befehle danach an dieser Datei vornehmen. Eine Datei, die nur durch Bash-Befehle geändert wurde, wird nicht nachverfolgt und bleibt unverändert. Um sie zurückzusetzen, verwenden Sie eine Versionskontrolle wie Git.

77 77 

78Unter jedem Prompt zählt das Rewind-Menü Änderungen an Dateien, die Claude bereits bearbeitet hatte, unabhängig davon, wodurch sie entstanden sind. Ein Prompt, bei dem ein Shell-Befehl eine solche Datei geändert hat, listet ebenfalls Dateiänderungen auf.78Unter jedem Prompt zählt das Rewind-Menü Änderungen an Dateien, die Claude bereits bearbeitet hatte, unabhängig davon, wodurch sie entstanden sind. Ein Prompt, bei dem ein Shell-Befehl eine solche Datei geändert hat, listet ebenfalls Dateiänderungen auf.

79 79 

80### Subagent-Bearbeitungen werden nicht wiederhergestellt80### Bearbeitungen durch Subagenten werden nicht wiederhergestellt

81 81 

82Ein [Subagent](https://code.claude.com/docs/de/sub-agents.md) führt Bearbeitungen mit Claudes Datei-Bearbeitungswerkzeugen durch, aber Claude Code erfasst diese Bearbeitungen normalerweise nicht in den Checkpoints Ihrer Sitzung. Ob das Zurückspulen sie wiederherstellt, hängt davon ab, wie der Subagent ausgeführt wird:82Ein [Subagent](https://code.claude.com/docs/de/sub-agents.md) nimmt Bearbeitungen mit Claudes Tools zur Dateibearbeitung vor, aber Claude Code erfasst diese Bearbeitungen in der Regel nicht in den Checkpoints Ihrer Sitzung. Ob das Zurückspulen sie wiederherstellt, hängt davon ab, wie der Subagent ausgeführt wird:

83 83 

84* **Foreground-Forked-Skill**: ein [Skill mit `context: fork`](https://code.claude.com/docs/de/skills#run-skills-in-a-subagent), der im Vordergrund ausgeführt wird, bearbeitet Ihren Arbeitsbaum während Ihres eigenen Zuges, sodass das Zurückspulen seine Bearbeitungen wie gewohnt wiederherstellt. Setzen Sie `background: false`, um einen Fork im Vordergrund auszuführen; einige Situationen, [aufgelistet auf der Skills-Seite](https://code.claude.com/docs/de/skills.md#run-skills-in-a-subagent), führen ihn dort unabhängig von der Einstellung aus.84* **Geforkter Skill im Vordergrund**: Ein [Skill mit `context: fork`](https://code.claude.com/docs/de/skills#run-skills-in-a-subagent), der im Vordergrund ausgeführt wird, bearbeitet Ihren Arbeitsbaum während Ihres eigenen Turns, sodass das Zurückspulen seine Bearbeitungen wie gewohnt wiederherstellt. Setzen Sie `background: false`, um einen Fork im Vordergrund auszuführen; in einigen Situationen, die [auf der Skills-Seite aufgeführt](https://code.claude.com/docs/de/skills.md#run-skills-in-a-subagent) sind, wird er unabhängig von der Einstellung dort ausgeführt.

85* **Jeder andere Subagent**: Das Zurückspulen stellt nur die Dateien wieder her, die Claude in Ihrer Konversation bereits bearbeitet hatte. Die Bearbeitungen des Subagenten an anderen Dateien bleiben bestehen, verwenden Sie daher eine Versionskontrolle wie Git, um sie rückgängig zu machen. Dies umfasst einen Forked-Skill, der im Hintergrund ausgeführt wird (Standard), und einen Hintergrund-[`/code-review --fix`](https://code.claude.com/docs/de/code-review-local)-Lauf.85* **Jeder andere Subagent**: Das Zurückspulen stellt nur die Dateien wieder her, die Claude in Ihrer Konversation bereits bearbeitet hatte. Die Bearbeitungen des Subagenten an anderen Dateien bleiben bestehen; verwenden Sie daher eine Versionskontrolle wie Git, um sie zurückzusetzen. Dazu gehören ein geforkter Skill, der im Hintergrund ausgeführt wird (die Standardeinstellung), sowie ein im Hintergrund ausgeführter [`/code-review --fix`](https://code.claude.com/docs/de/code-review-local)-Lauf.

86 86 

87### Externe Änderungen werden nicht verfolgt87### Externe Änderungen werden nicht nachverfolgt

88 88 

89Checkpointing verfolgt nur Dateien, die in der aktuellen Sitzung bearbeitet wurden. Manuelle Änderungen, die Sie an Dateien außerhalb von Claude Code vornehmen, und Bearbeitungen aus anderen gleichzeitigen Sitzungen werden normalerweise nicht erfasst, es sei denn, sie ändern zufällig dieselben Dateien wie die aktuelle Sitzung.89Checkpointing verfolgt nur Dateien, die innerhalb der aktuellen Sitzung bearbeitet wurden. Manuelle Änderungen, die Sie außerhalb von Claude Code an Dateien vornehmen, sowie Bearbeitungen aus anderen gleichzeitigen Sitzungen werden normalerweise nicht erfasst, es sei denn, sie betreffen zufällig dieselben Dateien wie die aktuelle Sitzung.

90 90 

91### Nachrichten, die während eines Zuges gesendet werden, werden nicht als Checkpoint erstellt91### Während eines Turns gesendete Nachrichten erhalten keinen Checkpoint

92 92 

93Im Rewind-Menü kann eine Nachricht, die Sie [eingegeben haben, während Claude noch arbeitete](https://code.claude.com/docs/de/interactive-mode.md#queue-messages-while-claude-works), mit **Keine Code-Wiederherstellung** markiert sein. Die markierte Nachricht hat keinen eigenen [Checkpoint](#how-checkpoints-work).93Im Rewind-Menü kann eine Nachricht, die Sie [eingegeben haben, während Claude noch arbeitete](https://code.claude.com/docs/de/interactive-mode.md#queue-messages-while-claude-works), mit **No code restore** markiert sein. Die markierte Nachricht hat keinen eigenen [Checkpoint](#how-checkpoints-work).

94 94 

95Um die Dateibearbeitungen rückgängig zu machen, die Claude nach dieser Nachricht vorgenommen hat, wählen Sie den Prompt aus, der den Turn gestartet hat, und wählen Sie **Code wiederherstellen** oder **Code und Unterhaltung wiederherstellen**. Dadurch werden Claudes Dateibearbeitungen aus dem gesamten Turn rückgängig gemacht, einschließlich derjenigen, die vor dem Eintreffen Ihrer Nachricht vorgenommen wurden.95Um die Dateibearbeitungen rückgängig zu machen, die Claude nach dieser Nachricht vorgenommen hat, wählen Sie den Prompt aus, mit dem der Turn begonnen hat, und wählen Sie **Restore code** oder **Restore code and conversation**. Dadurch werden Claudes Dateibearbeitungen aus dem gesamten Turn zurückgesetzt, einschließlich derjenigen, die vor dem Eintreffen Ihrer Nachricht vorgenommen wurden.

96 96 

97### Symverlinkte und hart verlinkte Pfade werden nicht wiederhergestellt97### Per Symlink oder Hardlink verknüpfte Pfade werden nicht wiederhergestellt

98 98 

99Checkpointing stellt symverlinkte oder hart verlinkte Dateien nicht wieder her. Wenn Sie **Code wiederherstellen** oder **Code und Unterhaltung wiederherstellen** aus dem `/rewind`-Menü auswählen, überspringt Claude Code jeden verfolgten Pfad, der ein Symlink oder Hard Link ist, und zeigt eine Warnung `Restored the code, but skipped N files` an. Die übersprungenen Dateien behalten ihren aktuellen Inhalt. Um die Änderungen der Sitzung an einer von ihnen rückgängig zu machen, bitten Sie Claude, die Bearbeitung rückgängig zu machen, oder bearbeiten Sie die Datei selbst. Konfigurationsdateien, die ein Dotfile-Manager in Ihr Projekt symlinkt, und Dateien, die pnpm hart verlinkt, fallen beide in diese Kategorie.99Checkpointing spult per Symlink oder Hardlink verknüpfte Dateien nicht zurück. Wenn Sie im `/rewind`-Menü **Restore code** oder **Restore code and conversation** wählen, überspringt Claude Code jeden nachverfolgten Pfad, der ein Symlink oder Hardlink ist, und zeigt die Warnung `Restored the code, but skipped N files` an. Die übersprungenen Dateien behalten ihren aktuellen Inhalt. Um die Änderungen der Sitzung an einer dieser Dateien rückgängig zu machen, bitten Sie Claude, die Bearbeitung umzukehren, oder bearbeiten Sie die Datei selbst. Konfigurationsdateien, die ein Dotfile-Manager per Symlink in Ihr Projekt einbindet, und Dateien, die pnpm per Hardlink einbindet, fallen beide in diese Kategorie.

100 100 

101Um zu sehen, welche Pfade eine Wiederherstellung überspringt, aktivieren Sie Debug-Protokollierung mit `/debug`, bevor Sie wiederherstellen: das Debug-Protokoll unter `~/.claude/debug/<session-id>.txt` nennt jeden übersprungenen Pfad. Für jeden Grund zum Überspringen und die Wiederherstellungsschritte siehe [den Eintrag „skipped-files“ in der Fehlerreferenz](https://code.claude.com/docs/de/errors.md#restored-the-code-but-skipped-files).101Um zu sehen, welche Pfade eine Wiederherstellung überspringt, aktivieren Sie vor der Wiederherstellung das Debug-Logging mit `/debug`: Das Debug-Log unter `~/.claude/debug/<session-id>.txt` nennt jeden übersprungenen Pfad. Alle Gründe für das Überspringen und die Schritte zur Behebung finden Sie im [Eintrag zu übersprungenen Dateien in der Fehlerreferenz](https://code.claude.com/docs/de/errors.md#restored-the-code-but-skipped-files).

102 102 

103### Kein Ersatz für Versionskontrolle103### Kein Ersatz für Versionskontrolle

104 104 

105Checkpoints sind für schnelle, sitzungsebene Wiederherstellung konzipiert. Für permanente Versionshistorie und Zusammenarbeit verwenden Sie weiterhin Versionskontrolle wie Git für Commits, Branches und langfristige Historie.105Checkpoints sind für eine schnelle Wiederherstellung auf Sitzungsebene konzipiert. Für einen dauerhaften Versionsverlauf und die Zusammenarbeit verwenden Sie weiterhin eine Versionskontrolle wie Git für Commits, Branches und den langfristigen Verlauf.

106 106 

107## Siehe auch107## Siehe auch

108 108 

chrome.md +56 −56

Details

59claude --chrome59claude --chrome

60```60```

61 61 

62Beim ersten Start mit Chrome zeigt Claude Code einen einmaligen Dialog an, der die Integration vorstellt und erklärt, wie Website-Berechtigungen funktionieren. Drücken Sie die Eingabetaste, um fortzufahren.62Beim ersten Start mit Chrome zeigt Claude Code einen einmaligen Dialog an, der die Integration vorstellt und erklärt, wie Website-Berechtigungen funktionieren. Drücken Sie Enter, um fortzufahren.

63 63 

64Um Chrome für zukünftige Sitzungen ohne das Flag zu aktivieren, siehe [Chrome standardmäßig aktivieren](#enable-chrome-by-default).64Wie Sie Chrome für zukünftige Sitzungen ohne das Flag aktivieren, erfahren Sie unter [Chrome standardmäßig aktivieren](#enable-chrome-by-default).

65 65 

66**2. Bitten Sie Claude, den Browser zu verwenden**66**2. Claude bitten, den Browser zu verwenden**

67 67 

68Dieses Beispiel navigiert zu einer Seite, interagiert mit ihr und meldet, was es findet, alles von Ihrem Terminal oder Editor aus:68Dieses Beispiel navigiert zu einer Seite, interagiert mit ihr und meldet, was es findet, alles direkt aus Ihrem Terminal oder Editor:

69 69 

70```text wrap theme={null}70```text wrap theme={null}

71Go to code.claude.com/docs, click on the search box,71Go to code.claude.com/docs, click on the search box,

72type "hooks", and tell me what results appear72type "hooks", and tell me what results appear

73```73```

74 74 

75Wenn Claude Code vor einer Browser-Aktion um Berechtigung fragt, genehmigen Sie diese. Der Dialog beginnt mit `Claude in Chrome wants to` und bietet eine Option, alle Aktionen auf dieser Website für die Sitzung zuzulassen. Claude öffnet einen neuen Tab und startet die Aufgabe.75Wenn Claude Code vor einer Browser-Aktion um Erlaubnis fragt, bestätigen Sie diese. Der Dialog beginnt mit `Claude in Chrome wants to` und bietet eine Option, alle Aktionen auf dieser Website für die Sitzung zu erlauben. Claude öffnet einen neuen Tab und beginnt mit der Aufgabe.

76 76 

77Führen Sie `/chrome` jederzeit aus, um den Verbindungsstatus zu überprüfen, Berechtigungen zu verwalten, die Erweiterung erneut zu verbinden oder auszuwählen, welcher verbundene Browser verwendet werden soll. Die Integration funktioniert, wenn das Statusfeld „Status: Enabled“ und „Extension: Installed“ anzeigt.77Führen Sie jederzeit `/chrome` aus, um den Verbindungsstatus zu prüfen, Berechtigungen zu verwalten, die Erweiterung erneut zu verbinden oder auszuwählen, welcher verbundene Browser verwendet werden soll. Die Integration funktioniert, wenn das Statusfenster „Status: Enabled“ und „Extension: Installed“ anzeigt.

78 78 

79Wenn mehr als ein Browser verbunden ist, wählen Sie aus, welchen Claude verwendet. Wenn eine Browser-Aktion startet, bevor Sie einen ausgewählt haben, fordert Claude Sie auf, einen auszuwählen. Um später Browser zu wechseln, führen Sie `/chrome` aus und wählen Sie **Select browser…**. Claude verwendet Ihre Wahl weiterhin, auch wenn ein anderer Browser verbunden wird.79Wenn mehr als ein Browser verbunden ist, wählen Sie aus, welchen Claude verwendet. Wenn eine Browser-Aktion startet, bevor Sie eine Auswahl getroffen haben, fordert Claude Sie auf, einen auszuwählen. Um später den Browser zu wechseln, führen Sie `/chrome` aus und wählen **Select browser…**. Claude verwendet weiterhin Ihre Auswahl, auch wenn sich ein anderer Browser verbindet.

80 80 

81Für VS Code siehe [Browser-Automatisierung in VS Code](https://code.claude.com/docs/de/vs-code.md#automate-browser-tasks-with-chrome).81Informationen zu VS Code finden Sie unter [Browser-Automatisierung in VS Code](https://code.claude.com/docs/de/vs-code.md#automate-browser-tasks-with-chrome).

82 82 

83### Installieren Sie die Erweiterung, wenn Claude Sie dazu auffordert83### Die Erweiterung installieren, wenn Claude danach fragt

84 84 

85Wenn Claude Ihren Browser in einer interaktiven Sitzung benötigt und Claude Code die Erweiterung nicht erkennt, zeigt Claude Code eine Installationsaufforderung mit dem Titel „Claude wants to use your browser“ an. Claude Code fragt höchstens einmal pro Sitzung.85Wenn Claude in einer interaktiven Sitzung Ihren Browser benötigt und Claude Code die Erweiterung nicht erkennt, zeigt Claude Code eine Installationsabfrage mit dem Titel „Claude wants to use your browser“ an. Claude Code fragt höchstens einmal pro Sitzung.

86 86 

87Die Aufforderung bietet drei Optionen:87Die Abfrage bietet drei Optionen:

88 88 

89* **Install extension**: öffnet die Seite zur Erweiterungsinstallation in Ihrem Browser und startet ein geführtes Setup. Claude Code wartet auf die Installation, verbindet die Erweiterung und aktiviert Browser-Tools in derselben Sitzung. Wenn die Verbindung hergestellt ist, wählen Sie „Continue with browser tools“ und Claude setzt die Aufgabe in Ihrem Browser fort. Sie können das Setup beenden, indem Sie „Continue without browser tools“ wählen und es später mit `/chrome` abschließen.89* **Install extension**: Öffnet die Installationsseite der Erweiterung in Ihrem Browser und startet eine geführte Einrichtung. Claude Code wartet auf die Installation, verbindet die Erweiterung und aktiviert die Browser-Tools in derselben Sitzung. Wenn die Verbindung bereit ist, wählen Sie „Continue with browser tools“, und Claude setzt die Aufgabe in Ihrem Browser fort. Sie können die Einrichtung verlassen, indem Sie „Continue without browser tools“ wählen, und sie später mit `/chrome` abschließen.

90* **Not now**: setzt die Aufgabe ohne Browser-Tools fort. Claude Code kann in einer späteren Sitzung erneut fragen.90* **Not now**: Setzt die Aufgabe ohne Browser-Tools fort. Claude Code kann in einer späteren Sitzung erneut fragen.

91* **Don't ask again**: stoppt die Aufforderung in zukünftigen Sitzungen. Sie können die Integration jederzeit mit `/chrome` einrichten.91* **Don't ask again**: Unterdrückt die Abfrage in zukünftigen Sitzungen. Sie können die Integration trotzdem jederzeit mit `/chrome` einrichten.

92 92 

93Zwei verwaltete MCP-Richtlinien deaktivieren die Aufforderung:93Zwei verwaltete MCP-Richtlinien schalten die Abfrage aus:

94 94 

95* Wenn Ihre Organisation den `claude-in-chrome` MCP-Server mit der [`deniedMcpServers` verwalteten Einstellung](https://code.claude.com/docs/de/managed-mcp#policy-based-control-with-allowlists-and-denylists) blockiert, zeigt Claude Code die Installationsaufforderung nicht an.95* Wenn Ihre Organisation den MCP-Server `claude-in-chrome` mit der [verwalteten Einstellung `deniedMcpServers`](https://code.claude.com/docs/de/managed-mcp#policy-based-control-with-allowlists-and-denylists) blockiert, zeigt Claude Code die Installationsabfrage nicht an.

96* Wenn Ihre Organisation eine [`managed-mcp.json`](https://code.claude.com/docs/de/managed-mcp#exclusive-control-with-managed-mcp-json) Datei bereitstellt, ohne [Claude in Chrome neben dem verwalteten Satz zuzulassen](https://code.claude.com/docs/de/managed-mcp.md#allow-claude-in-chrome-alongside-the-managed-set), zeigt Claude Code die Installationsaufforderung nicht an.96* Wenn Ihre Organisation eine [`managed-mcp.json`](https://code.claude.com/docs/de/managed-mcp#exclusive-control-with-managed-mcp-json)-Datei bereitstellt, ohne [Claude in Chrome neben den verwalteten Servern zu erlauben](https://code.claude.com/docs/de/managed-mcp.md#allow-claude-in-chrome-alongside-the-managed-set), zeigt Claude Code die Installationsabfrage nicht an.

97 97 

98### Chrome standardmäßig aktivieren98### Chrome standardmäßig aktivieren

99 99 

100Um Chrome zu verbinden, ohne jedes Mal `--chrome` übergeben zu müssen, führen Sie `/chrome` in einer CLI-Sitzung aus und wählen Sie **Enabled by default**. Geben Sie in der [VS Code-Erweiterung](https://code.claude.com/docs/de/vs-code.md#automate-browser-tasks-with-chrome) `/chrome` in das Eingabefeld ein und aktivieren Sie den Schalter **Enabled by default**. Beide verwenden dieselbe Einstellung, sodass das Aktivieren an einer der beiden Stellen sie sowohl für die CLI als auch für VS Code aktiviert.100Um Chrome zu verbinden, ohne jedes Mal `--chrome` zu übergeben, führen Sie `/chrome` in einer CLI-Sitzung aus und wählen **Enabled by default**. Geben Sie in der [VS Code-Erweiterung](https://code.claude.com/docs/de/vs-code.md#automate-browser-tasks-with-chrome) `/chrome` in das Eingabefeld ein und schalten Sie den Schalter **Enabled by default** ein. Beide teilen sich eine Einstellung, sodass das Einschalten an einer der beiden Stellen sie sowohl für die CLI als auch für VS Code einschaltet.

101 101 

102Wenn die Einstellung aktiviert ist und Sie Claude Code v2.1.287 oder höher verwenden, verbindet sich jede VS Code-Sitzung beim Start mit Ihrem Browser, sodass Claude ihn verwenden kann, bevor Sie `@browser` eingeben. In früheren Versionen oder bei deaktivierter Einstellung verbindet sich eine VS Code-Sitzung, wenn Sie `@browser` eingeben.102Mit aktivierter Einstellung und Claude Code v2.1.287 oder höher verbindet sich jede VS Code-Sitzung beim Start mit Ihrem Browser, sodass Claude ihn verwenden kann, bevor Sie `@browser` eingeben. In früheren Versionen oder bei deaktivierter Einstellung verbindet sich eine VS Code-Sitzung, wenn Sie `@browser` eingeben.

103 103 

104Claude Code startet normal, wenn Chrome nicht ausgeführt wird.104Claude Code startet normal, wenn Chrome nicht läuft.

105 105 

106> [!NOTE]106> [!NOTE]

107>107>

108> Das standardmäßige Aktivieren von Chrome erhöht die Kontextnutzung, da die Browser-Tools und ihre Anweisungen immer geladen werden. Wenn Sie eine erhöhte Kontextnutzung bemerken, deaktivieren Sie die Einstellung und verbinden Sie nur bei Bedarf, mit `--chrome` in der CLI oder durch Eingabe von [`@browser`](https://code.claude.com/docs/de/vs-code#automate-browser-tasks-with-chrome) im Eingabefeld von VS Code.108> Die standardmäßige Aktivierung von Chrome erhöht die Kontextnutzung, da die Browser-Tools und ihre Anweisungen immer geladen sind. Wenn Sie einen erhöhten Kontextverbrauch bemerken, schalten Sie die Einstellung aus und verbinden Sie sich nur bei Bedarf, mit `--chrome` in der CLI oder durch Eingabe von [`@browser`](https://code.claude.com/docs/de/vs-code#automate-browser-tasks-with-chrome) im Eingabefeld von VS Code.

109 109 

110### Verwalten Sie Website-Berechtigungen110### Website-Berechtigungen verwalten

111 111 

112Website-Berechtigungen werden von der Chrome-Erweiterung geerbt. Verwalten Sie Berechtigungen in den Einstellungen der Chrome-Erweiterung, um zu steuern, welche Websites Claude durchsuchen, anklicken und eingeben kann. Im [Auto-Modus](https://code.claude.com/docs/de/permission-modes.md#eliminate-prompts-with-auto-mode) überspringt die Erweiterung ihre eigene Pro-Website-Überprüfung für diesen Aufruf, wenn der Auto-Modus-Klassifikator selbst einen Browser-Aufruf an eine Website genehmigt, es sei denn, Ihre Berechtigungsregeln verweigern jede Website für Claude in Chrome.112Berechtigungen auf Website-Ebene werden von der Chrome-Erweiterung übernommen. Verwalten Sie Berechtigungen in den Einstellungen der Chrome-Erweiterung, um festzulegen, auf welchen Websites Claude surfen, klicken und tippen kann. Im [Auto-Modus](https://code.claude.com/docs/de/permission-modes.md#eliminate-prompts-with-auto-mode) überspringt die Erweiterung ihre eigene Prüfung pro Website für einen Browser-Aufruf, wenn der Klassifikator des Auto-Modus diesen Aufruf an eine Website selbst genehmigt, es sei denn, Ihre Berechtigungsregeln verweigern Claude in Chrome eine beliebige Website.

113 113 

114### Berechtigungsabfragen in VS Code-Sitzungen114### Berechtigungsabfragen in VS Code-Sitzungen

115 115 

116Wenn Claude Code in einer VS Code-Sitzung vor einer Browser-Aktion bei Ihnen nachfragt, erscheint die Abfrage als Karte im Chat-Panel. Wenn die Aktion auf eine Website abzielt, die Sie nicht zugelassen haben, bietet die Karte außerdem an, diese Website zuzulassen.116Wenn Claude Code in einer VS Code-Sitzung vor einer Browser-Aktion nachfragt, erscheint die Abfrage als Karte im Chat-Bereich. Wenn die Aktion auf eine Website abzielt, die Sie nicht erlaubt haben, bietet die Karte zusätzlich an, diese Website zu erlauben.

117 117 

118In einer Sitzung, die sich beim Start mit Ihrem Browser verbunden hat, weil [Enabled by default](#enable-chrome-by-default) aktiviert ist, fragt Claude Code vor Browser-Aktionen auf einer Website, die Sie nicht zugelassen haben, in den Berechtigungsmodi Manual, Edit automatically, Auto und Bypass permissions bei Ihnen nach. In den Berechtigungsmodi Auto und Bypass permissions gilt dies, bis Sie in dieser Sitzung `@browser` eingeben.118In einer Sitzung, die sich beim Start mit Ihrem Browser verbunden hat, weil [Enabled by default](#enable-chrome-by-default) eingeschaltet ist, fragt Claude Code in den Berechtigungsmodi Manual, Edit automatically, Auto und Bypass permissions vor Browser-Aktionen auf einer Website nach, die Sie nicht erlaubt haben. In den Modi Auto und Bypass permissions gilt dies, bis Sie in dieser Sitzung `@browser` eingeben.

119 119 

120### Browser-Tools im Plan-Modus120### Browser-Tools im Plan-Modus

121 121 

122Im [Plan-Modus](https://code.claude.com/docs/de/permission-modes.md#analyze-before-you-edit-with-plan-mode) wird eine Berechtigungsabfrage angezeigt, bevor Claude ein GIF aufzeichnet, einen neuen Tab öffnet oder eine Verknüpfung ausführt. Wenn in einer interaktiven CLI-Sitzung der [Bypass-Berechtigungsmodus verfügbar ist](https://code.claude.com/docs/de/permission-modes.md#skip-all-checks-with-bypasspermissions-mode) und das [Feature-Flag-Abrufen](https://code.claude.com/docs/de/env-vars.md#features-that-need-feature-flag-fetching) deaktiviert ist, werden diese Aufrufe ohne Abfrage ausgeführt.122Im [Plan-Modus](https://code.claude.com/docs/de/permission-modes.md#analyze-before-you-edit-with-plan-mode) erscheint eine Berechtigungsabfrage, bevor Claude ein GIF aufzeichnet, einen neuen Tab öffnet oder eine Verknüpfung ausführt. Wenn in einer interaktiven CLI-Sitzung der [Bypass-Permissions-Modus verfügbar ist](https://code.claude.com/docs/de/permission-modes.md#skip-all-checks-with-bypasspermissions-mode) und das [Abrufen von Feature-Flags](https://code.claude.com/docs/de/env-vars.md#features-that-need-feature-flag-fetching) ausgeschaltet ist, laufen diese Aufrufe ohne Abfrage.

123 123 

124Ein `tabs_context_mcp`-Aufruf fordert auch eine Genehmigung an, wenn er `createIfEmpty` setzt, und ebenso ein `browser_batch`-Aufruf, der eine dieser Aktionen enthält.124Ein `tabs_context_mcp`-Aufruf löst ebenfalls eine Abfrage aus, wenn er `createIfEmpty` setzt, ebenso ein `browser_batch`-Aufruf, der eine dieser Aktionen enthält.

125 125 

126## Beispiel-Workflows126## Beispiel-Workflows

127 127 

128Diese Beispiele zeigen häufige Möglichkeiten, Browser-Aktionen mit Codierungsaufgaben zu kombinieren. Führen Sie `/mcp` aus, wählen Sie `claude-in-chrome`, und wählen Sie dann **Tools anzeigen**, um die vollständige Liste der verfügbaren Browser-Tools anzuzeigen.128Diese Beispiele zeigen gängige Möglichkeiten, Browser-Aktionen mit Programmieraufgaben zu kombinieren. Führen Sie `/mcp` aus, wählen Sie `claude-in-chrome` und anschließend **View tools**, um die vollständige Liste der verfügbaren Browser-Tools anzuzeigen.

129 129 

130### Testen Sie eine lokale Web-Anwendung130### Eine lokale Webanwendung testen

131 131 

132Wenn Sie eine Web-App entwickeln, bitten Sie Claude, zu überprüfen, ob Ihre Änderungen ordnungsgemäß funktionieren:132Bitten Sie Claude bei der Entwicklung einer Web-App, zu überprüfen, ob Ihre Änderungen korrekt funktionieren:

133 133 

134```text wrap theme={null}134```text wrap theme={null}

135I just updated the login form validation. Can you open localhost:3000,135I just updated the login form validation. Can you open localhost:3000,


137messages appear correctly?137messages appear correctly?

138```138```

139 139 

140Claude navigiert zu Ihrem lokalen Server, interagiert mit dem Formular und meldet, was es beobachtet.140Claude navigiert zu Ihrem lokalen Server, interagiert mit dem Formular und berichtet, was es beobachtet.

141 141 

142### Debuggen mit Konsolenprotokollen142### Mit Konsolen-Logs debuggen

143 143 

144Claude kann Konsolenausgaben lesen, um Probleme zu diagnostizieren. Teilen Sie Claude mit, welche Muster zu suchen sind, anstatt alle Konsolenausgaben anzufordern, da Protokolle ausführlich sein können:144Claude kann die Konsolenausgabe lesen, um bei der Diagnose von Problemen zu helfen. Teilen Sie Claude mit, nach welchen Mustern es suchen soll, anstatt die gesamte Konsolenausgabe anzufordern, da Logs sehr umfangreich sein können:

145 145 

146```text wrap theme={null}146```text wrap theme={null}

147Open the dashboard page and check the console for any errors when147Open the dashboard page and check the console for any errors when


150 150 

151Claude liest die Konsolenmeldungen und kann nach bestimmten Mustern oder Fehlertypen filtern.151Claude liest die Konsolenmeldungen und kann nach bestimmten Mustern oder Fehlertypen filtern.

152 152 

153### Automatisieren Sie die Formularausfüllung153### Formulare automatisch ausfüllen

154 154 

155Beschleunigen Sie wiederholte Dateneingabeaufgaben:155Beschleunigen Sie sich wiederholende Dateneingabeaufgaben:

156 156 

157```text wrap theme={null}157```text wrap theme={null}

158I have a spreadsheet of customer contacts in contacts.csv. For each row,158I have a spreadsheet of customer contacts in contacts.csv. For each row,


160name, email, and phone fields.160name, email, and phone fields.

161```161```

162 162 

163Claude liest Ihre lokale Datei, navigiert die Web-Schnittstelle und gibt die Daten für jeden Datensatz ein.163Claude liest Ihre lokale Datei, navigiert durch die Weboberfläche und gibt die Daten für jeden Datensatz ein.

164 164 

165### Dateien auf Webseiten hochladen165### Dateien auf Webseiten hochladen

166 166 

167Claude kann Dateien von Ihrem Computer an Upload-Felder auf einer Seite anhängen. Claude Code liest die Datei und sendet ihren Inhalt an den Browser, sodass Uploads sowohl in lokalen als auch in Remote-Sitzungen funktionieren.167Claude kann Dateien von Ihrem Rechner an Upload-Felder auf einer Seite anhängen. Claude Code liest die Datei und sendet ihren Inhalt an den Browser, sodass Uploads sowohl in lokalen als auch in Remote-Sitzungen funktionieren.

168 168 

169Dieses Beispiel hängt eine Protokolldatei an ein Formular an:169Dieses Beispiel hängt eine Logdatei an ein Formular an:

170 170 

171```text wrap theme={null}171```text wrap theme={null}

172Open the bug tracker at bugs.example.com, create a new issue,172Open the bug tracker at bugs.example.com, create a new issue,

173and attach logs/session.log to it173and attach logs/session.log to it

174```174```

175 175 

176Wenn Claude das Anhängen einer Datei ablehnt oder ein Upload fehlschlägt, prüfen Sie folgende Ursachen:176Wenn Claude sich weigert, eine Datei anzuhängen, oder ein Upload fehlschlägt, prüfen Sie folgende Ursachen:

177 177 

178* **Berechtigungen**: Claude kann eine Datei nur hochladen, wenn die Sitzung berechtigt ist, sie zu lesen. Daher blockieren [Berechtigungsregeln](https://code.claude.com/docs/de/settings-reference.md#permission-settings), die `Read`-Zugriff auf eine Datei verweigern, auch das Hochladen.178* **Berechtigungen**: Claude kann eine Datei nur hochladen, wenn die Sitzung sie lesen darf. [Berechtigungsregeln](https://code.claude.com/docs/de/settings-reference.md#permission-settings), die den `Read`-Zugriff auf eine Datei verweigern, blockieren daher auch deren Upload.

179* **Größe**: Ein einzelner Upload kann insgesamt bis zu 10 MB Dateien enthalten.179* **Größe**: Ein einzelner Upload kann insgesamt bis zu 10 MB an Dateien umfassen.

180* **Hardlinks**: Claude lehnt Dateien ab, die mehrere Hardlinks haben, was in Package-Manager-Speichern wie `node_modules` häufig vorkommt. Kopieren Sie die Datei und laden Sie die Kopie hoch.180* **Hardlinks**: Claude lehnt Dateien mit mehreren Hardlinks ab, was in Speichern von Paketmanagern wie `node_modules` häufig vorkommt. Kopieren Sie die Datei und laden Sie die Kopie hoch.

181* **Namen für Anmeldedaten**: Claude lehnt eine Datei ab, deren Name oder Ordner einer ist, unter dem Anmeldedaten gespeichert werden, etwa `.env`, eine `.pem`- oder `.key`-Datei oder alles unter `.ssh`. Erfordert Claude Code v2.1.293 oder später.181* **Namen von Anmeldedaten**: Claude lehnt eine Datei ab, deren Name oder Ordner einer ist, unter dem Anmeldedaten gespeichert werden, etwa `.env`, eine `.pem`- oder `.key`-Datei oder alles unter `.ssh`. Erfordert Claude Code v2.1.293 oder neuer.

182 182 

183### Entwurf von Inhalten in Google Docs183### Inhalte in Google Docs entwerfen

184 184 

185Verwenden Sie Claude, um direkt in Ihren Dokumenten zu schreiben, ohne API-Setup:185Lassen Sie Claude direkt in Ihre Dokumente schreiben, ohne API-Einrichtung:

186 186 

187```text wrap theme={null}187```text wrap theme={null}

188Draft a project update based on the recent commits and add it to my188Draft a project update based on the recent commits and add it to my

189Google Doc at docs.google.com/document/d/abc123189Google Doc at docs.google.com/document/d/abc123

190```190```

191 191 

192Claude öffnet das Dokument, klickt in den Editor und gibt den Inhalt ein. Dies funktioniert mit jeder Web-App, bei der Sie angemeldet sind: Gmail, Notion, Sheets und mehr.192Claude öffnet das Dokument, klickt in den Editor und tippt den Inhalt ein. Dies funktioniert mit jeder Web-App, bei der Sie angemeldet sind: Gmail, Notion, Sheets und mehr.

193 193 

194### Extrahieren Sie Daten von Webseiten194### Daten aus Webseiten extrahieren

195 195 

196Extrahieren Sie strukturierte Informationen von Websites:196Rufen Sie strukturierte Informationen von Websites ab:

197 197 

198```text wrap theme={null}198```text wrap theme={null}

199Go to the product listings page and extract the name, price, and199Go to the product listings page and extract the name, price, and

200availability for each item. Save the results as a CSV file.200availability for each item. Save the results as a CSV file.

201```201```

202 202 

203Claude navigiert zur Seite, liest den Inhalt und kompiliert die Daten in ein strukturiertes Format.203Claude navigiert zur Seite, liest den Inhalt und stellt die Daten in einem strukturierten Format zusammen.

204 204 

205### Führen Sie Multi-Site-Workflows aus205### Workflows über mehrere Websites ausführen

206 206 

207Koordinieren Sie Aufgaben über mehrere Websites hinweg:207Koordinieren Sie Aufgaben über mehrere Websites hinweg:

208 208 


212about what they do.212about what they do.

213```213```

214 214 

215Claude arbeitet über Registerkarten hinweg, um Informationen zu sammeln und den Workflow abzuschließen.215Claude arbeitet tabübergreifend, um Informationen zu sammeln und den Workflow abzuschließen.

216 216 

217### Zeichnen Sie eine Demo-GIF auf217### Ein Demo-GIF aufnehmen

218 218 

219Erstellen Sie teilbare Aufzeichnungen von Browser-Interaktionen:219Erstellen Sie teilbare Aufnahmen von Browser-Interaktionen:

220 220 

221```text wrap theme={null}221```text wrap theme={null}

222Record a GIF showing how to complete the checkout flow, from adding222Record a GIF showing how to complete the checkout flow, from adding

223an item to the cart through to the confirmation page.223an item to the cart through to the confirmation page.

224```224```

225 225 

226Claude zeichnet die Interaktionssequenz auf und speichert sie als GIF-Datei. Die Aufzeichnung erfasst alles, was im Browser sichtbar ist, einschließlich Kontodaten auf angemeldeten Seiten. Überprüfen Sie sie daher, bevor Sie sie außerhalb Ihres Teams freigeben.226Claude zeichnet die Interaktionsabfolge auf und speichert sie als GIF-Datei. Die Aufnahme erfasst alles, was im Browser sichtbar ist, einschließlich Kontodaten auf Seiten, auf denen Sie angemeldet sind. Überprüfen Sie sie daher, bevor Sie sie außerhalb Ihres Teams teilen.

227 227 

228### Speichern Sie Screenshots auf der Festplatte228### Screenshots auf der Festplatte speichern

229 229 

230Bitten Sie Claude, einen Screenshot als Datei zu speichern:230Bitten Sie Claude, einen Screenshot als Datei zu speichern:

231 231 


233Take a screenshot of the checkout page and save it to disk233Take a screenshot of the checkout page and save it to disk

234```234```

235 235 

236Claude speichert das Bild auf der Festplatte und meldet den Dateipfad.236Claude speichert das Bild auf der Festplatte und gibt den Dateipfad an.

237 237 

238## Fehlerbehebung238## Fehlerbehebung

239 239 

Details

446 446 

447Diese übergeordneten Einstellungen passieren den Filter auch, wenn alle fünf Sperren gesetzt sind:447Diese übergeordneten Einstellungen passieren den Filter auch, wenn alle fünf Sperren gesetzt sind:

448 448 

449* **`forceLoginOrgUUID`**: Claude Code berücksichtigt einen übergeordneten Wert, wenn die Admin-Quelle mit der höchsten Priorität keine Organisations-UUID setzt. Gateway-Anmeldung überprüft diesen Schlüssel nicht. Eine Organisations-UUID in der Admin-Quelle mit der höchsten Priorität blockiert den übergeordneten Wert und ist der, den Claude Code erzwingt.449* **`forceLoginOrgUUID`**: Claude Code berücksichtigt einen übergeordneten Wert, wenn die verwalteten Einstellungen, die es anwendet, keine Organisations-UUID setzen. Gateway-Anmeldung überprüft diesen Schlüssel nicht. Eine Organisations-UUID in den verwalteten Einstellungen, die Claude Code anwendet, blockiert den übergeordneten Wert und ist die Organisations-UUID, die Claude Code erzwingt. Wenn Ihre Flotte eine Anthropic-Organisation festlegt, finden Sie unter [Welche verwaltete Quelle Anmeldeschlüssel liefert](https://code.claude.com/docs/de/managed-settings.md#which-managed-source-supplies-login-keys), wo Sie `forceLoginOrgUUID` setzen.

450* **`allowedMcpServers`**: Claude Code berücksichtigt eine übergeordnete Allowlist, wenn keine Admin-Liste in Kraft ist. `allowManagedMcpServersOnly` blockiert sie nicht, da die Sperre diejenige Liste als verwalteten Wert erzwingt, die gewinnt, einschließlich einer übergeordneten Liste, wenn keine Admin-Quelle eine Liste liefert. Eine Liste in der Admin-Quelle mit der höchsten Priorität blockiert die übergeordnete und ist die Liste, die Claude Code erzwingt, daher setzen Sie `allowedMcpServers` dort, neben der Sperre. Vor v2.1.223 blockierte ein Wert für einen der beiden Schlüssel in jeder Admin-Quelle den übergeordneten.450* **`allowedMcpServers`**: Claude Code berücksichtigt eine übergeordnete Allowlist, wenn keine Admin-Liste in Kraft ist. `allowManagedMcpServersOnly` blockiert sie nicht, da die Sperre diejenige Liste als verwalteten Wert erzwingt, die gewinnt, einschließlich einer übergeordneten Liste, wenn keine Admin-Quelle eine Liste liefert. Eine Liste in der Admin-Quelle mit der höchsten Priorität blockiert die übergeordnete und ist die Liste, die Claude Code erzwingt, daher setzen Sie `allowedMcpServers` dort, neben der Sperre. Vor v2.1.223 blockierte ein Wert für einen der beiden Schlüssel in jeder Admin-Quelle den übergeordneten.

451* **`availableModels`**: Claude Code berücksichtigt eine übergeordnete Modelliste, wenn die gewinnende verwaltete Quelle keine setzt. Wenn Ihre Flotte Modelle einschränkt, setzen Sie `availableModels` in der Gewinnerquelle.451* **`availableModels`**: Claude Code berücksichtigt eine übergeordnete Modelliste, wenn die gewinnende verwaltete Quelle keine setzt. Wenn Ihre Flotte Modelle einschränkt, setzen Sie `availableModels` in der Gewinnerquelle.

452* **`allowedProviders`**: Claude Code berücksichtigt eine übergeordnete Allowlist für API-Anbieter, wenn die gewinnende verwaltete Quelle keine setzt. Wenn Ihre Flotte einschränkt, welche API-Anbieter Entwickler verwenden können, setzen Sie `allowedProviders` in der Gewinnerquelle. Erfordert Claude Code v2.1.285 oder später.452* **`allowedProviders`**: Claude Code berücksichtigt eine übergeordnete Allowlist für API-Anbieter, wenn die gewinnende verwaltete Quelle keine setzt. Wenn Ihre Flotte einschränkt, welche API-Anbieter Entwickler verwenden können, setzen Sie `allowedProviders` in der Gewinnerquelle. Erfordert Claude Code v2.1.285 oder später.


454* **`blockedMarketplaces`**: eine übergeordnete Marketplace-Blockliste passiert und ergänzt jede Blockliste, die eine verwaltete Quelle setzt, da eine Blockliste nur weiter einschränken kann. Erfordert Claude Code v2.1.282 oder später.454* **`blockedMarketplaces`**: eine übergeordnete Marketplace-Blockliste passiert und ergänzt jede Blockliste, die eine verwaltete Quelle setzt, da eine Blockliste nur weiter einschränken kann. Erfordert Claude Code v2.1.282 oder später.

455* **`strictPluginOnlyCustomization`**: dieser Schlüssel passiert den Filter unabhängig von jeder Sperre, und er lässt Claude Code die eigene Anpassung des Entwicklers ignorieren, einschließlich schützender Hooks. Keine Sperre blockiert ihn.455* **`strictPluginOnlyCustomization`**: dieser Schlüssel passiert den Filter unabhängig von jeder Sperre, und er lässt Claude Code die eigene Anpassung des Entwicklers ignorieren, einschließlich schützender Hooks. Keine Sperre blockiert ihn.

456 456 

457Unter der Standardeinstellung „first wins“ blockiert ein Admin-Wert den übergeordneten nur, wenn er sich in der Admin-Quelle mit der höchsten Priorität befindet, außer bei `allowedMcpServers`, solange die [MCP-Server-Sperre](#lock-behavior-across-sources) aktiv ist. Unter dem Merge-Opt-in `managedSourcesBehavior` legt [wie Claude Code verwaltete Quellen kombiniert](https://code.claude.com/docs/de/managed-settings.md#how-claude-code-combines-managed-sources) fest, welcher Quellenwert stattdessen gilt.457Wenn Sie `managedSourcesBehavior` auf `"merge"` setzen, prüfen Sie, [welcher Quellenwert für jede Art von Schlüssel gilt](https://code.claude.com/docs/de/managed-settings.md#compose-every-managed-source).

458 458 

459#### Wie Hook- und Skill-Schlüssel in übergeordneten Einstellungen wirksam werden459#### Wie Hook- und Skill-Schlüssel in übergeordneten Einstellungen wirksam werden

460 460 

Details

421 421 

422```yaml theme={null}422```yaml theme={null}

423models:423models:

424 - id: claude-opus-restricted # a custom id, not a built-in model name424 - id: restricted-claude-opus-4-8 # a custom id, not a built-in model name

425 upstream_model:425 upstream_model:

426 bedrock-isolated: us.anthropic.claude-opus-4-8 # the only upstream that serves it426 bedrock-isolated: us.anthropic.claude-opus-4-8 # the only upstream that serves it

427```427```


631 631 

632Das 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.632Das 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.

633 633 

634Fü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 einer Stunde wartet, bis ein Upstream zu antworten beginnt.634Das Gateway wartet so lange darauf, dass eine Antwort beginnt:

635 

636* **`provider: anthropic`-Upstreams**: [`timeouts.upstream_ttfb_ms`](#http-tuning), standardmäßig 120 Sekunden

637* **Andere Anbieter**: bis zu einer Stunde. Um diese Wartezeit für Streaming-Anfragen zu verkürzen, setzen Sie `timeouts.upstream_ttfb_ms` auf Gateway v2.1.295 oder später. Modellanfragen ohne Streaming warten in jedem Fall bis zu einer Stunde

635 638 

636`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.639`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.

637 640 


875 policies:878 policies:

876 - match: { groups: [restricted-projects] }879 - match: { groups: [restricted-projects] }

877 cli:880 cli:

878 availableModels: [claude-opus-restricted]881 availableModels: [restricted-claude-opus-4-8]

879 enforceAvailableModels: true882 enforceAvailableModels: true

880 model: claude-opus-restricted883 model: restricted-claude-opus-4-8

884 env:

885 ANTHROPIC_DEFAULT_OPUS_MODEL: restricted-claude-opus-4-8 # opus and Default resolve to the ID too

881```886```

882 887 

883#### Matcher-Werte, die das Gateway beim Start stoppen888#### Matcher-Werte, die das Gateway beim Start stoppen


1148 1153 

1149`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.1154`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.

1150 1155 

1156> [!NOTE]

1157>

1158> [`sshTransport`](https://claude.com/docs/third-party/claude-desktop/configuration#sshtransport) erfordert Claude Code v2.1.293 oder höher auf dem Gateway-Server.

1159 

1151Wenn 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.1160Wenn 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.

1152 1161 

1153##### Wie eine Rollen-Richtlinie den `desktop`-Basisblock erbt1162##### Wie eine Rollen-Richtlinie den `desktop`-Basisblock erbt


1366Claude 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:1375Claude 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:

1367 1376 

1368* 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.1377* 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.

1369* Die URL verwendet `https://` oder `http://` zu einer Loopback-Adresse1378* Die URL verwendet `https://` oder, bei einer Loopback-Adresse, `http://`

1370* 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.1379* 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.

1371* 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.1380* 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.

1372* Weder Sie noch der Entwickler haben [`otelHeadersHelper`](https://code.claude.com/docs/de/settings-reference#otelheadershelper) in einer Einstellungsquelle konfiguriert. Mit einem konfigurierten Helper bleibt jedes Signal auf dem Relay.1381* Weder Sie noch der Entwickler haben [`otelHeadersHelper`](https://code.claude.com/docs/de/settings-reference#otelheadershelper) in einer Einstellungsquelle konfiguriert. Mit einem konfigurierten Helper bleibt jedes Signal auf dem Relay.


1398| `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. |1407| `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. |

1399| `limits` | `max_request_header_bytes` | nicht gesetzt | Senkt das Limit des Gateways von 256 KiB für die Gesamtgröße der Header einer Anfrage. Eine Anfrage über dem Limit gibt `431` zurück, und ein Wert über 256 KiB hat keine Wirkung. Wenn Entwickler nach der Anmeldung `431` erhalten, siehe [Request-Header nach der Anmeldung zu groß](https://code.claude.com/docs/de/claude-apps-gateway-deploy.md#request-headers-too-large-after-sign-in). |1408| `limits` | `max_request_header_bytes` | nicht gesetzt | Senkt das Limit des Gateways von 256 KiB für die Gesamtgröße der Header einer Anfrage. Eine Anfrage über dem Limit gibt `431` zurück, und ein Wert über 256 KiB hat keine Wirkung. Wenn Entwickler nach der Anmeldung `431` erhalten, siehe [Request-Header nach der Anmeldung zu groß](https://code.claude.com/docs/de/claude-apps-gateway-deploy.md#request-headers-too-large-after-sign-in). |

1400| `limits` | `max_url_length` | nicht gesetzt | Wenn gesetzt, gibt eine zu lange URL `414` zurück |1409| `limits` | `max_url_length` | nicht gesetzt | Wenn gesetzt, gibt eine zu lange URL `414` zurück |

1401| `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. |1410| `timeouts` | `upstream_ttfb_ms` | 120000 | Maximale Wartezeit auf die Response-Header des Upstreams (Time to First Byte). Der Response-Body wird anschließend ohne zeitliche Obergrenze gestreamt. Ist der Schlüssel nicht gesetzt, gilt der Standardwert für Upstreams mit `provider: anthropic`, und bei jedem anderen Anbieter wartet das Gateway bis zu einer Stunde auf den Beginn der Antwort. Um diese Wartezeit zu verkürzen, siehe [Mehrere Upstreams](#multiple-upstreams). |

1402| `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](https://code.claude.com/docs/de/claude-apps-gateway-deploy.md#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](https://code.claude.com/docs/de/claude-apps-gateway-deploy.md#user-code-brute-force-resistance). |1411| `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](https://code.claude.com/docs/de/claude-apps-gateway-deploy.md#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](https://code.claude.com/docs/de/claude-apps-gateway-deploy.md#user-code-brute-force-resistance). |

1403| `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](https://code.claude.com/docs/de/claude-apps-gateway-deploy.md#large-rollouts) zeigt, wie weit Sie es erhöhen sollten. |1412| `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](https://code.claude.com/docs/de/claude-apps-gateway-deploy.md#large-rollouts) zeigt, wie weit Sie es erhöhen sollten. |

1404 1413 

Details

152 152 

153## Betrieb153## Betrieb

154 154 

155Sobald das Gateway Datenverkehr bedient, besteht der tägliche Betrieb darin, seine Logs zu lesen, seinen Zustand zu prüfen und seine Secrets nach Ihrem Zeitplan zu rotieren. Die folgenden Unterabschnitte behandeln jeden dieser Punkte sowie die Frage, was Postgres speichert und wie sich Upgrades und Rollbacks verhalten.155Sobald das Gateway Traffic bedient, besteht der tägliche Betrieb darin, seine Logs zu lesen, seinen Zustand zu prüfen und seine Secrets nach Ihrem Zeitplan zu rotieren. Die Unterabschnitte behandeln jeden dieser Punkte sowie, was Postgres speichert und wie sich Upgrades und Rollbacks verhalten.

156 156 

157### Logs157### Logs

158 158 

159Das Gateway schreibt zwei Streams nach stderr, beide JSON-freundlich:159Das Gateway schreibt zwei Streams nach stderr, beide JSON-freundlich:

160 160 

161* **Audit-Ereignisse**: eine einzeilige JSON-Ausgabe pro sicherheitsrelevantem Ereignis. Leiten Sie stderr an Ihren Log-Aggregator weiter.161* **Audit-Ereignisse**: einzeiliges JSON pro sicherheitsrelevantem Ereignis. Leiten Sie stderr an Ihren Log-Aggregator weiter.

162 162 

163 Zu den ausgegebenen Ereignissen gehören `config.load`, `session.mint`, `session.refresh`, `device.authorize`, `device.verify`, `device.callback`, `auth.denied`, `access.denied`, `access.public_client`, `inference`, `managed.serve`, `desktop_bootstrap.serve`, `desktop_bootstrap.denied`, `spend.blocked`, `admin.denied`, `admin.limit.upsert` und `admin.limit.delete`. Die Felder variieren je nach Ereignis:163 Zu den ausgegebenen Ereignissen gehören `config.load`, `session.mint`, `session.refresh`, `device.authorize`, `device.verify`, `device.callback`, `auth.denied`, `access.denied`, `access.public_client`, `inference`, `managed.serve`, `desktop_bootstrap.serve`, `desktop_bootstrap.denied`, `spend.blocked`, `admin.denied`, `admin.limit.upsert` und `admin.limit.delete`. Die Felder variieren je nach Ereignis:

164 164 

165 * Erfolgreiche Mint- und Refresh-Ereignisse enthalten `sub`, `email`, `client_ip` und das Ergebnis165 * Erfolgreiche Mint- und Refresh-Ereignisse enthalten `sub`, `email`, `client_ip` und das Ergebnis

166 * `auth.denied` und `access.denied` enthalten den Grund und die Client-IP, bei `auth.denied` zusätzlich den Anfragepfad, da bei diesen Ablehnungen keine Benutzeridentität existiert. Zwei Gründe von `access.denied` ändern, was das Ereignis enthält:166 * `auth.denied` und `access.denied` enthalten den Grund und die Client-IP, bei `auth.denied` zusätzlich den Anfragepfad, da bei diesen Ablehnungen keine Benutzeridentität existiert. Zwei `access.denied`-Gründe ändern, was das Ereignis enthält:

167 * `xff_unparseable`: Das Ereignis enthält zusätzlich den `X-Forwarded-For`-Eintrag, der nicht gelesen werden konnte167 * `xff_unparseable`: Das Ereignis enthält zusätzlich den `X-Forwarded-For`-Eintrag, der nicht gelesen werden konnte

168 * `client_ip_unknown`: Das Ereignis enthält keine Client-IP, weil die Verbindung keine Peer-Adresse hatte, während eine `access_control`-Liste gesetzt war168 * `client_ip_unknown`: Das Ereignis enthält keine Client-IP, weil die Verbindung keine Peer-Adresse hatte, während eine `access_control`-Liste gesetzt war

169 * `access.public_client` enthält die Client-IP der ersten Anfrage pro Prozess, die von einer öffentlichen Adresse eintrifft, während `access_control.allow_cidrs` leer ist. Das Gateway bedient die Anfrage wie gewohnt; das Ereignis signalisiert, dass das Gateway möglicherweise aus dem öffentlichen Internet erreichbar ist. Siehe die [`access_control`-Referenz](https://code.claude.com/docs/de/claude-apps-gateway-config#http-tuning) dazu, was als öffentlich gilt, und für die empfohlene Allow-Liste.169 * `access.public_client` enthält die Client-IP der ersten Anfrage pro Prozess, die von einer öffentlichen Adresse eintrifft, während `access_control.allow_cidrs` leer ist. Das Gateway bedient die Anfrage wie gewohnt; das Ereignis signalisiert, dass das Gateway möglicherweise aus dem öffentlichen Internet erreichbar ist. In der [`access_control`-Referenz](https://code.claude.com/docs/de/claude-apps-gateway-config#http-tuning) erfahren Sie, was als öffentlich gilt, und finden die empfohlene Allow-List.

170 * `inference` protokolliert, welcher Upstream die Anfrage bedient hat, und den Antwortstatus170 * `inference` protokolliert, welcher Upstream die Anfrage bedient hat, sowie den Antwortstatus

171 * `desktop_bootstrap.denied` protokolliert einen abgelehnten Bootstrap-Abruf von Claude Desktop mit dem Grund (`not_configured`, `policy_not_opted_in` oder `no_policy_matched`) und der Identität des Benutzers171 * `desktop_bootstrap.denied` protokolliert einen abgelehnten Bootstrap-Abruf von Claude Desktop mit dem Grund (`not_configured`, `policy_not_opted_in` oder `no_policy_matched`) und der Identität des Benutzers

172 * `admin.denied` protokolliert einen abgelehnten Authentifizierungsversuch an der Admin-API mit Client-IP, Methode, Pfad und einem Grund, ohne das vorgelegte Schlüsselmaterial: `invalid_key`, wenn ein `x-api-key` vorgelegt wurde, aber mit keinem konfigurierten Schlüssel übereinstimmte, `bearer_rejected`, wenn nur ein `Authorization`-Header vorgelegt wurde und dieser sich nicht als Gateway-Sitzung in `admin.admin_groups` verifizieren ließ, oder `no_credentials`, wenn keiner der beiden Header vorgelegt wurde172 * `admin.denied` protokolliert einen abgelehnten Authentifizierungsversuch an der Admin-API mit Client-IP, Methode, Pfad und einem Grund, ohne das vorgelegte Schlüsselmaterial: `invalid_key`, wenn ein `x-api-key` vorgelegt wurde, der zu keinem konfigurierten Schlüssel passte, `bearer_rejected`, wenn nur ein `Authorization`-Header vorgelegt wurde und dieser nicht als Gateway-Sitzung in `admin.admin_groups` verifiziert werden konnte, oder `no_credentials`, wenn keiner der beiden Header vorgelegt wurde

173* **Betriebslogs**: menschenlesbare Zeilen mit dem Präfix `[gateway]` für Start, Warnungen und Upstream-Fehler. Die Umgebungsvariable `CLAUDE_GATEWAY_LOG_LEVEL` steuert die Ausführlichkeit und akzeptiert `debug`, `info`, `warn` oder `error`, wobei `info` der Standard ist. Bei `debug` protokolliert jede Anmeldung und jeder Refresh zusätzlich die Namen, nicht die Werte, der Claims im id\_token sowie die Namen der userinfo-Claims, wenn `userinfo_fallback` welche geliefert hat, sodass Sie die Einstellungen `email_claim` und `groups_claim` diagnostizieren können, ohne personenbezogene Daten zu protokollieren. Sie wirkt sich nicht auf Audit-Ereignisse aus, die immer ausgegeben werden.173* **Betriebs-Logs**: menschenlesbare Zeilen mit dem Präfix `[gateway]` für Start, Warnungen und Upstream-Fehler. Die Umgebungsvariable `CLAUDE_GATEWAY_LOG_LEVEL` steuert die Ausführlichkeit und akzeptiert `debug`, `info`, `warn` oder `error`, wobei `info` der Standard ist. Bei `debug` protokolliert jede Anmeldung und jeder Refresh zusätzlich die Namen, nicht die Werte, der Claims im id\_token sowie die Namen der Userinfo-Claims, wenn `userinfo_fallback` welche geliefert hat, sodass Sie die Einstellungen `email_claim` und `groups_claim` diagnostizieren können, ohne personenbezogene Daten zu protokollieren. Sie wirkt sich nicht auf Audit-Ereignisse aus, die immer ausgegeben werden.

174 174 

175### Zustand175### Zustand

176 176 

177Das Gateway stellt `GET /healthz` als Liveness-Probe und `GET /readyz` als Readiness-Probe bereit. `/readyz` prüft, ob der Speicher erreichbar ist. Wenn Sie [`store.readiness_grace_seconds`](https://code.claude.com/docs/de/claude-apps-gateway-config#store) setzen, meldet `/readyz` bis zu so viele Sekunden lang weiterhin Bereitschaft, nachdem der Speicher nicht mehr antwortet.177Das Gateway stellt `GET /healthz` als Liveness-Probe und `GET /readyz` als Readiness-Probe bereit. `/readyz` prüft, ob der Store erreichbar ist. Wenn Sie [`store.readiness_grace_seconds`](https://code.claude.com/docs/de/claude-apps-gateway-config#store) setzen, meldet `/readyz` bis zu diese Anzahl an Sekunden weiterhin Bereitschaft, nachdem der Store nicht mehr antwortet.

178 178 

179Beide Endpunkte sind von `access_control.allow_cidrs` ausgenommen, sodass Probes auch bei einem abgeschotteten Listener weiter funktionieren.179Beide Endpunkte sind von `access_control.allow_cidrs` ausgenommen, sodass Probes auch auf einem abgeschotteten Listener weiter funktionieren.

180 180 

181Das OAuth-Discovery-Dokument unter `/.well-known/oauth-authorization-server` gibt ebenfalls erst dann `200` zurück, wenn das Laden der Konfiguration, die OIDC-Discovery, die Erstellung des Upstream-Clients und die Postgres-Migration allesamt erfolgreich waren, sodass es zugleich als End-to-End-Startprüfung dient.181Das OAuth-Discovery-Dokument unter `/.well-known/oauth-authorization-server` gibt ebenfalls erst dann `200` zurück, wenn das Laden der Konfiguration, die OIDC-Discovery, der Aufbau des Upstream-Clients und die Postgres-Migration alle erfolgreich waren, sodass es zugleich als End-to-End-Startprüfung dient.

182 182 

183### Gleichzeitige Upstream-Anfragen183### Gleichzeitige Upstream-Anfragen

184 184 

185Standardmäßig sendet jedes Gateway-Replikat höchstens 256 Anfragen gleichzeitig an den Upstream. Eine Streaming-Antwort wird bis zum Ende des Streams auf das Limit angerechnet.185Standardmäßig sendet jedes Gateway-Replikat höchstens 256 Anfragen gleichzeitig an den Upstream. Eine Streaming-Antwort zählt gegen das Limit, bis der Stream endet.

186 186 

187Eine Anfrage, die eintrifft, während ein Replikat am Limit ist, wartet im Gateway auf einen freien Platz. Der Entwickler sieht eine Antwort, die langsam beginnt oder zu hängen scheint. Bei einem Upstream mit `provider: anthropic` gibt eine Anfrage, die länger als [`timeouts.upstream_ttfb_ms`](https://code.claude.com/docs/de/claude-apps-gateway-config#http-tuning) wartet, diesen Upstream auf und schlägt mit einem 502 fehl, wenn kein späterer Upstream sie bedient.187Eine Anfrage, die eintrifft, während ein Replikat am Limit ist, wartet innerhalb des Gateways auf einen freien Platz. Der Entwickler sieht eine Antwort, die langsam beginnt oder zu hängen scheint. Bei einem Upstream mit `provider: anthropic` gibt eine Anfrage, die länger als [`timeouts.upstream_ttfb_ms`](https://code.claude.com/docs/de/claude-apps-gateway-config#http-tuning) wartet, diesen Upstream auf und schlägt mit einem 502 fehl, wenn kein späterer Upstream sie bedient.

188 188 

189Die Startlog-Zeile, die `upstream requests:` enthält, zeigt das wirksame Limit. Solange ein Replikat mehr offene Anfragen als das Limit hat, protokolliert es außerdem höchstens einmal pro Minute eine Warnung, die `client requests are open` enthält.189Die Startup-Log-Zeile, die `upstream requests:` enthält, zeigt das wirksame Limit. Solange ein Replikat mehr offene Anfragen als das Limit hat, protokolliert es zusätzlich höchstens einmal pro Minute eine Warnung, die `client requests are open` enthält.

190 190 

191Um mehr Anfragen gleichzeitig zu bedienen, haben Sie zwei Möglichkeiten:191Um mehr Anfragen gleichzeitig zu bedienen, haben Sie zwei Möglichkeiten:

192 192 

193* Fügen Sie Replikate hinzu.193* Fügen Sie Replikate hinzu.

194* Erhöhen Sie das Limit auf jedem Replikat. Setzen Sie die Umgebungsvariable `BUN_CONFIG_MAX_HTTP_REQUESTS` im Gateway-Container auf eine ganze Zahl von 1 bis 65535 und starten Sie den Container anschließend neu.194* Erhöhen Sie das Limit auf jedem Replikat. Setzen Sie die Umgebungsvariable `BUN_CONFIG_MAX_HTTP_REQUESTS` auf dem Gateway-Container auf eine ganze Zahl von 1 bis 65535 und starten Sie den Container anschließend neu.

195 195 

196Ein Replikat erreicht sein Limit bei einer Anfragerate von etwa dem Limit geteilt durch die durchschnittliche Anzahl an Sekunden, die eine Anfrage offen bleibt. Wenn Anfragen beispielsweise im Durchschnitt 10 Sekunden offen bleiben, erreicht ein Replikat mit dem Standardlimit von 256 dieses bei etwa 26 Anfragen pro Sekunde.196Ein Replikat erreicht sein Limit bei einer Anfragerate von etwa dem Limit geteilt durch die durchschnittliche Anzahl an Sekunden, die eine Anfrage offen bleibt. Wenn Anfragen beispielsweise durchschnittlich 10 Sekunden offen bleiben, erreicht ein Replikat mit dem Standardlimit von 256 dieses bei etwa 26 Anfragen pro Sekunde.

197 197 

198Wenn Sie anhand der CPU automatisch skalieren, stellt ein Replikat am Limit Anfragen in die Warteschlange, ohne ein Hochskalieren auszulösen. Setzen Sie den Zielwert daher unter die CPU-Auslastung, die Ihre Replikate zeigen, wenn sie die Warnung `client requests are open` protokollieren.198Wenn Sie anhand der CPU automatisch skalieren, stellt ein Replikat am Limit Anfragen in die Warteschlange, ohne ein Hochskalieren auszulösen. Setzen Sie den Zielwert daher unter das CPU-Niveau, das Ihre Replikate zeigen, wenn sie die Warnung `client requests are open` protokollieren.

199 199 

200> [!WARNING]200> [!WARNING]

201>201>

202> Jede offene Anfrage belegt Arbeitsspeicher im Gateway-Prozess, während sie streamt und während sie auf einen freien Platz wartet. Auch wenn Sie das Limit bei 256 belassen, wächst der Arbeitsspeicher auf einem überlasteten Replikat weiter, weil wartende Anfragen ihre Request-Bodys behalten. Dimensionieren Sie den Arbeitsspeicher des Containers für die Anzahl der zu Spitzenzeiten offenen Anfragen und beobachten Sie den Arbeitsspeicher, wenn Sie das Limit ändern. Ein Replikat, dem der Arbeitsspeicher ausgeht, wird beendet und bricht jeden Stream ab, den es hält.202> Jede offene Anfrage belegt Arbeitsspeicher im Gateway-Prozess, während sie streamt und während sie auf einen freien Platz wartet. Auch wenn Sie das Limit bei 256 belassen, wächst der Arbeitsspeicher auf einem überlasteten Replikat weiter, weil wartende Anfragen ihre Request-Bodys behalten. Dimensionieren Sie den Arbeitsspeicher des Containers für die Anzahl der Anfragen, die in Spitzenzeiten offen sind, und beobachten Sie den Arbeitsspeicher, wenn Sie das Limit ändern. Ein Replikat, dem der Arbeitsspeicher ausgeht, wird beendet und bricht alle Streams ab, die es hält.

203 203 

204### `API_TIMEOUT_MS` über der Zeit bis zum ersten Byte des Gateways halten204### `API_TIMEOUT_MS` über der Zeit bis zum ersten Byte des Gateways halten

205 205 

206Wenn Sie [`API_TIMEOUT_MS`](https://code.claude.com/docs/de/network-config#streaming-idle-watchdogs) senken, um eine unbeantwortete Anfrage früher erneut zu versuchen, halten Sie den Wert über der Zeit, die das Gateway benötigt, um die ersten Bytes einer Streaming-Antwort zu senden. Eine Anfrage, die länger wartet, läuft in einen Timeout, ebenso jeder Wiederholungsversuch, der genauso lange wartet, bis der Turn mit `Request timed out` endet, sofern die [First-Byte-Deadline](#retry-an-unanswered-request-sooner-with-the-first-byte-deadline) ihn nicht beendet.206Wenn Sie [`API_TIMEOUT_MS`](https://code.claude.com/docs/de/network-config#streaming-idle-watchdogs) senken, um eine unbeantwortete Anfrage früher erneut zu versuchen, halten Sie den Wert über der Zeit, die das Gateway benötigt, um die ersten Bytes einer Streaming-Antwort zu senden. Eine Anfrage, die länger wartet, läuft in einen Timeout, ebenso jeder Wiederholungsversuch, der genauso lange wartet, bis der Turn mit `Request timed out` endet, sofern ihn nicht die [First-Byte-Frist](#retry-an-unanswered-request-sooner-with-the-first-byte-deadline) beendet.

207 207 

208* **`provider: anthropic`**: Setzen Sie `API_TIMEOUT_MS` über die längste Zeit, die Ihr Upstream benötigt, um sein erstes Ereignis zu senden.208* **`provider: anthropic`**: Setzen Sie `API_TIMEOUT_MS` über die längste Zeit, die Ihr Upstream benötigt, um sein erstes Ereignis zu senden.

209* **Jeder andere Upstream**: Setzen Sie den Wert mehr als 20 Sekunden über die längste Zeit, die Ihr Upstream benötigt, um Response-Header zurückzugeben. Das Gateway sendet seinen ersten [Keepalive-`ping`](#deployment) etwa 15 Sekunden nach diesen Headern, sofern das erste Ereignis des Upstreams nicht früher eintrifft. Ein Gateway älter als v2.1.229 sendet keine Pings, verwenden Sie dort also die Regel für `provider: anthropic`.209* **Jeder andere Upstream**: Setzen Sie den Wert mehr als 20 Sekunden über die längste Zeit, die Ihr Upstream benötigt, um Response-Header zurückzugeben. Das Gateway sendet seinen ersten [Keepalive-`ping`](#deployment) etwa 15 Sekunden nach diesen Headern, sofern das erste Ereignis des Upstreams nicht früher eintrifft. Ein Gateway älter als v2.1.229 sendet keine Pings, verwenden Sie dort also die Regel für `provider: anthropic`.

210 210 

211Rechnen Sie zu dieser Zeit noch eine etwaige [Wartezeit auf einen freien Platz](#concurrent-upstream-requests) sowie die Wartezeit bei einem ausgefallenen Upstream vor dem [Failover](https://code.claude.com/docs/de/claude-apps-gateway-config.md#multiple-upstreams) hinzu. Halten Sie den Wert außerdem über der längsten [Nicht-Streaming-Anfrage](https://code.claude.com/docs/de/network-config.md#streaming-idle-watchdogs).211Berücksichtigen Sie zusätzlich zu dieser Zeit jede [Wartezeit auf einen freien Platz](#concurrent-upstream-requests) sowie die Wartezeit auf einen ausgefallenen Upstream vor dem [Failover](https://code.claude.com/docs/de/claude-apps-gateway-config.md#multiple-upstreams). Halten Sie den Wert außerdem über der längsten [Nicht-Streaming-Anfrage](https://code.claude.com/docs/de/network-config.md#streaming-idle-watchdogs).

212 212 

213### Eine unbeantwortete Anfrage mit der First-Byte-Deadline früher erneut versuchen213### Eine unbeantwortete Anfrage mit der First-Byte-Frist früher erneut versuchen

214 214 

215Damit Claude Code eine unbeantwortete Streaming-Anfrage früher erneut versucht, geben Sie ihm eine First-Byte-Deadline, indem Sie [`CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS`](https://code.claude.com/docs/de/env-vars) auf den Rechnern Ihrer Entwickler setzen. Die Deadline begrenzt, wie lange der erste Versuch auf Response-Header wartet. Ohne sie kann dieser Versuch 5 bis 6 Minuten warten. Erfordert Claude Code v2.1.307 oder höher auf dem Rechner des Entwicklers.215Damit Claude Code eine unbeantwortete Streaming-Anfrage früher erneut versucht, geben Sie ihm eine First-Byte-Frist, indem Sie [`CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS`](https://code.claude.com/docs/de/env-vars) auf den Rechnern Ihrer Entwickler setzen. Die Frist begrenzt, wie lange der erste Versuch auf Response-Header wartet. Ohne sie kann dieser Versuch 5 bis 6 Minuten warten. Erfordert Claude Code v2.1.307 oder höher auf dem Rechner des Entwicklers.

216 216 

217Setzen Sie die Variable auf eine positive ganze Zahl in Millisekunden, im [`env`-Block einer Gateway-Richtlinie](#deliver-the-value-in-a-policy) oder in der Shell eines Entwicklers. Halten Sie den Wert über der längsten [Zeit bis zum ersten Byte](#keep-api_timeout_ms-above-the-gateways-time-to-first-byte) Ihres Gateways, sonst kann Claude Code fehlerfreie Anfragen abbrechen und erneut senden, deren Header länger brauchen. Dieses Beispiel setzt 60 Sekunden in der Shell eines Entwicklers:217Setzen Sie die Variable auf eine positive ganze Zahl in Millisekunden, in einem [`env`-Block einer Gateway-Richtlinie](#deliver-the-value-in-a-policy) oder in der Shell eines Entwicklers. Halten Sie den Wert über der längsten [Zeit bis zum ersten Byte](#keep-api_timeout_ms-above-the-gateways-time-to-first-byte) Ihres Gateways, sonst kann Claude Code intakte Anfragen abbrechen und erneut senden, deren Header länger brauchen. Dieses Beispiel setzt 60 Sekunden in der Shell eines Entwicklers:

218 218 

219```bash theme={null}219```bash theme={null}

220export CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS=60000220export CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS=60000

221```221```

222 222 

223Eine unbeantwortete erneut gesendete Anfrage kann 5 bis 6 Minuten warten, bis der [Body-Idle-Timeout](https://code.claude.com/docs/de/network-config.md#streaming-idle-watchdogs) sie beendet und Claude Code sie innerhalb des [Budgets für Wiederholungsversuche](https://code.claude.com/docs/de/errors.md#tune-retry-behavior) erneut versucht. Wenn Sie `API_TIMEOUT_MS` nur gesenkt haben, um früher erneut zu versuchen, entfernen Sie diesen Wert, sonst kann eine einzige unbeantwortete erneut gesendete Anfrage den Turn mit [No response from API](https://code.claude.com/docs/de/errors.md#no-response-from-api) beenden.223Eine unbeantwortete erneut gesendete Anfrage kann 5 bis 6 Minuten warten, bis der [Body-Idle-Timeout](https://code.claude.com/docs/de/network-config.md#streaming-idle-watchdogs) sie beendet und Claude Code sie innerhalb des [Wiederholungsbudgets](https://code.claude.com/docs/de/errors.md#tune-retry-behavior) erneut versucht. Wenn Sie `API_TIMEOUT_MS` nur gesenkt haben, um früher erneut zu versuchen, entfernen Sie diesen Wert, sonst kann eine einzige unbeantwortete erneut gesendete Anfrage den Turn mit [No response from API](https://code.claude.com/docs/de/errors.md#no-response-from-api) beenden.

224 224 

225Um zu bestätigen, dass die Deadline ausgelöst wurde, lassen Sie einen Entwickler Claude Code mit [Debug-Logging](https://code.claude.com/docs/de/network-config.md#verify-your-configuration) starten und durchsuchen Sie anschließend das Log nach `[first-byte] no response headers`.225Um zu bestätigen, dass die Frist ausgelöst wurde, lassen Sie einen Entwickler Claude Code mit [Debug-Logging](https://code.claude.com/docs/de/network-config.md#verify-your-configuration) starten und durchsuchen Sie das Log anschließend nach `[first-byte] no response headers`.

226 226 

227### Verhalten bei Ausfällen227### Verhalten bei Ausfällen

228 228 

229Wenn Postgres ausfällt, bedient das Gateway selbst weiterhin angemeldete Entwickler, und neue Anmeldungen schlagen fehl. Ob Entwickler tatsächlich weiterarbeiten können, hängt davon ab, wie Ihr Orchestrator mit der Bereitschaft umgeht:229Wenn Postgres ausfällt, bedient das Gateway selbst angemeldete Entwickler weiter, neue Anmeldungen schlagen jedoch fehl. Ob Entwickler tatsächlich weiterarbeiten können, hängt davon ab, wie Ihr Orchestrator mit Readiness umgeht:

230 230 

231* **Bestehende Sitzungen**: Bearer-Token werden lokal mit dem JWT-Secret validiert, Sitzungs-Refreshes greifen nicht auf den Speicher zu, und der Gateway-Prozess kann weiterhin Inferenz bedienen231* **Bestehende Sitzungen**: Bearer-Token werden lokal mit dem JWT-Secret validiert, Sitzungs-Refreshes greifen nicht auf den Store zu, und der Gateway-Prozess kann weiterhin Inferenz bedienen

232* **Neue Anmeldungen**: schlagen fehl, bis sich Postgres erholt, weil der Device-Flow und seine Rate-Limit-Zähler in Postgres liegen232* **Neue Anmeldungen**: schlagen fehl, bis sich Postgres erholt, weil der Device-Flow und seine Rate-Limit-Zähler in Postgres liegen

233* **[Durchsetzung von Ausgabenlimits](https://code.claude.com/docs/de/claude-apps-gateway-spend-limits.md#postgres-availability)**: schlägt während des Ausfalls standardmäßig offen fehl, sodass Inferenz weiterhin fließt; stellen Sie sie auf geschlossenes Fehlschlagen um, wenn Sie lieber blockieren als ohne Messung weiterlaufen möchten233* **[Durchsetzung von Ausgabenlimits](https://code.claude.com/docs/de/claude-apps-gateway-spend-limits.md#postgres-availability)**: ist während des Ausfalls standardmäßig fail-open, sodass Inferenz weiter fließt; stellen Sie auf fail-closed um, wenn Sie lieber blockieren als ohne Messung laufen möchten

234* **Bereitschaft**: Standardmäßig meldet `/readyz` Nicht-Bereitschaft, sobald Postgres nicht erreichbar ist, sodass jedes Replikat seine Readiness-Prüfung gleichzeitig nicht besteht. Wo Datenverkehr nur Replikate erreicht, die die Prüfung bestehen, schlägt der gesamte Datenverkehr fehl, einschließlich Inferenz, die das Gateway noch bedienen könnte, bis sich Postgres erholt. Die Liveness-Probe auf `/healthz` besteht währenddessen weiterhin.234* **Readiness**: Standardmäßig meldet `/readyz` „nicht bereit“, sobald Postgres nicht erreichbar ist, sodass jedes Replikat gleichzeitig seine Readiness-Prüfung nicht besteht. Wo Traffic nur Replikate erreicht, die die Prüfung bestehen, schlägt jeglicher Traffic fehl, einschließlich Inferenz, die das Gateway noch bedienen könnte, bis sich Postgres erholt. Die Liveness-Probe auf `/healthz` besteht währenddessen weiterhin.

235 235 

236Wenn Ihr IdP ausfällt, funktionieren bestehende Sitzungen bis `ttl_hours`, und neue Anmeldungen schlagen fehl. Ein Sitzungs-Refresh erhält eine Antwort mit der Aufforderung, es erneut zu versuchen, und ist erfolgreich, sobald der IdP wieder verfügbar ist. Setzen Sie ein längeres `ttl_hours`, wenn Ihr IdP häufige Wartungsfenster hat.236Wenn Ihr IdP ausfällt, funktionieren bestehende Sitzungen bis `ttl_hours`, und neue Anmeldungen schlagen fehl. Ein Sitzungs-Refresh erhält die Antwort, es erneut zu versuchen, und ist erfolgreich, sobald der IdP wieder verfügbar ist. Setzen Sie ein längeres `ttl_hours`, wenn Ihr IdP häufige Wartungsfenster hat.

237 237 

238#### Readiness-Schonfrist238#### Readiness-Kulanzzeit

239 239 

240Damit angemeldete Entwickler während eines kurzen Postgres-Ausfalls, etwa eines Datenbank-Failovers, weiterarbeiten können, setzen Sie [`store.readiness_grace_seconds`](https://code.claude.com/docs/de/claude-apps-gateway-config#store) auf einen Wert, der länger ist als das Failover dauert, zum Beispiel `300`. Bei aktivierten Ausgabenlimits und dem standardmäßigen offenen Fehlschlagen werden Anfragen über ein Replikat, das bereit bleibt, bis zur Erholung von Postgres nicht gemessen. Halten Sie den Wert daher so niedrig, wie es Ihr Failover zulässt. Wenn Sie [`enforcement.fail_closed_on_error: true`](https://code.claude.com/docs/de/claude-apps-gateway-config#enforcement) setzen, verweigert das Gateway die Inferenz angemeldeter Entwickler mit der `429`-Meldung `spend limit unavailable`, bis sich Postgres erholt, auch während Replikate ihre Readiness-Prüfung noch bestehen.240Damit angemeldete Entwickler einen kurzen Postgres-Ausfall wie ein Datenbank-Failover überstehen, setzen Sie [`store.readiness_grace_seconds`](https://code.claude.com/docs/de/claude-apps-gateway-config#store) auf einen Wert, der länger ist als das Failover dauert, zum Beispiel `300`. Bei aktivierten Ausgabenlimits und dem standardmäßigen Fail-open-Verhalten laufen Anfragen über ein Replikat, das bereit bleibt, ohne Messung, bis sich Postgres erholt. Halten Sie den Wert daher so niedrig, wie es Ihr Failover zulässt. Wenn Sie [`enforcement.fail_closed_on_error: true`](https://code.claude.com/docs/de/claude-apps-gateway-config#enforcement) setzen, lehnt das Gateway die Inferenz angemeldeter Entwickler mit der `429`-Meldung `spend limit unavailable` ab, bis sich Postgres erholt, auch während Replikate ihre Readiness-Prüfung noch bestehen.

241 241 

242Die Einstellung erfordert Claude Code v2.1.282 oder höher auf dem Gateway-Server. Ein früheres Gateway verweigert den Start, wenn es den Schlüssel findet. Aktualisieren Sie daher jedes Replikat, bevor Sie ihn hinzufügen. [Upgrades](#upgrades) behandelt das Zurücksetzen.242Die Einstellung erfordert Claude Code v2.1.282 oder höher auf dem Gateway-Server. Ein älteres Gateway verweigert den Start, wenn es den Schlüssel findet. Aktualisieren Sie daher jedes Replikat, bevor Sie ihn hinzufügen. [Upgrades](#upgrades) behandelt Rollbacks.

243 243 

244Wenn Sie die Readiness-Probe stattdessen auf `/healthz` richten, bestehen Replikate sie während eines Ausfalls ebenfalls weiterhin, aber `/healthz` meldet nie Nicht-Bereitschaft, sodass auch ein Replikat, dessen Postgres-Verbindung sich nicht erholt, weiterhin besteht.244Wenn Sie die Readiness-Probe stattdessen auf `/healthz` richten, bestehen Replikate diese während eines Ausfalls ebenfalls weiterhin, aber `/healthz` meldet nie „nicht bereit“, sodass auch ein Replikat, dessen Postgres-Verbindung sich nicht erholt, die Prüfung weiter besteht.

245 245 

246### Rotation des JWT-Secrets246### Rotation des JWT-Secrets

247 247 


249 249 

2501. Generieren Sie ein neues Secret. Stellen Sie es dem Array `session.jwt_secret` voran.2501. Generieren Sie ein neues Secret. Stellen Sie es dem Array `session.jwt_secret` voran.

2512. Rollen Sie das Deployment aus. Neue Token werden mit dem neuen Secret signiert; alte Token werden weiterhin verifiziert.2512. Rollen Sie das Deployment aus. Neue Token werden mit dem neuen Secret signiert; alte Token werden weiterhin verifiziert.

2523. Entfernen Sie nach `ttl_hours` plus einem Puffer das alte Secret und rollen Sie erneut aus.2523. Entfernen Sie nach `ttl_hours` plus einer Sicherheitsmarge das alte Secret und rollen Sie erneut aus.

253 253 

254Die Rotation ist außerdem die einzige Möglichkeit, Sitzungen vor ihrem Ablauf zu beenden: Bearer-Token werden lokal gegen das JWT-Secret validiert, daher gibt es keinen Widerruf pro Sitzung. Wenn Sie das Secret vollständig ersetzen, ohne das alte im Array zu behalten, werden alle ausstehenden Sitzungen auf einmal ungültig. Für das Offboarding einzelner Personen entziehen Sie dem Benutzer die Berechtigung in Ihrem IdP; seine Sitzung endet innerhalb von `ttl_hours`.254Die Rotation ist außerdem die einzige Möglichkeit, Sitzungen vor ihrem Ablauf zu beenden: Bearer-Token werden lokal gegen das JWT-Secret validiert, daher gibt es keinen Widerruf pro Sitzung. Wenn Sie das Secret vollständig ersetzen, ohne das alte im Array zu behalten, werden alle ausstehenden Sitzungen auf einmal ungültig. Für das Offboarding einzelner Personen deprovisionieren Sie den Benutzer in Ihrem IdP; seine Sitzung endet innerhalb von `ttl_hours`.

255 255 

256### Postgres256### Postgres

257 257 

258Das Gateway speichert seinen Zustand in einer PostgreSQL-Datenbank:258Das Gateway speichert seinen Zustand in einer PostgreSQL-Datenbank:

259 259 

260* **Datenbank**: PostgreSQL selbst, selbst gehostet oder verwaltet, in der [Mindestversion](https://code.claude.com/docs/de/claude-apps-gateway#prerequisites) oder höher. Datenbanken, die nur das Postgres-Protokoll implementieren, wie etwa verteilte SQL-Datenbanken, werden nicht unterstützt.260* **Datenbank**: PostgreSQL selbst, selbst gehostet oder verwaltet, in der [Mindestversion](https://code.claude.com/docs/de/claude-apps-gateway#prerequisites) oder höher. Datenbanken, die nur das Postgres-Protokoll implementieren, wie verteilte SQL-Datenbanken, werden nicht unterstützt.

261* **Adresse**: `store.postgres_url` nimmt einen Host entgegen. Wenn die Datenbank mehrere Knoten hat, verwenden Sie die vorgelagerte Adresse, etwa den Endpunkt Ihres verwalteten Dienstes, einen Load Balancer oder eine virtuelle IP. Setzen Sie eine [Readiness-Schonfrist](#readiness-grace-period), die länger ist als ein Failover dauert.261* **Adresse**: `store.postgres_url` akzeptiert einen Host. Wenn die Datenbank mehrere Knoten hat, verwenden Sie die vorgelagerte Adresse, etwa den Endpunkt Ihres verwalteten Dienstes, einen Load Balancer oder eine virtuelle IP. Setzen Sie eine [Readiness-Kulanzzeit](#readiness-grace-period), die länger ist als ein Failover dauert.

262 262 

263Das Gateway verwaltet fünf Datentabellen sowie eine Tabelle `_migrations`, die alle durch seine Migrationen beim Start erstellt werden:263Das Gateway verwaltet fünf Datentabellen sowie eine Tabelle `_migrations`, die alle durch seine Migrationen beim Start erstellt werden:

264 264 


268| `spend` | Ausgabenzähler pro Principal für den laufenden Zeitraum, in Cent | `admin.spend_retention_months`, Standard 13 |268| `spend` | Ausgabenzähler pro Principal für den laufenden Zeitraum, in Cent | `admin.spend_retention_months`, Standard 13 |

269| `spend_limits` | Konfigurierte Ausgabenobergrenzen | Bis zur Löschung über die API |269| `spend_limits` | Konfigurierte Ausgabenobergrenzen | Bis zur Löschung über die API |

270| `admin_audit` | Änderungsverlauf der Admin-API | `admin.audit_retention_days`, Standard 365 |270| `admin_audit` | Änderungsverlauf der Admin-API | `admin.audit_retention_days`, Standard 365 |

271| `principal_emails` | Die zuletzt gesehene E-Mail-Adresse, der Anzeigename und die IdP-Gruppen jedes Principals. Enthält personenbezogene Daten. | `admin.identity_retention_days` seit der letzten Aktivität, Standard 90 |271| `principal_emails` | Zuletzt gesehene E-Mail-Adresse, Anzeigename und IdP-Gruppen jedes Principals. Enthält personenbezogene Daten. | `admin.identity_retention_days` seit der letzten Aktivität, Standard 90 |

272 272 

273Eine 30-Sekunden-Schleife lässt `kv`-Zeilen nach Ablauf ihrer TTL verfallen, und ein stündlicher Durchlauf setzt die Aufbewahrungsfristen für die Ausgabentabellen durch, sodass nichts unbegrenzt wächst. Ohne konfigurierte [Ausgabenlimits](https://code.claude.com/docs/de/claude-apps-gateway-spend-limits.md) wird nur in `kv` geschrieben. Das Gateway wendet seine eigenen Schemamigrationen beim Start und bei jedem Upgrade an, daher benötigt seine Datenbankrolle Rechte zum Erstellen und Ändern von Tabellen. Richten Sie es auf eine Datenbank oder ein Schema, die bzw. das ausschließlich dem Gateway vorbehalten ist, um diese Berechtigung eng zu halten.273Eine 30-Sekunden-Schleife lässt `kv`-Zeilen nach Ablauf ihrer TTL verfallen, und ein stündlicher Durchlauf setzt die Aufbewahrungsfristen für die Ausgabentabellen durch, sodass nichts unbegrenzt wächst. Ohne konfigurierte [Ausgabenlimits](https://code.claude.com/docs/de/claude-apps-gateway-spend-limits.md) wird nur in `kv` geschrieben. Das Gateway wendet seine eigenen Schemamigrationen beim Start und bei jedem Upgrade an, daher benötigt seine Datenbankrolle Rechte zum Erstellen und Ändern von Tabellen. Richten Sie es auf eine Datenbank oder ein Schema, das ausschließlich dem Gateway dient, um diese Berechtigung eng zu halten.

274 274 

275Wenn Ausgabenlimits verwendet werden, bedeutet eine verlorene Datenbank den Verlust der Ausgabenerfassung und der Obergrenzen, nicht nur erneute Anmeldungen der Entwickler. Führen Sie daher regelmäßige Backups durch. Um einen ausgeschiedenen Entwickler sofort zu löschen, statt auf die Aufbewahrungsfrist zu warten, führen Sie `DELETE FROM principal_emails WHERE principal = '<sub>'` direkt aus; damit wird die einzige Tabelle geleert, die seine E-Mail-Adresse, seinen Namen und seine Gruppen enthält. Zeilen in `spend` und `admin_audit` verweisen nur auf das pseudonyme OIDC-`sub`.275Bei Verwendung von Ausgabenlimits bedeutet eine verlorene Datenbank verlorene Ausgabenerfassung und Obergrenzen, nicht nur erneute Anmeldungen der Entwickler. Erstellen Sie daher regelmäßig Backups. Um einen ausgeschiedenen Entwickler sofort zu löschen, statt auf die Aufbewahrungsfrist zu warten, führen Sie `DELETE FROM principal_emails WHERE principal = '<sub>'` direkt aus; damit wird die einzige Tabelle bereinigt, die seine E-Mail-Adresse, seinen Namen und seine Gruppen enthält. Zeilen in `spend` und `admin_audit` verweisen nur auf das pseudonyme OIDC-`sub`.

276 276 

277#### Den Verbindungspool dimensionieren277#### Den Verbindungspool dimensionieren

278 278 

279Jedes Replikat öffnet bis zu [`store.max_connections`](https://code.claude.com/docs/de/claude-apps-gateway-config#store) Postgres-Verbindungen, standardmäßig fünf. Halten Sie Replikate × `store.max_connections` bei oder unter der Anzahl an Verbindungen, die die Datenbank für das Gateway übrig hat:279Jedes Replikat öffnet bis zu [`store.max_connections`](https://code.claude.com/docs/de/claude-apps-gateway-config#store) Postgres-Verbindungen, standardmäßig fünf. Halten Sie Replikate × `store.max_connections` bei oder unter den Verbindungen, die die Datenbank für das Gateway übrig hat:

280 280 

281* **Replikate**: Zählen Sie die Höchstzahl, die gleichzeitig läuft. Gehen Sie von Ihrem Autoscaling-Maximum aus, oder von Ihrer Replikatanzahl, wenn Sie nicht automatisch skalieren, und addieren Sie die zusätzlichen Replikate, die ein Rolling Update startet, bevor es alte beendet. Auf Amazon ECS mit Standardeinstellungen und auf Cloud Run können das noch einmal genauso viele sein.281* **Replikate**: Zählen Sie die Höchstzahl, die gleichzeitig läuft. Beginnen Sie mit Ihrem Autoscaling-Maximum oder Ihrer Replikatanzahl, wenn Sie nicht automatisch skalieren, und addieren Sie die zusätzlichen Replikate, die ein Rolling Update startet, bevor es alte stoppt. Auf Amazon ECS mit Standardeinstellungen und auf Cloud Run können das noch einmal so viele sein.

282* **Übrige Verbindungen**: Nehmen Sie den `max_connections`-Wert der Datenbank und ziehen Sie ab, was die Datenbank reserviert und was andere Clients belegen. PostgreSQL reserviert `superuser_reserved_connections`, standardmäßig drei. Ein verwalteter Dienst kann mehr reservieren, prüfen Sie daher dessen Dokumentation.282* **Verbleibende Verbindungen**: Nehmen Sie den `max_connections`-Wert der Datenbank und ziehen Sie ab, was die Datenbank reserviert und was andere Clients belegen. PostgreSQL reserviert `superuser_reserved_connections`, standardmäßig drei. Ein verwalteter Dienst kann mehr reservieren, prüfen Sie daher dessen Dokumentation.

283 283 

284Nehmen Sie beispielsweise ein Autoscaling-Maximum von sechs, Rolling Updates, die höchstens zwei zusätzliche Replikate starten, und den Standardpool von fünf. Das erfordert (6 + 2) × 5 = 40 Verbindungen. Eine Datenbank mit einem `max_connections` von 50 und zwei von anderen Clients belegten Verbindungen hat 50 − 3 − 2 = 45 übrig, sodass die Summe passt.284Nehmen Sie beispielsweise ein Autoscaling-Maximum von sechs, Rolling Updates, die höchstens zwei zusätzliche Replikate starten, und den Standardpool von fünf. Das erfordert (6 + 2) × 5 = 40 Verbindungen. Eine Datenbank mit einem `max_connections` von 50 und zwei von anderen Clients belegten Verbindungen hat 50 − 3 − 2 = 45 übrig, die Summe passt also.

285 285 

286Wenn Ihre Summe nicht passt, ändern Sie eines der Folgenden:286Wenn Ihre Summe nicht passt, ändern Sie einen der folgenden Punkte:

287 287 

288* **Die Datenbank**: Erhöhen Sie ihren `max_connections`-Wert288* **Die Datenbank**: Erhöhen Sie ihren `max_connections`-Wert

289* **Die Replikate**: Betreiben Sie weniger, oder lassen Sie Ihren Orchestrator bei einem Rolling Update weniger zusätzliche Replikate starten289* **Die Replikate**: Betreiben Sie weniger, oder lassen Sie Ihren Orchestrator bei einem Rolling Update weniger zusätzliche Replikate starten

290* **Den Pool**: Senken Sie `store.max_connections`, halten Sie ihn bei aktivierten [Ausgabenlimits](https://code.claude.com/docs/de/claude-apps-gateway-spend-limits.md) jedoch groß genug für die Last jedes Replikats. Andernfalls können Ausgabenprüfungen beim Warten auf eine Verbindung in einen [Timeout](https://code.claude.com/docs/de/claude-apps-gateway-spend-limits.md#postgres-availability) laufen, und das Gateway protokolliert `spend check failed: spend precheck timed out`.290* **Der Pool**: Senken Sie `store.max_connections`, halten Sie ihn aber bei aktivierten [Ausgabenlimits](https://code.claude.com/docs/de/claude-apps-gateway-spend-limits.md) groß genug für die Last jedes Replikats. Andernfalls können Ausgabenprüfungen beim Warten auf eine Verbindung in einen [Timeout laufen](https://code.claude.com/docs/de/claude-apps-gateway-spend-limits.md#postgres-availability), und das Gateway protokolliert `spend check failed: spend precheck timed out`.

291 291 

292### Upgrades292### Upgrades

293 293 

294Replikate sind zustandslos, sodass bei einem Rolling Restart kein Gateway-Zustand verloren geht. Das Gateway führt Schemamigrationen beim Start aus, was bedeutet, dass das Deployen des neuen Binaries die Datenbank selbst migriert. Gleichzeitig laufende Replikate serialisieren sich über einen Postgres-Advisory-Lock, sodass nur eines jede Migration anwendet.294Replikate sind zustandslos, daher geht bei einem Rolling Restart kein Gateway-Zustand verloren. Das Gateway führt Schemamigrationen beim Start aus, was bedeutet, dass das Deployment der neuen Binary die Datenbank selbst migriert. Gleichzeitige Replikate serialisieren sich über einen Postgres-Advisory-Lock, sodass nur eines jede Migration anwendet.

295 295 

296Wenn Ihr Orchestrator ein Replikat mit `SIGTERM` stoppt, etwa bei einem Rolling Restart oder beim Herunterskalieren, nimmt das Gateway keine neuen Verbindungen mehr an und lässt bereits laufende Anfragen und Streams abschließen, bevor es sich beendet. Es wartet bis zu 25 Sekunden, das sogenannte Drain-Fenster, und schließt dann alles, was noch offen ist. Ein `SIGINT`, etwa Strg+C in einem Terminal, startet denselben Drain-Vorgang, und ein zweites Signal während des Drain-Vorgangs schließt die offenen Anfragen und beendet das Gateway sofort. Das Draining erfordert Gateway v2.1.274 oder höher.296Wenn Ihr Orchestrator ein Replikat mit `SIGTERM` stoppt, etwa bei einem Rolling Restart oder einem Herunterskalieren, nimmt das Gateway keine neuen Verbindungen mehr an und lässt bereits laufende Anfragen und Streams abschließen, bevor es sich beendet. Es wartet bis zu 25 Sekunden, das sogenannte Drain-Fenster, und schließt dann alles, was noch offen ist. Ein `SIGINT`, etwa Ctrl+C in einem Terminal, startet denselben Drain, und ein zweites Signal während des Drains schließt die offenen Anfragen und beendet sich sofort. Draining erfordert Gateway v2.1.274 oder höher.

297 297 

298Lange Generierungen können minutenlang streamen. Erhöhen Sie auf Kubernetes und Amazon ECS beide der folgenden Werte gemeinsam, um diesen Streams mehr Zeit zu geben:298Lange Generierungen können minutenlang streamen. Erhöhen Sie auf Kubernetes und Amazon ECS beide der folgenden Werte zusammen, um diesen Streams mehr Zeit zu geben:

299 299 

300* **Das Drain-Fenster**: Setzen Sie die Umgebungsvariable `CLAUDE_GATEWAY_DRAIN_TIMEOUT_MS` im Gateway-Container auf eine positive ganze Zahl in Millisekunden, etwa `120000`. Das Gateway ignoriert einen Wert in jeder anderen Form, etwa `120s`, und behält den Standardwert von 25 Sekunden bei300* **Das Drain-Fenster**: Setzen Sie die Umgebungsvariable `CLAUDE_GATEWAY_DRAIN_TIMEOUT_MS` auf dem Gateway-Container auf eine positive ganze Zahl in Millisekunden, etwa `120000`. Das Gateway ignoriert einen Wert in jeder anderen Form, etwa `120s`, und behält den Standard von 25 Sekunden bei

301* **Die Schonfrist Ihres Orchestrators**: `terminationGracePeriodSeconds` auf Kubernetes oder `stopTimeout` auf Amazon ECS301* **Die Grace Period Ihres Orchestrators**: `terminationGracePeriodSeconds` auf Kubernetes oder `stopTimeout` auf Amazon ECS

302 302 

303Die Schonfrist beträgt auf beiden Plattformen standardmäßig 30 Sekunden. Halten Sie sie mindestens 5 Sekunden länger als das Drain-Fenster, sonst beendet der Orchestrator das Gateway, bevor der Drain-Vorgang abgeschlossen ist. Addieren Sie auf Kubernetes zusätzlich die Dauer eines etwaigen `preStop`-Hooks, da die Schonfrist zu zählen beginnt, bevor der Hook ausgeführt wird, und nicht erst, wenn das Gateway `SIGTERM` empfängt.303Die Grace Period beträgt auf beiden Plattformen standardmäßig 30 Sekunden. Halten Sie sie mindestens 5 Sekunden länger als das Drain-Fenster, sonst beendet der Orchestrator das Gateway, bevor der Drain abgeschlossen ist. Addieren Sie auf Kubernetes außerdem die Dauer eines etwaigen `preStop`-Hooks, da die Grace Period zu zählen beginnt, bevor der Hook läuft, und nicht erst, wenn das Gateway `SIGTERM` empfängt.

304 304 

305Ihre Plattform kann außerdem begrenzen, wie lange der Drain-Vorgang laufen darf:305Ihre Plattform kann außerdem begrenzen, wie lange der Drain laufen darf:

306 306 

307* **Amazon ECS auf Fargate**: `stopTimeout` erlaubt höchstens 120 Sekunden307* **Amazon ECS auf Fargate**: `stopTimeout` erlaubt höchstens 120 Sekunden

308* **Cloud Run**: stoppt eine Instanz 10 Sekunden nach `SIGTERM`, sodass offene Streams dort höchstens 10 Sekunden erhalten, unabhängig vom Drain-Fenster308* **Cloud Run**: stoppt eine Instanz 10 Sekunden nach `SIGTERM`, sodass offene Streams dort höchstens 10 Sekunden erhalten, unabhängig vom Drain-Fenster

309 309 

310Wenn das Drain-Fenster endet, während noch Anfragen offen sind, protokolliert das Gateway eine Warnung, die `drain window over after` enthält, zählt die abgebrochenen Anfragen und nennt beide zu erhöhenden Einstellungen.310Wenn das Drain-Fenster endet, während noch Anfragen offen sind, protokolliert das Gateway eine Warnung, die `drain window over after` enthält, zählt die abgebrochenen Anfragen und nennt beide Einstellungen, die erhöht werden sollten.

311 311 

312Migrationen werden nur angehängt, daher ist ein Rollback auf ein früheres Binary, das weniger Migrationen kennt, sicher; es ignoriert die zusätzlichen Zeilen. Ein Rollback validiert das YAML außerdem erneut gegen das Schema des älteren Binaries, sodass eine Konfiguration, die einen in der neueren Version eingeführten Schlüssel übernommen hat, beim Start des älteren Binaries fehlschlägt. Entfernen Sie den neuen Schlüssel vor dem Rollback.312Migrationen sind rein additiv, daher ist ein Rollback auf eine frühere Binary, die weniger Migrationen kennt, sicher; sie ignoriert die zusätzlichen Zeilen. Beim Rollback wird das YAML außerdem erneut gegen das Schema der älteren Binary validiert, sodass eine Konfiguration, die einen mit dem neueren Release eingeführten Schlüssel übernommen hat, beim Start der älteren Version fehlschlägt. Entfernen Sie den neuen Schlüssel vor dem Rollback.

313 313 

314Da Sie die Version des Gateways in Ihrem eigenen Image festlegen, erreichen Korrekturen in neuen Claude Code-Versionen, einschließlich Sicherheitskorrekturen, Ihr Deployment erst, wenn Sie die festgelegte Version aktualisieren und erneut deployen. Beziehen Sie das Gateway in denselben Patch-Rhythmus ein, den Sie für andere Dienste verwenden, die Produktions-Anmeldedaten enthalten.314Da Sie die Version des Gateways in Ihrem eigenen Image festlegen, erreichen Korrekturen in neuen Claude Code-Releases, einschließlich Sicherheitskorrekturen, Ihr Deployment erst, wenn Sie die festgelegte Version aktualisieren und erneut deployen. Nehmen Sie das Gateway in denselben Patch-Rhythmus auf, den Sie für andere Dienste verwenden, die Produktions-Anmeldedaten enthalten.

315 315 

316## Sicherheit316## Sicherheit

317 317 


380 380 

381## Fehlerbehebung381## Fehlerbehebung

382 382 

383Für Fragen und Feedback verwenden Sie [Claude-Code-Support](https://support.claude.com/en/collections/14445694-claude-code), oder öffnen Sie ein Issue im [Claude-Code-GitHub-Repository](https://github.com/anthropics/claude-code/issues). Sie können sich auch an Ihr Anthropic-Account-Team wenden. Wenn Sie ein Problem melden, beziehen Sie ein:383Für Fragen und Feedback nutzen Sie den [Claude Code-Support](https://support.claude.com/en/collections/14445694-claude-code) oder erstellen Sie ein Issue im [Claude Code GitHub-Repository](https://github.com/anthropics/claude-code/issues). Sie können sich auch an Ihr Anthropic-Account-Team wenden. Geben Sie beim Melden eines Problems Folgendes an:

384 384 

385* **Gateway-Problem**: Das Gateway-Stderr für das relevante Fenster, Ihre `gateway.yaml` mit Geheimnissen redigiert, die Gateway-Version, auf der Landingpage unter `/` und im `x-cc-gateway-version`-Response-Header auf `/managed/settings` angezeigt, und was sich kürzlich geändert hat385* **Gateway-Problem**: die stderr-Ausgabe des Gateways für den betreffenden Zeitraum, Ihre `gateway.yaml` mit geschwärzten Secrets, die Gateway-Version, die auf der Startseite unter `/` und im Response-Header `x-cc-gateway-version` von `/managed/settings` angezeigt wird, sowie die jüngsten Änderungen

386* **Anmeldungs-Problem**: Der Entwickler führt `claude --debug-file ./claude-debug.txt` aus, reproduziert und sendet diese Datei plus das Gateway-Audit-Protokoll für dasselbe Fenster386* **Anmeldeproblem**: Der Entwickler führt `claude --debug-file ./claude-debug.txt` aus, reproduziert das Problem und sendet diese Datei zusammen mit dem Audit-Log des Gateways für denselben Zeitraum

387* **Inferenz-Problem**: Das angeforderte Modell, die konfigurierten Upstreams und das Gateway-Audit-Protokoll für die Anfrage, das aufzeichnet, welcher Upstream sie bedient hat und den Response-Status387* **Inferenzproblem**: das angefragte Modell, die konfigurierten Upstreams und das Audit-Log des Gateways für die Anfrage, das festhält, welcher Upstream sie bedient hat und welchen Antwortstatus sie hatte

388 388 

389Die Standardfehlerausgabe des Gateways enthält den Audit-Ereignisstrom, das Audit-Protokoll zeichnet Entwickleridentitäten auf, und die Debug-Datei zeichnet Hook- und MCP-Serverausgaben von der Maschine des Entwicklers auf. Überprüfen und redigieren Sie diese, bevor Sie sie in einem öffentlichen Problem posten.389Die stderr-Ausgabe des Gateways enthält den Audit-Event-Stream, das Audit-Log enthält die Identitäten der Entwickler, und die Debug-Datei enthält die Ausgabe von Hooks und MCP-Servern vom Rechner des Entwicklers. Prüfen und schwärzen Sie diese Daten, bevor Sie sie in einem öffentlichen Issue veröffentlichen.

390 390 

391| Symptom | Ursache | Behebung |391| Symptom | Ursache | Lösung |

392| - | - | - |392| - | - | - |

393| Das `/login` eines Entwicklers zeigt den Standard-Account-Picker statt des **Cloud-Gateway**-Bildschirms | `forceLoginMethod` oder `forceLoginGatewayUrl` ist nicht in verwalteten Einstellungen auf dieser Maschine gesetzt | Stellen Sie die [verwaltete Einstellungsdatei](https://code.claude.com/docs/de/claude-apps-gateway#set-the-gateway-url) auf dem Gerät bereit; `/login` liest die Gateway-URL von dort |393| Das `/login` eines Entwicklers zeigt die Standard-Kontoauswahl statt des Bildschirms **Cloud gateway** | `forceLoginMethod` oder `forceLoginGatewayUrl` ist in den verwalteten Einstellungen auf diesem Rechner nicht gesetzt | Stellen Sie die [Datei mit den verwalteten Einstellungen](https://code.claude.com/docs/de/claude-apps-gateway#set-the-gateway-url) auf dem Gerät bereit; `/login` liest die Gateway-URL von dort |

394| Die Anfragen eines Entwicklers schlagen mit `Not signed in to the Cloud gateway — run /login.` fehl | Die verwalteten Einstellungen der Maschine setzen `forceLoginMethod: "gateway"` oder `forceLoginGatewayUrl`, und die Sitzung hat keine Gateway-Anmeldung. Eine verbleibende claude.ai-Anmeldung erfüllt die Anforderung nicht. | Lassen Sie den Entwickler `/login` ausführen und die Gateway-Anmeldung abschließen. Siehe auch [Administrator-Richtlinie erfordert eine Cloud-Gateway-Anmeldung](https://code.claude.com/docs/de/errors.md#administrator-policy-requires-a-cloud-gateway-sign-in). |394| Die Anfragen eines Entwicklers schlagen fehl mit `Not signed in to the Cloud gateway — run /login.` | Die verwalteten Einstellungen des Rechners setzen `forceLoginMethod: "gateway"` oder `forceLoginGatewayUrl`, und die Sitzung hat keine Gateway-Anmeldung. Eine verbliebene claude.ai-Anmeldung erfüllt diese Anforderung nicht. | Lassen Sie den Entwickler `/login` ausführen und die Gateway-Anmeldung abschließen. Siehe auch [Administrator policy requires a Cloud gateway sign-in](https://code.claude.com/docs/de/errors.md#administrator-policy-requires-a-cloud-gateway-sign-in). |

395| Claude Desktop meldet, dass seine Bootstrap-Konfiguration nicht abgerufen werden konnte | `/user/bootstrap` gab 404 zurück: die Richtlinie, die dem Benutzer entspricht, trägt keinen `desktop`-Schlüssel, oder es wurde keine Richtlinie gefunden. Das Gateway-Audit-Protokoll zeichnet jede Ablehnung als `desktop_bootstrap.denied` mit dem Grund auf. | Fügen Sie einen `desktop`-Block zur Richtlinie hinzu, die dem Benutzer entspricht, oder zur `match: {}`-Basisebene; ein leeres `desktop: {}` reicht aus. Siehe [Claude-Desktop-Overlay](https://code.claude.com/docs/de/claude-apps-gateway-config.md#claude-desktop-overlay). |395| Claude Desktop meldet, dass seine Bootstrap-Konfiguration nicht abgerufen werden konnte | `/user/bootstrap` hat 404 zurückgegeben: Die zum Benutzer passende Richtlinie enthält keinen `desktop`-Schlüssel, oder keine Richtlinie hat gepasst. Das Audit-Log des Gateways protokolliert jede Ablehnung als `desktop_bootstrap.denied` mit dem Grund. | Fügen Sie der zum Benutzer passenden Richtlinie oder der Basisebene `match: {}` einen `desktop`-Block hinzu; ein leeres `desktop: {}` genügt. Siehe [Claude Desktop-Overlay](https://code.claude.com/docs/de/claude-apps-gateway-config.md#claude-desktop-overlay). |

396| Das Audit-Log zeigt `auth.denied` mit `reason: invalid_token` auf `/v1/logs` oder `/v1/metrics` | Sie haben [`otelHeadersHelper`](https://code.claude.com/docs/de/settings-reference#otelheadershelper) in den verwalteten Einstellungen einer Maschine gesetzt. In einer Claude-Desktop-Sitzung auf dieser Maschine sendet Claude Code den `Authorization`-Header aus dem Helper anstelle des Sitzungs-Tokens an das Telemetrie-Relay des Gateways. Wo Claude Desktop eine Claude-Code-Version vor v2.1.307 bündelt, erhalten Sie dieselbe Ablehnung, wenn Sie in diesen Einstellungen einen `Authorization`-Header in `OTEL_EXPORTER_OTLP_HEADERS` oder in einer signalspezifischen Form setzen. | Entfernen Sie den Helper aus diesen Einstellungen. Wo Claude Desktop eine Claude-Code-Version vor v2.1.307 bündelt, entfernen Sie die Variable. |396| Das Audit-Log zeigt `auth.denied` mit `reason: invalid_token` für `/v1/logs` oder `/v1/metrics` | Sie haben [`otelHeadersHelper`](https://code.claude.com/docs/de/settings-reference#otelheadershelper) in den verwalteten Einstellungen eines Rechners gesetzt. In einer Claude Desktop-Sitzung auf diesem Rechner sendet Claude Code den `Authorization`-Header aus dem Helper anstelle des Sitzungs-Tokens an das Telemetrie-Relay des Gateways. Wenn Claude Desktop Claude Code in einer Version vor v2.1.307 mitliefert, erhalten Sie dieselbe Ablehnung, wenn Sie in diesen Einstellungen einen `Authorization`-Header in `OTEL_EXPORTER_OTLP_HEADERS` oder einer signalspezifischen Variante setzen. | Entfernen Sie den Helper aus diesen Einstellungen. Wenn Claude Desktop Claude Code in einer Version vor v2.1.307 mitliefert, entfernen Sie die Variable. |

397| Startup zeigt `Gateway login is configured in managed settings, but this Claude Code build does not include Cloud gateway support.` | Der installierte Claude-Code-Build ist älter als die Gateway-Unterstützung | Lassen Sie den Entwickler Claude Code auf eine Version aktualisieren, die Cloud-Gateway-Unterstützung enthält |397| Beim Start erscheint `Gateway login is configured in managed settings, but this Claude Code build does not include Cloud gateway support.` | Der installierte Claude Code-Build ist älter als die Gateway-Unterstützung | Lassen Sie den Entwickler Claude Code auf ein Release aktualisieren, das Cloud gateway-Unterstützung enthält |

398| Startup beendet mit `Administrator policy requires a Cloud gateway sign-in on this machine` | Die Umgebung des Entwicklers setzt `ANTHROPIC_API_KEY` oder `ANTHROPIC_AUTH_TOKEN`, ihre Einstellungen konfigurieren einen [`apiKeyHelper`](https://code.claude.com/docs/de/settings-reference#apikeyhelper), oder ein API-Schlüssel aus einer früheren Claude-Console-Anmeldung ist noch gespeichert | Lassen Sie den Entwickler jeden löschen, der zutrifft: die Variable aufheben, den `apiKeyHelper`-Eintrag entfernen, oder `claude auth logout` ausführen, um den gespeicherten Schlüssel zu entfernen. Eine Sitzung, die einen Cloud-Provider mit `CLAUDE_CODE_USE_*` auswählt, startet dann ohne Anmeldung; für jede andere Sitzung lassen Sie ihn `claude` starten und sich mit `/login` anmelden. Siehe auch [Administrator-Richtlinie erfordert eine Cloud-Gateway-Anmeldung](https://code.claude.com/docs/de/errors.md#administrator-policy-requires-a-cloud-gateway-sign-in). |398| Der Start bricht ab mit `Administrator policy requires a Cloud gateway sign-in on this machine` | Die Umgebung des Entwicklers setzt `ANTHROPIC_API_KEY` oder `ANTHROPIC_AUTH_TOKEN`, seine Einstellungen konfigurieren einen [`apiKeyHelper`](https://code.claude.com/docs/de/settings-reference#apikeyhelper), oder ein API-Schlüssel aus einer früheren Claude Console-Anmeldung ist noch gespeichert | Lassen Sie den Entwickler jeden zutreffenden Punkt bereinigen: die Variable entfernen, den `apiKeyHelper`-Eintrag entfernen oder `claude auth logout` ausführen, um den gespeicherten Schlüssel zu entfernen. Eine Sitzung, die mit `CLAUDE_CODE_USE_*` einen Cloud-Anbieter auswählt, startet dann ohne Anmeldung; bei allen anderen Sitzungen lassen Sie den Entwickler `claude` starten und sich mit `/login` anmelden. Siehe auch [Administrator policy requires a Cloud gateway sign-in](https://code.claude.com/docs/de/errors.md#administrator-policy-requires-a-cloud-gateway-sign-in). |

399| Startup oder `/login` meldet `Claude Code may not be enabled for your organization` nach einer 403 beim Laden der verwalteten Einstellungen | Das Gateway oder etwas davor hat die `/managed/settings`-Anfrage mit 403 beantwortet. Die Gateway-eigene Einstellungsroute antwortet niemals mit 403. Der Status stammt von den [`access_control`](https://code.claude.com/docs/de/claude-apps-gateway-config#http-tuning)-IP-Überprüfungen oder von einem Proxy oder WAF vor dem Gateway. Das Audit-Protokoll zeichnet eine IP-Überprüfungs-Ablehnung als `access.denied` mit dem Grund auf. Der Entwickler bleibt angemeldet. | Überprüfen Sie das Audit-Protokoll auf `access.denied` zum Zeitpunkt des Fehlers und beheben Sie die `access_control`-Listen oder das Front-End, dann lassen Sie den Entwickler `claude` erneut starten |399| Der Start oder `/login` meldet `Claude Code may not be enabled for your organization` nach einem 403 beim Laden der verwalteten Einstellungen | Das Gateway oder etwas davor hat die Anfrage an `/managed/settings` mit 403 beantwortet. Die eigene Einstellungsroute des Gateways antwortet nie mit 403. Der Status stammt aus den IP-Prüfungen von [`access_control`](https://code.claude.com/docs/de/claude-apps-gateway-config#http-tuning) oder von einem Proxy oder einer WAF vor dem Gateway. Das Audit-Log protokolliert eine Ablehnung durch die IP-Prüfung als `access.denied` mit dem Grund. Der Entwickler bleibt angemeldet. | Suchen Sie im Audit-Log zum Zeitpunkt des Fehlers nach `access.denied` und korrigieren Sie die `access_control`-Listen oder das Frontend; lassen Sie den Entwickler dann `claude` erneut starten |

400| CLI `/login`: `The gateway is limiting sign-in attempts right now`, oder `Request failed with status code 429` bei älteren Versionen. Die `/device`-Seite kann `Too many attempts` für Entwickler anzeigen, die es noch nicht versucht haben | Das Pro-IP-Anmeldungs-Ratenlimit wurde erreicht. Entweder deckt `listen.trusted_proxies` den Load-Balancer nicht ab, daher teilen alle Entwickler seine Adresse, oder viele Entwickler teilen eine NAT- oder VPN-Ausgangsadresse. Audit-Ereignisse mit `result: rate_limited` zeigen dieselbe eine oder wenige `client_ip`-Werte. | Setzen Sie `listen.trusted_proxies` zuerst auf die Quellbereiche des Load-Balancers, dann erhöhen Sie `rate_limits`, wenn Entwickler immer noch Adressen teilen. Siehe [Große Rollouts](#large-rollouts). |400| CLI-`/login`: `The gateway is limiting sign-in attempts right now`, oder `Request failed with status code 429` bei älteren Versionen. Die Seite `/device` kann Entwicklern, die es noch nicht versucht haben, `Too many attempts` anzeigen | Das Rate-Limit für Anmeldungen pro IP wurde erreicht. Entweder deckt `listen.trusted_proxies` den Load Balancer nicht ab, sodass sich alle Entwickler dessen Adresse teilen, oder viele Entwickler teilen sich eine NAT- oder VPN-Egress-Adresse. Audit-Events mit `result: rate_limited` zeigen denselben oder wenige `client_ip`-Werte. | Setzen Sie `listen.trusted_proxies` zuerst auf die Quellbereiche des Load Balancers und erhöhen Sie dann `rate_limits`, falls sich Entwickler weiterhin Adressen teilen. Siehe [Große Rollouts](#large-rollouts). |

401| CLI `/login`: `Gateway hosts must be on your organization's private network; <host> resolves to the public (or unrecognized) address <ip>` | Der Gateway-Hostname wird zu mindestens einer öffentlichen IP-Adresse aufgelöst. Claude Code überprüft jede aufgelöste Adresse und erfordert, dass jede privat ist. Eine häufige Ursache ist ein Dual-Stack-Name, bei dem eine Familie zu einer öffentlichen Adresse aufgelöst wird, einschließlich AWS-interner Dual-Stack-Load-Balancer, die öffentliche AAAA-Adressen zurückgeben. | Lassen Sie den Gateway-Namen nur zu privaten Adressen auf Entwicklermaschinen auflösen. Für einen Dual-Stack-Namen löschen Sie den öffentlichen Datensatz oder bedienen Sie einen separaten internen DNS-Namen. Siehe die [Private-Network-Voraussetzung](https://code.claude.com/docs/de/claude-apps-gateway#prerequisites). Wenn die Adresse öffentlicher Adressraum ist, den Ihre Organisation besitzt und intern nutzt, [deklarieren Sie diesen Block](https://code.claude.com/docs/de/claude-apps-gateway#allow-a-gateway-on-public-address-space-you-own) stattdessen. |401| CLI-`/login`: `Gateway hosts must be on your organization's private network; <host> resolves to the public (or unrecognized) address <ip>` | Der Hostname des Gateways wird zu mindestens einer öffentlichen IP-Adresse aufgelöst. Claude Code prüft jede aufgelöste Adresse und verlangt, dass alle privat sind. Eine häufige Ursache ist ein Dual-Stack-Name, bei dem eine Adressfamilie zu einer öffentlichen Adresse aufgelöst wird, darunter interne Dual-Stack-Load-Balancer von AWS, die AAAA-Adressen aus öffentlichen Bereichen zurückgeben. | Sorgen Sie dafür, dass der Gateway-Name auf den Rechnern der Entwickler nur zu privaten Adressen aufgelöst wird. Entfernen Sie bei einem Dual-Stack-Namen den Eintrag aus dem öffentlichen Bereich oder stellen Sie einen separaten, rein internen DNS-Namen bereit. Siehe die [Voraussetzung zum privaten Netzwerk](https://code.claude.com/docs/de/claude-apps-gateway#prerequisites). Wenn die Adresse zu einem öffentlichen Adressraum gehört, der Ihrer Organisation gehört und intern genutzt wird, [deklarieren Sie stattdessen diesen Block](https://code.claude.com/docs/de/claude-apps-gateway#allow-a-gateway-on-public-address-space-you-own). |

402| CLI `/login`: `Gateway login would go through proxy <proxy>, which is not on a private network` | Ein `HTTPS_PROXY` oder `HTTP_PROXY` gilt für den Gateway-Host und der Proxy-Hostname wird zu einer öffentlichen Adresse aufgelöst. Ein Proxy, dessen Host nur zu privaten Adressen aufgelöst wird, ist erlaubt und löst diesen Fehler nicht aus | Fügen Sie den Gateway-Host zu `NO_PROXY` auf der Entwicklermaschine hinzu, damit die Verbindung direkt ist, oder verwenden Sie einen Proxy, dessen Hostname zu privaten Adressen aufgelöst wird. Die Nachricht benennt den genauen `NO_PROXY`-Eintrag, der hinzugefügt werden soll |402| CLI-`/login`: `Gateway login would go through proxy <proxy>, which is not on a private network` | Ein `HTTPS_PROXY` oder `HTTP_PROXY` gilt für den Gateway-Host, und der Hostname des Proxys wird zu einer öffentlichen Adresse aufgelöst. Ein Proxy, dessen Host nur zu privaten Adressen aufgelöst wird, ist erlaubt und löst diesen Fehler nicht aus | Fügen Sie den Gateway-Host auf dem Rechner des Entwicklers zu `NO_PROXY` hinzu, damit die Verbindung direkt erfolgt, oder verwenden Sie einen Proxy, dessen Hostname zu privaten Adressen aufgelöst wird. Die Meldung nennt den genauen `NO_PROXY`-Eintrag, den Sie hinzufügen müssen |

403| CLI `/login`: `Claude Code only signs in to <host> from inside its declared network <block> (managed settings), and this machine is connecting from <ip>, outside it` | Das Gateway befindet sich auf einem Block, der in [`gatewayInternalNetworks`](https://code.claude.com/docs/de/claude-apps-gateway#allow-a-gateway-on-public-address-space-you-own) deklariert ist, und die Maschine des Entwicklers hat es von einer Adresse außerhalb dieses Blocks erreicht: ein VPN-Adresspool, ein Container- oder WSL2-NAT-Segment, oder ein Netzwerk, das nicht Ihres ist | Lassen Sie den Entwickler `/login` vom Host-Betriebssystem in Ihrem Netzwerk ausführen. Wenn die angezeigte Adresse auch Ihr eigener öffentlicher Adressraum der Organisation ist, ersetzen Sie den Gateway-Eintrag durch einen Block, der beide abdeckt, bis zu `/8`; ein zweiter, überlappender Eintrag wird abgelehnt. Wenn kein Block beide abdeckt, siehe [Eine Adresse für das Gateway wählen](#choose-an-address-for-the-gateway) |403| CLI-`/login`: `Claude Code only signs in to <host> from inside its declared network <block> (managed settings), and this machine is connecting from <ip>, outside it` | Das Gateway liegt in einem in [`gatewayInternalNetworks`](https://code.claude.com/docs/de/claude-apps-gateway#allow-a-gateway-on-public-address-space-you-own) deklarierten Block, und der Rechner des Entwicklers hat es von einer Adresse außerhalb dieses Blocks erreicht: einem VPN-Adresspool, einem NAT-Segment eines Containers oder von WSL2 oder einem Netzwerk, das nicht Ihnen gehört | Lassen Sie den Entwickler `/login` vom Host-Betriebssystem in Ihrem Netzwerk ausführen. Wenn die angezeigte Adresse ebenfalls zum öffentlichen Adressraum Ihrer Organisation gehört, ersetzen Sie den Eintrag des Gateways durch einen Block, der beide abdeckt, bis zu `/8`; ein zweiter, überlappender Eintrag wird abgelehnt. Wenn kein Block beide abdeckt, siehe [Eine Adresse für das Gateway wählen](#choose-an-address-for-the-gateway) |

404| CLI `/login`: `Every address for gateway host <host> must be inside its declared network <block>, and it also resolves to <ip>` | Der Gateway-Name wird zu einer Adresse außerhalb des in [`gatewayInternalNetworks`](https://code.claude.com/docs/de/claude-apps-gateway#allow-a-gateway-on-public-address-space-you-own) deklarierten Blocks aufgelöst: eine zweite Website oder ein IPv6-Datensatz auf einem Dual-Stack-Namen. Unter einem deklarierten Block muss jeder Datensatz innerhalb dieses einen IPv4-Blocks liegen, private und IPv6-Adressen eingeschlossen | Veröffentlichen Sie nur Datensätze innerhalb des Blocks für den Gateway-Namen auf Entwicklermaschinen, oder bedienen Sie einen separaten internen Namen |404| CLI-`/login`: `Every address for gateway host <host> must be inside its declared network <block>, and it also resolves to <ip>` | Der Name des Gateways wird zu einer Adresse außerhalb des in [`gatewayInternalNetworks`](https://code.claude.com/docs/de/claude-apps-gateway#allow-a-gateway-on-public-address-space-you-own) deklarierten Blocks aufgelöst: ein zweiter Standort oder ein IPv6-Eintrag bei einem Dual-Stack-Namen. Bei einem deklarierten Block muss jeder Eintrag innerhalb dieses einen IPv4-Blocks liegen, private und IPv6-Adressen eingeschlossen | Veröffentlichen Sie für den Gateway-Namen auf den Rechnern der Entwickler nur Einträge innerhalb des Blocks, oder stellen Sie einen separaten, rein internen Namen bereit |

405| CLI `/login`: `<host> is on the declared network <block>, which Claude Code checks over a direct connection, not through an HTTP proxy` | Ein `HTTPS_PROXY` oder `HTTP_PROXY` gilt für ein Gateway auf einem deklarierten Block | Fügen Sie auf der Entwicklermaschine den `NO_PROXY`-Eintrag hinzu, den die Nachricht benennt |405| CLI-`/login`: `<host> is on the declared network <block>, which Claude Code checks over a direct connection, not through an HTTP proxy` | Ein `HTTPS_PROXY` oder `HTTP_PROXY` gilt für ein Gateway in einem deklarierten Block | Fügen Sie auf dem Rechner des Entwicklers den in der Meldung genannten `NO_PROXY`-Eintrag hinzu |

406| CLI `/login`: eine Nachricht, die mit `gatewayInternalNetworks in managed settings` beginnt | Der Wert verstößt gegen eine der [Validierungsregeln](https://code.claude.com/docs/de/claude-apps-gateway#allow-a-gateway-on-public-address-space-you-own), und die Nachricht benennt welche. Bis Sie es beheben, lehnt Claude Code jede neue Gateway-`/login` auf der Maschine ab, Gateways auf privaten Adressen eingeschlossen; bestehende Anmeldungen funktionieren weiterhin | Korrigieren Sie in der verwalteten Einstellungsquelle, die Sie bereitstellen, den Eintrag, den die Nachricht benennt, dann führen Sie `/login` erneut aus |406| CLI-`/login`: eine Meldung, die mit `gatewayInternalNetworks in managed settings` beginnt | Der Wert verstößt gegen eine der [Validierungsregeln](https://code.claude.com/docs/de/claude-apps-gateway#allow-a-gateway-on-public-address-space-you-own), und die Meldung nennt, gegen welche. Bis Sie das korrigieren, lehnt Claude Code jedes neue Gateway-`/login` auf dem Rechner ab, auch für Gateways mit privaten Adressen; bestehende Anmeldungen funktionieren weiterhin | Korrigieren Sie in der Quelle der verwalteten Einstellungen, die Sie bereitstellen, den in der Meldung genannten Eintrag und führen Sie `/login` dann erneut aus |

407| CLI `/login`: `Could not resolve the configured HTTP proxy` | Der Hostname in `HTTPS_PROXY` oder `HTTP_PROXY` wird von der Entwicklermaschine nicht aufgelöst, typischerweise weil sie nicht mit dem Unternehmens-Netzwerk verbunden ist | Lassen Sie den Entwickler sich mit Ihrem Netzwerk oder VPN verbinden und versuchen Sie erneut, oder beheben Sie die Proxy-URL |407| CLI-`/login`: `Could not resolve the configured HTTP proxy` | Der Hostname in `HTTPS_PROXY` oder `HTTP_PROXY` lässt sich vom Rechner des Entwicklers aus nicht auflösen, meist weil dieser nicht mit dem Unternehmensnetzwerk verbunden ist | Lassen Sie den Entwickler eine Verbindung zu Ihrem Netzwerk oder VPN herstellen und es erneut versuchen, oder korrigieren Sie die Proxy-URL |

408| CLI `/login`: `Could not resolve gateway host <host>` | Die Maschine kann den internen DNS-Namen des Gateways nicht auflösen, typischerweise weil sie nicht im Unternehmens-Netzwerk ist | Lassen Sie den Entwickler sich mit Ihrem Netzwerk oder VPN verbinden und versuchen Sie dann `/login` erneut |408| CLI-`/login`: `Could not resolve gateway host <host>` | Der Rechner kann den internen DNS-Namen des Gateways nicht auflösen, meist weil er sich nicht im Unternehmensnetzwerk befindet | Lassen Sie den Entwickler eine Verbindung zu Ihrem Netzwerk oder VPN herstellen und `/login` dann erneut versuchen |

409| Boot beendet mit einem Konfigurationsvalidierungsfehler, der `store.postgres_url` benennt | Kein Postgres konfiguriert; das Gateway erfordert Postgres | Setzen Sie `store.postgres_url`. Für lokale Entwicklung verwenden Sie einen Wegwerf-Container: `docker run --rm -p 5432:5432 -e POSTGRES_HOST_AUTH_METHOD=trust postgres`. |409| Der Start bricht mit einem Konfigurationsvalidierungsfehler ab, der `store.postgres_url` nennt | Kein Postgres konfiguriert; das Gateway benötigt Postgres | Setzen Sie `store.postgres_url`. Verwenden Sie für die lokale Entwicklung einen Wegwerf-Container: `docker run --rm -p 5432:5432 -e POSTGRES_HOST_AUTH_METHOD=trust postgres`. |

410| Boot beendet: `store.postgres_url in <path> is not a URL the gateway can read`, oder vor v2.1.290 ein bloßes `Invalid URL` oder `URI error` | Die URL kann nicht geparst werden, zum Beispiel weil sie mehr als einen Host auflistet oder ihr Passwort ein nicht kodiertes `/`, `?`, `#` oder `%` enthält | Geben Sie [einen Host](#postgres) an, und verschieben Sie das Passwort in [`store.password`](https://code.claude.com/docs/de/claude-apps-gateway-config#store) |410| Der Start bricht ab: `store.postgres_url in <path> is not a URL the gateway can read`, oder vor v2.1.290 ein bloßes `Invalid URL` oder `URI error` | Die URL kann nicht geparst werden, zum Beispiel weil sie mehr als einen Host auflistet oder ihr Passwort ein nicht kodiertes `/`, `?`, `#` oder `%` enthält | Geben Sie [einen Host](#postgres) an und verschieben Sie das Passwort nach [`store.password`](https://code.claude.com/docs/de/claude-apps-gateway-config#store) |

411| Boot beendet: `requires the native binary` | Läuft unter Node statt der nativen Binärdatei | Installieren Sie Claude Code mit einer der [Standalone-Installationsmethoden](https://code.claude.com/docs/de/setup.md) |411| Der Start bricht ab: `requires the native binary` | Ausführung unter Node statt mit der nativen Binärdatei | Installieren Sie Claude Code mit einer der [eigenständigen Installationsmethoden](https://code.claude.com/docs/de/setup.md) |

412| Boot beendet mit einem OIDC-Discovery-Fehler nach `config.load` | `oidc.issuer` nicht erreichbar oder TLS-Kette nicht vertraut | Überprüfen Sie, dass der Aussteller vom Pod erreichbar ist und `/.well-known/openid-configuration` bedient. Setzen Sie `ca_cert_pem` für private PKI. Wenn der Pod den IdP nur über einen Forward-Proxy erreicht, setzen Sie [`oidc.use_proxy: true`](https://code.claude.com/docs/de/claude-apps-gateway-config#idp-requests-through-a-forward-proxy); bei Versionen vor v2.1.227 geben Sie dem Pod stattdessen eine direkte Route zu jedem der IdP-Endpunkte. Wenn der Pod auch den Hostnamen des IdP nicht auflösen kann, oder der Proxy verweigert `CONNECT` zu einer IP-Adresse, siehe [Nur-Proxy-Ausgang](https://code.claude.com/docs/de/claude-apps-gateway-config.md#proxy-only-egress), das v2.1.277 oder später erfordert. |412| Der Start bricht nach `config.load` mit einem OIDC-Discovery-Fehler ab | `oidc.issuer` nicht erreichbar, oder die TLS-Kette ist nicht vertrauenswürdig | Prüfen Sie, ob der Issuer vom Pod aus erreichbar ist und `/.well-known/openid-configuration` bereitstellt. Setzen Sie `ca_cert_pem` für eine private PKI. Wenn der Pod den IdP nur über einen Forward-Proxy erreicht, setzen Sie [`oidc.use_proxy: true`](https://code.claude.com/docs/de/claude-apps-gateway-config#idp-requests-through-a-forward-proxy); geben Sie dem Pod bei Versionen vor v2.1.227 stattdessen eine direkte Route zu jedem Endpunkt des IdP. Wenn der Pod zusätzlich den Hostnamen des IdP nicht auflösen kann oder der Proxy `CONNECT` zu einer IP-Adresse ablehnt, siehe [Egress nur über Proxy](https://code.claude.com/docs/de/claude-apps-gateway-config.md#proxy-only-egress), was v2.1.277 oder neuer erfordert. |

413| Boot beendet mit einem Postgres-Berechtigungsfehler | Die Datenbankrolle fehlen DDL-Rechte auf ihrem Schema | Gewähren Sie der Rolle `CREATE` auf dem Gateway-Schema, damit sie seine Tabellen beim Boot erstellen und ändern kann |413| Der Start bricht mit einem Postgres-Berechtigungsfehler ab | Der Datenbankrolle fehlen DDL-Rechte für ihr Schema | Erteilen Sie der Rolle `CREATE` für das Schema des Gateways, damit es beim Start seine Tabellen erstellen und ändern kann |

414| Log: `remaining connection slots are reserved` oder `sorry, too many clients already` von PostgreSQL. Die Meldung erscheint in den `postgres connection closed`-Warnungen laufender Replikate oder im Boot-Log eines neuen Replikats. Dort kann `remaining connection slots are reserved` auf `attempt 1 of 3` folgen, und das Replikat startet möglicherweise trotzdem. | Die Replikate fordern mehr Verbindungen an, als die Datenbank für das Gateway übrig hat, und PostgreSQL lehnt die zusätzlichen ab | Sorgen Sie dafür, dass die Gesamtzahl passt, wie unter [Verbindungspool dimensionieren](#size-the-connection-pool) beschrieben: Führen Sie weniger Replikate aus, senken Sie `store.max_connections` oder erhöhen Sie `max_connections` der Datenbank. Wenn die Gesamtzahl außer während eines Rolling Updates passt, können Sie stattdessen Ihren Orchestrator ein altes Replikat stoppen lassen, bevor er ein neues startet, sofern er das unterstützt. |414| Log: `remaining connection slots are reserved` oder `sorry, too many clients already`, von PostgreSQL. Das erscheint in den Warnungen `postgres connection closed` laufender Replikate oder im Start-Log eines neuen Replikats. Dort kann `remaining connection slots are reserved` auf `attempt 1 of 3` folgen, und das Replikat startet möglicherweise trotzdem. | Die Replikate fordern mehr Verbindungen an, als die Datenbank für das Gateway noch frei hat, und PostgreSQL lehnt die zusätzlichen ab | Sorgen Sie dafür, dass die Gesamtzahl passt, wie unter [Den Connection-Pool dimensionieren](#size-the-connection-pool) beschrieben: Betreiben Sie weniger Replikate, senken Sie `store.max_connections` oder erhöhen Sie `max_connections` der Datenbank. Wenn die Gesamtzahl außer während eines Rolling Updates passt, können Sie stattdessen Ihren Orchestrator ein altes Replikat stoppen lassen, bevor er ein neues startet, sofern er das unterstützt. |

415| Protokoll: `could not connect to Postgres at boot, attempt 1 of 3`, mit einem anderen Grund als `remaining connection slots are reserved` | Die Datenbank war noch nicht erreichbar, als das Gateway gestartet wurde, zum Beispiel auf einer kalten Instanz, deren Netzwerk noch aufgebaut wird | Wenn das Gateway dann das Booten beendet, ist keine Aktion erforderlich. Wenn die Datenbank nicht erreichbar ist, versucht das Gateway die Verbindung dreimal, zwei Sekunden auseinander, bevor es beendet wird. Wenn es mit `could not connect to Postgres` beendet wird, überprüfen Sie `store.postgres_url`, einschließlich dessen, dass sie genau einen Host benennt, sowie den Netzwerkpfad zur Datenbank. Wenn die Versuche Timeout statt Ablehnung sind, erhöhen Sie [`store.connect_timeout_seconds`](https://code.claude.com/docs/de/claude-apps-gateway-config#store), um jedem länger zu geben. |415| Log: `could not connect to Postgres at boot, attempt 1 of 3`, mit einem anderen Grund als `remaining connection slots are reserved` | Die Datenbank war beim Start des Gateways noch nicht erreichbar, zum Beispiel bei einer kalten Instanz, deren Netzwerk noch hochfährt | Wenn das Gateway den Start anschließend abschließt, ist nichts zu tun. Wenn die Datenbank nicht erreichbar ist, versucht das Gateway die Verbindung dreimal im Abstand von zwei Sekunden, bevor es sich beendet. Wenn es sich mit `could not connect to Postgres` beendet, prüfen Sie `store.postgres_url`, einschließlich dass genau ein Host angegeben ist, sowie den Netzwerkpfad zur Datenbank. Wenn die Versuche in einen Timeout laufen, statt abgelehnt zu werden, erhöhen Sie [`store.connect_timeout_seconds`](https://code.claude.com/docs/de/claude-apps-gateway-config#store), um jedem Versuch mehr Zeit zu geben. |

416| Log: `Postgres <version> is below the supported floor` | Die Datenbank verwendet eine PostgreSQL-Version, die älter ist, als Ihre Gateway-Version unterstützt. Das Gateway läuft weiter. | Aktualisieren Sie die Datenbank. Unter PostgreSQL 11, 12 oder 13 können Sie stattdessen das Gateway aktualisieren, um die [PostgreSQL-Anforderung](https://code.claude.com/docs/de/claude-apps-gateway#prerequisites) zu erfüllen. |416| Log: `Postgres <version> is below the supported floor` | Die Datenbank läuft mit einer PostgreSQL-Version, die älter ist, als Ihre Gateway-Version unterstützt. Das Gateway läuft weiter. | Aktualisieren Sie die Datenbank. Bei PostgreSQL 11, 12 oder 13 können Sie stattdessen das Gateway aktualisieren, um die [PostgreSQL-Anforderung](https://code.claude.com/docs/de/claude-apps-gateway#prerequisites) zu erfüllen. |

417| `/oauth/callback` zeigt "Sign-in could not be completed" | E-Mail-Domain abgelehnt, id\_token-Validierung fehlgeschlagen, oder `email_verified` ist explizit `false`, was das Gateway immer ohne Überschreibung ablehnt | Überprüfen Sie `allowed_email_domains` und dass der IdP einen verifizierten `email`-Claim zurückgibt. Für `email_verified: false` beheben Sie die IdP-seitige Verifikation. Wenn Ihr IdP E-Mail unter einem anderen Claim-Namen ausgibt, setzen Sie `oidc.email_claim`. |417| `/oauth/callback` zeigt „Sign-in could not be completed“ | E-Mail-Domain abgelehnt, Validierung des id\_token fehlgeschlagen oder `email_verified` explizit `false`, was das Gateway immer ohne Überschreibungsmöglichkeit ablehnt | Prüfen Sie `allowed_email_domains` und ob der IdP einen verifizierten `email`-Claim zurückgibt. Beheben Sie bei `email_verified: false` die Verifizierung auf IdP-Seite. Wenn Ihr IdP die E-Mail unter einem anderen Claim-Namen ausgibt, setzen Sie `oidc.email_claim`. |

418| Protokoll: `token exchange failed request_id=<id>: id_token missing email claim` | Der IdP enthält `email` nicht standardmäßig im id\_token. Diese Ablehnung wird nur ausgelöst, wenn `allowed_email_domains` gesetzt ist; ohne sie prägt ein fehlende E-Mail eine Sitzung ohne E-Mail | Konfigurieren Sie den IdP, um `email` im id\_token auszugeben. Okta: Fügen Sie `email` zu den ID-Token-Claims eines benutzerdefinierten Autorisierungsservers hinzu. Entra: Fügen Sie `email` als optionalen Claim bei der App-Registrierung hinzu. PingFederate: Aktivieren Sie eine OpenID-Connect-Richtlinie, die `email` ausgibt. Wenn der IdP `email` vom Userinfo-Endpoint bedient, aber nicht im id\_token einbeziehen wird, wie der Okta-Org-Autorisierungsserver, setzen Sie `oidc.userinfo_fallback: true`. |418| Log: `token exchange failed request_id=<id>: id_token missing email claim` | Der IdP nimmt `email` standardmäßig nicht in das id\_token auf. Diese Ablehnung tritt nur auf, wenn `allowed_email_domains` gesetzt ist; ohne diese Einstellung erzeugt eine fehlende E-Mail eine Sitzung ohne E-Mail | Konfigurieren Sie den IdP so, dass er `email` im id\_token ausgibt. Okta: Fügen Sie `email` zu den ID-Token-Claims eines benutzerdefinierten Autorisierungsservers hinzu. Entra: Fügen Sie `email` als optionalen Claim zur App-Registrierung hinzu. PingFederate: Aktivieren Sie eine OpenID Connect Policy, die `email` ausgibt. Wenn der IdP `email` über den Userinfo-Endpunkt bereitstellt, es aber nicht in das id\_token aufnimmt, wie etwa der Okta-Org-Autorisierungsserver, setzen Sie `oidc.userinfo_fallback: true`. |

419| Protokoll: `refresh failed request_id=<id>: invalid_token (…) (at userinfo_no_id_token, …)`, und Entwickler sehen `Cloud gateway session expired` alle `session.ttl_hours` | Der IdP akzeptierte den Refresh-Token, gab aber keinen id\_token damit zurück, daher fragte das Gateway den Userinfo-Endpoint des IdP nach den Claims des Benutzers. Der IdP lehnte den erneuerten Access-Token dort ab. Das Gateway antwortet `temporarily_unavailable`, daher behält Claude Code den Refresh-Token, kann aber die Sitzung nicht erneuern. Gateway-Versionen vor v2.1.260 protokollieren dieselbe Zeile ohne das `(at …)`-Detail. | Setzen Sie [`oidc.scope_on_refresh: true`](https://code.claude.com/docs/de/claude-apps-gateway-config#oidc), verfügbar in Gateway v2.1.260 oder später, damit die Refresh-Anfrage erneut nach `openid` fragt. Einige IdPs, wie Okta, geben einen id\_token bei Refresh nur zurück, wenn gefragt. Auf PingFederate aktivieren Sie stattdessen **Return ID Token On Refresh Grant** unter **Applications > OAuth > OpenID Connect Policy Management**. Der Schlüssel ändert das Verhalten von PingFederate nicht. Für andere IdPs, die ihn immer noch weglassen, überprüfen Sie, ob der Userinfo-Endpoint Access-Token akzeptiert, die von einem Refresh ausgestellt wurden. Als Übergangslösung erhöhen Sie [`session.ttl_hours`](https://code.claude.com/docs/de/claude-apps-gateway-config#session). Siehe [Identity-Provider-Setup](#identity-provider-setup) für den Deprovisioning-Tradeoff. |419| Log: `refresh failed request_id=<id>: invalid_token (…) (at userinfo_no_id_token, …)`, und Entwickler sehen `Cloud gateway session expired` alle `session.ttl_hours` | Der IdP hat das Refresh-Token akzeptiert, aber kein id\_token dazu zurückgegeben, daher hat das Gateway den Userinfo-Endpunkt des IdP nach den Claims des Benutzers gefragt. Der IdP hat dort das erneuerte Access-Token abgelehnt. Das Gateway antwortet mit `temporarily_unavailable`, sodass Claude Code das Refresh-Token behält, die Sitzung aber nicht erneuern kann. Gateway-Versionen vor v2.1.260 protokollieren dieselbe Zeile ohne das Detail `(at …)`. | Setzen Sie [`oidc.scope_on_refresh: true`](https://code.claude.com/docs/de/claude-apps-gateway-config#oidc), verfügbar ab Gateway v2.1.260, damit die Refresh-Anfrage erneut `openid` anfordert. Manche IdPs wie Okta geben beim Refresh nur dann ein id\_token zurück, wenn es angefordert wird. Aktivieren Sie bei PingFederate stattdessen **Return ID Token On Refresh Grant** unter **Applications > OAuth > OpenID Connect Policy Management**. Der Schlüssel ändert das Verhalten von PingFederate nicht. Prüfen Sie bei anderen IdPs, die es weiterhin weglassen, ob der Userinfo-Endpunkt Access-Tokens akzeptiert, die durch einen Refresh ausgestellt wurden. Erhöhen Sie als Übergangslösung [`session.ttl_hours`](https://code.claude.com/docs/de/claude-apps-gateway-config#session). Siehe [Einrichtung des Identitätsanbieters](#identity-provider-setup) für den Zielkonflikt beim Deprovisioning. |

420| Ein Entwickler meldet sich an, danach schlägt jede Anfrage aus dieser Sitzung mit einem `431`-Fehler fehl | Das Sitzungs-Token im `Authorization`-Header jeder Anfrage listet die IdP-Gruppen des Entwicklers auf, sodass die Header bei einem Entwickler in vielen Gruppen insgesamt mehr umfassen können, als das Gateway akzeptiert | Unter [Request-Header nach der Anmeldung zu groß](#request-headers-too-large-after-sign-in) erfahren Sie, welches Limit gilt und was Sie ändern müssen |420| Ein Entwickler meldet sich an, dann schlägt jede Anfrage aus dieser Sitzung mit einem `431`-Fehler fehl | Das Sitzungs-Token im `Authorization`-Header jeder Anfrage listet die IdP-Gruppen des Entwicklers auf, sodass die Header bei einem Entwickler in vielen Gruppen insgesamt mehr umfassen können, als das Gateway akzeptiert | Siehe [Request-Header nach der Anmeldung zu groß](#request-headers-too-large-after-sign-in), um zu erfahren, welches Limit gilt und was Sie ändern müssen |

421| Jede Amazon-Bedrock-Anfrage gibt 502 zurück; Protokoll zeigt `Could not load credentials from any providers` | Auf EC2 blockiert IMDSv2s Standard-Hop-Limit von 1 die Instanz-Metadata-Anfrage von innerhalb des Containers. Boot und `/readyz` bestehen trotzdem, da das AWS SDK Instanz-Anmeldedaten bei der ersten Anfrage auflöst, nicht bei der Client-Konstruktion | Erhöhen Sie das Hop-Limit mit `aws ec2 modify-instance-metadata-options --instance-id <id> --http-put-response-hop-limit 2`, oder setzen Sie es in der Launch-Vorlage. Die Änderung gilt für jeden Container auf der Instanz. Bevorzugen Sie ECS-Task-Rollen, wo verfügbar, die Anmeldedaten vom ECS-Container-Credentials-Endpoint lesen und die Änderung ganz vermeiden, oder wenden Sie die Änderung auf einer dedizierten Gateway-Instanz an, um die Exposition zu begrenzen. |421| Jede Amazon Bedrock-Anfrage gibt 502 zurück; das Log zeigt `Could not load credentials from any providers` | Auf EC2 blockiert das standardmäßige Hop-Limit von 1 bei IMDSv2 die Instance-Metadata-Anfrage aus dem Container heraus. Start und `/readyz` sind trotzdem erfolgreich, weil das AWS SDK die Instanz-Anmeldedaten erst bei der ersten Anfrage auflöst, nicht beim Erstellen des Clients | Erhöhen Sie das Hop-Limit mit `aws ec2 modify-instance-metadata-options --instance-id <id> --http-put-response-hop-limit 2` oder setzen Sie es im Launch Template. Die Änderung gilt für jeden Container auf der Instanz. Bevorzugen Sie nach Möglichkeit ECS-Task-Rollen, die Anmeldedaten vom ECS-Container-Credentials-Endpunkt lesen und die Änderung ganz vermeiden, oder nehmen Sie die Änderung auf einer dedizierten Gateway-Instanz vor, um die Angriffsfläche zu begrenzen. |

422| Bei Spitzenlast sind Antworten langsam zu starten oder scheinen zu hängen, oder schlagen mit einem 502 `all upstreams failed` fehl, während der Upstream gesund ist | Ein Replikat hat mehr Anfragen offen als es gleichzeitig upstream sendet, daher warten die zusätzlichen Anfragen im Gateway. Bei einem `provider: anthropic`-Upstream gibt eine Anfrage, die länger als `timeouts.upstream_ttfb_ms` wartet, auf diesen Upstream auf, was den 502 erzeugt, wenn kein späterer Upstream sie bedient. Das Protokoll zeigt eine Warnung, die `client requests are open` enthält. | Fügen Sie Replikationen hinzu, oder erhöhen Sie das Limit auf jeder Replikation. Siehe [Gleichzeitige Upstream-Anfragen](#concurrent-upstream-requests). |422| Bei Spitzenlast beginnen Antworten verzögert oder scheinen zu hängen, oder sie schlagen mit einem 502 `all upstreams failed` fehl, obwohl der Upstream fehlerfrei ist | Ein Replikat hat mehr Anfragen offen, als es gleichzeitig an den Upstream sendet, sodass die zusätzlichen Anfragen im Gateway warten. Bei einem `provider: anthropic`-Upstream gibt eine Anfrage, die länger als `timeouts.upstream_ttfb_ms` wartet, diesen Upstream auf, was den 502 erzeugt, wenn kein nachfolgender Upstream sie bedient. Das Log zeigt eine Warnung, die `client requests are open` enthält. | Fügen Sie Replikate hinzu oder erhöhen Sie das Limit für jedes Replikat. Siehe [Gleichzeitige Upstream-Anfragen](#concurrent-upstream-requests). |

423| Bei einem anderen Upstream als `provider: anthropic` schlägt ein Turn mit einer langen Denkpause fehl. Der Proxy vor dem Gateway protokolliert eine Anfrage, die etwa 12,5 Minuten offen bleibt, danach eine Reihe von `504`-Fehlern | Claude Code hat einen Stream beendet, der sein erstes Antwortereignis geliefert und danach nur noch Keepalive-Pings übertragen hatte. Claude Code hat die Anfrage ohne Streaming erneut gesendet, und jede Antwort dauert länger als der Timeout des Proxys. | Erhöhen Sie `CLAUDE_STREAM_IDLE_TIMEOUT_MS` für Ihre Entwickler. Siehe [Langes Nachdenken endet in Proxy-Timeouts](#long-thinking-ends-in-proxy-timeouts). |423| Bei einem anderen Upstream als `provider: anthropic` schlägt ein Turn mit einer langen Denkpause fehl. Der Proxy vor dem Gateway protokolliert eine Anfrage, die etwa 12,5 Minuten offen bleibt, dann eine Reihe von `504`-Fehlern | Claude Code hat einen Stream beendet, der sein erstes Antwort-Event geliefert und danach nur noch Keepalive-Pings übertragen hatte. Es hat die Anfrage ohne Streaming erneut gesendet, und jede Antwort dauert länger als der Timeout des Proxys. | Erhöhen Sie `CLAUDE_STREAM_IDLE_TIMEOUT_MS` für Ihre Entwickler. Siehe [Langes Thinking endet in Proxy-Timeouts](#long-thinking-ends-in-proxy-timeouts). |

424| Bei `provider: anthropic` schlägt ein Turn mit einer langen Denkpause fehl. Der Proxy protokolliert eine Anfrage, die etwa 20 Minuten offen ist, danach `502`- oder `504`-Fehler | Claude Code hat einen Stream beendet, der sein erstes Antwortereignis geliefert und danach nur noch Keepalive-Pings übertragen hatte. Claude Code hat die Anfrage ohne Streaming erneut gesendet, und jede Antwort dauert länger als die Wartezeit des Gateways auf den Upstream, `timeouts.upstream_ttfb_ms`, oder der Timeout des Proxys. | Erhöhen Sie `CLAUDE_STREAM_IDLE_TIMEOUT_MS` für Ihre Entwickler. Siehe [Langes Nachdenken bei einem Anthropic-API-Upstream](#long-thinking-on-an-anthropic-api-upstream). |424| Bei `provider: anthropic` schlägt ein Turn mit einer langen Denkpause fehl. Der Proxy protokolliert eine Anfrage, die etwa 20 Minuten offen ist, dann `502`- oder `504`-Fehler | Claude Code hat einen Stream beendet, der sein erstes Antwort-Event geliefert und danach nur noch Keepalive-Pings übertragen hatte. Es hat die Anfrage ohne Streaming erneut gesendet, und jede Antwort dauert länger als die Wartezeit des Gateways auf den Upstream, `timeouts.upstream_ttfb_ms`, oder der Timeout des Proxys. | Erhöhen Sie `CLAUDE_STREAM_IDLE_TIMEOUT_MS` für Ihre Entwickler. Siehe [Langes Thinking bei einem Anthropic API-Upstream](#long-thinking-on-an-anthropic-api-upstream). |

425| IdP-Fehler: unknown or unsupported scope | Der IdP lehnt Scopes ab, die er nicht erkennt | Setzen Sie `oidc.scopes` auf genau die Liste, die Ihr IdP akzeptiert; sie muss `openid` enthalten. Der Standard ist `openid profile email offline_access`. |425| IdP-Fehler: unbekannter oder nicht unterstützter Scope | Der IdP lehnt Scopes ab, die er nicht kennt | Setzen Sie `oidc.scopes` auf genau die Liste, die Ihr IdP akzeptiert; sie muss `openid` enthalten. Der Standardwert ist `openid profile email offline_access`. |

426| Sitzungen erneuern sich nicht stillschweigend nach dem Setzen von `oidc.scopes` | `offline_access` wurde aus der Überschreibung gelöscht | Fügen Sie `offline_access` zurück, wenn Ihr IdP es unterstützt. Ohne einen Refresh-Token führen Entwickler die Browser-Anmeldung alle `session.ttl_hours` erneut aus. |426| Sitzungen werden nach dem Setzen von `oidc.scopes` nicht mehr unbemerkt erneuert | `offline_access` wurde aus der Überschreibung entfernt | Fügen Sie `offline_access` wieder hinzu, sofern Ihr IdP es unterstützt. Ohne Refresh-Token müssen Entwickler die Browser-Anmeldung alle `session.ttl_hours` erneut durchführen. |

427| Browser zeigt "This request came from another site and was blocked" | Cross-Site-Form-POST, blockiert als CSRF-Schutz. Erwartet für eingebettete oder proxied Seiten | Öffnen Sie den Verifikations-Link direkt |427| Der Browser zeigt „This request came from another site and was blocked“ | Websiteübergreifender Formular-POST, als CSRF-Schutz blockiert. Bei eingebetteten oder über einen Proxy ausgelieferten Seiten zu erwarten | Öffnen Sie den Verifizierungslink direkt |

428| Chrome blockiert die Approve-Schaltfläche mit "Refused to send form data … violates … Content Security Policy directive: form-action", aber dieselbe Seite funktioniert in Safari oder Firefox | Chrome erzwingt `form-action` gegen die gesamte Redirect-Kette. Ihr IdP leitet weiter zu einem zweiten Host, der nicht auf der Allowlist steht. | Fügen Sie jeden zusätzlichen Ursprung in der Redirect-Kette zu `oidc.form_action_origins` hinzu. Öffnen Sie Chrome DevTools → Console auf der Approve-Seite, um zu sehen, welcher Ursprung blockiert wurde. |428| Chrome blockiert die Schaltfläche „Approve“ mit „Refused to send form data … violates … Content Security Policy directive: form-action“, während dieselbe Seite in Safari oder Firefox funktioniert | Chrome wendet `form-action` auf die gesamte Weiterleitungskette an. Ihr IdP leitet weiter an einen zweiten Host, der nicht auf der Zulassungsliste steht. | Fügen Sie jeden zusätzlichen Origin in der Weiterleitungskette zu `oidc.form_action_origins` hinzu. Öffnen Sie auf der Approve-Seite Chrome DevTools → Console, um zu sehen, welcher Origin blockiert wurde. |

429| Anmeldung wird beim IdP abgeschlossen, aber der Callback schlägt fehl, mit einem CSP-Fehler in Chrome oder "this sign-in link has expired" in Safari | Der IdP gab den Code über `response_mode=form_post` zurück, das ihn Cross-Origin über POST zu `/oauth/callback` automatisch einreicht. Chrome blockiert das unter einer strikten CSP; Safari erlaubt die Einreichung, aber der Callback liest nur die Query-String | Stellen Sie sicher, dass Ihr IdP `response_mode=query` ehrt, das das Gateway explizit anfordert, damit der Callback eine einfache Umleitung ist |429| Die Anmeldung wird beim IdP abgeschlossen, aber der Callback schlägt fehl, mit einem CSP-Fehler in Chrome oder „this sign-in link has expired“ in Safari | Der IdP hat den Code über `response_mode=form_post` zurückgegeben, wodurch er automatisch per POST Origin-übergreifend an `/oauth/callback` übermittelt wird. Chrome blockiert das unter einer strikten CSP; Safari lässt die Übermittlung zu, aber der Callback liest nur den Query-String. | Stellen Sie sicher, dass Ihr IdP `response_mode=query` berücksichtigt, was das Gateway explizit anfordert, damit der Callback eine einfache Weiterleitung ist |

430| Anmeldung funktioniert lokal, schlägt aber hinter einem ALB fehl | `public_url` benennt immer noch den lokalen oder inneren `http://`-Ursprung, daher erhält der IdP den falschen `redirect_uri` | Setzen Sie `listen.public_url` auf den externen `https://`-Ursprung und registrieren Sie `<public_url>/oauth/callback` beim IdP |430| Die Anmeldung funktioniert lokal, schlägt aber hinter einem ALB fehl | `public_url` nennt noch den lokalen oder inneren `http://`-Origin, sodass der IdP die falsche `redirect_uri` erhält | Setzen Sie `listen.public_url` auf den externen `https://`-Origin und registrieren Sie `<public_url>/oauth/callback` beim IdP |

431| Entwickler sieht die Vertrauens-Aufforderung wiederholt | TLS-Zert rotiert pro Replikation oder pro Anfrage | Verwenden Sie ein stabiles Zert beim Ingress, oder beenden Sie TLS einmal und führen Sie Replikationen intern über einfaches HTTP aus |431| Der Entwickler sieht die Vertrauensabfrage wiederholt | Das TLS-Zertifikat wechselt pro Replikat oder pro Anfrage | Verwenden Sie am Ingress ein stabiles Zertifikat, oder terminieren Sie TLS einmal und betreiben Sie die Replikate intern über reines HTTP |

432| CLI `/login`: "Could not verify the gateway's TLS certificate" oder `SELF_SIGNED_CERT_IN_CHAIN` | Die TLS-Kette des Gateways ist von einer privaten CA signiert, die nicht im CLI-Host-Trust-Store ist | Claude Code liest den OS-Trust-Store standardmäßig auf der nativen Binärdatei und auf Node 22.15 oder später; [`CLAUDE_CODE_CERT_STORE`](https://code.claude.com/docs/de/network-config#ca-certificate-store) steuert dieses Verhalten. Wenn die CA im OS-Trust-Store installiert ist, stellen Sie sicher, dass Entwickler auf einer aktuellen Runtime sind. Andernfalls setzen Sie `NODE_EXTRA_CA_CERTS` auf das CA-Zertifikat-PEM, bevor Sie starten. Die First-Connect-Fingerprint-Aufforderung gilt immer noch. |432| CLI-`/login`: „Could not verify the gateway's TLS certificate“ oder `SELF_SIGNED_CERT_IN_CHAIN` | Die TLS-Kette des Gateways ist von einer privaten CA signiert, die nicht im Trust Store des CLI-Hosts enthalten ist | Claude Code liest bei der nativen Binärdatei und unter Node 22.15 oder neuer standardmäßig den Trust Store des Betriebssystems; [`CLAUDE_CODE_CERT_STORE`](https://code.claude.com/docs/de/network-config#ca-certificate-store) steuert dieses Verhalten. Wenn die CA im Trust Store des Betriebssystems installiert ist, stellen Sie sicher, dass Entwickler eine aktuelle Runtime verwenden. Setzen Sie andernfalls vor dem Start `NODE_EXTRA_CA_CERTS` auf das PEM des CA-Zertifikats. Die Fingerprint-Abfrage bei der ersten Verbindung gilt weiterhin. |

433| CLI `/login` schließt die Browser-Anmeldung ab, dann endet die Sitzung mit `Cloud gateway sign-in was not completed` und einem TLS-Zertifikat-Mismatch | Bei der ersten Anfrage nach der Anmeldung präsentierte das Gateway ein Zertifikat, das nicht dem Fingerprint entspricht, den Claude Code angeheftet hat, daher behielt Claude Code keine Gateway-Anmeldedaten. Die üblichen Ursachen sind Replikationen hinter einer Adresse, die unterschiedliche Zertifikate bedienen, oder etwas auf dem Netzwerkpfad, das TLS abfängt. | Bedienen Sie ein Zertifikat für den Hostnamen, zum Beispiel durch einmaliges Beenden von TLS beim Ingress, dann lassen Sie den Entwickler `/login` erneut ausführen. Wenn sich dieses Zertifikat vom angehefteten unterscheidet, zeigt Claude Code die [Vertrauens-Aufforderung](https://code.claude.com/docs/de/claude-apps-gateway#connect-developers) erneut mit einer Warnung an, dass sich das Zertifikat geändert hat. |433| CLI-`/login` schließt die Browser-Anmeldung ab, dann endet die Sitzung mit `Cloud gateway sign-in was not completed` und einer TLS-Zertifikatsabweichung | Bei der ersten Anfrage nach der Anmeldung hat das Gateway ein Zertifikat präsentiert, das nicht dem von Claude Code gepinnten Fingerprint entspricht, sodass Claude Code keine Gateway-Anmeldedaten behalten hat. Die üblichen Ursachen sind Replikate hinter einer Adresse, die unterschiedliche Zertifikate ausliefern, oder etwas auf dem Netzwerkpfad, das TLS abfängt. | Liefern Sie für den Hostnamen ein einziges Zertifikat aus, zum Beispiel indem Sie TLS einmal am Ingress terminieren, und lassen Sie den Entwickler dann `/login` erneut ausführen. Wenn sich dieses Zertifikat vom gepinnten unterscheidet, zeigt Claude Code die [Vertrauensabfrage](https://code.claude.com/docs/de/claude-apps-gateway#connect-developers) erneut mit einem Hinweis an, dass sich das Zertifikat geändert hat. |

434| CLI `/login` stoppt mit `The gateway's TLS certificate changed during sign-in: it no longer matches the one you trusted` | Eine Anmeldungs-Anfrage erreichte einen Server, dessen Zertifikat nicht dem entspricht, das der Entwickler akzeptiert hat, als `/login` begann: Replikationen hinter einer Adresse, die unterschiedliche Zertifikate bedienen, TLS-Abfangung auf dem Pfad, oder eine Zertifikat-Rotation während der Anmeldung. | Bedienen Sie ein Zertifikat für den Hostnamen, dann lassen Sie den Entwickler die Anmeldung erneut starten und überprüfen Sie das neue Zertifikat bei der [Vertrauens-Aufforderung](https://code.claude.com/docs/de/claude-apps-gateway#connect-developers). |434| CLI-`/login` stoppt mit `The gateway's TLS certificate changed during sign-in: it no longer matches the one you trusted` | Eine Anmeldeanfrage hat einen Server erreicht, dessen Zertifikat nicht dem entspricht, das der Entwickler beim Start von `/login` akzeptiert hat: Replikate hinter einer Adresse mit unterschiedlichen Zertifikaten, TLS-Interception auf dem Pfad oder eine Zertifikatsrotation während der laufenden Anmeldung. | Liefern Sie für den Hostnamen ein einziges Zertifikat aus, lassen Sie den Entwickler die Anmeldung dann erneut starten und das neue Zertifikat in der [Vertrauensabfrage](https://code.claude.com/docs/de/claude-apps-gateway#connect-developers) prüfen. |

435 435 

436Die `Cloud gateway sign-in was not completed`-Nachricht benennt den Gateway-Hostnamen. Wenn Claude Code sowohl den angehefteten Fingerprint als auch den präsentierten hat, zeigt die Nachricht auch die ersten 16 Zeichen jedes.436Die Meldung `Cloud gateway sign-in was not completed` nennt den Hostnamen des Gateways. Wenn Claude Code sowohl den gepinnten als auch den präsentierten Fingerprint hat, zeigt die Meldung außerdem jeweils die ersten 16 Zeichen.

437 437 

438Wenn Claude Code `couldn't load your organization's managed settings` nach einer Gateway-Anmeldung meldet, benennt Claude Code den Grund, startet an Ort und Stelle neu und setzt das Gespräch fort. Wenn Claude Code nicht neu starten kann, zum Beispiel in einer Hintergrund-Sitzung, beendet Claude Code die Sitzung und behält die Anmeldung.438Wenn Claude Code nach einer Gateway-Anmeldung `couldn't load your organization's managed settings` meldet, nennt Claude Code den Grund, startet an Ort und Stelle neu und setzt die Konversation fort. Wenn Claude Code nicht neu starten kann, zum Beispiel in einer Hintergrundsitzung, beendet Claude Code die Sitzung und behält die Anmeldung bei.

439 439 

440### Request-Header nach der Anmeldung zu groß440### Request-Header nach der Anmeldung zu groß

441 441 

442Die Anfragen eines Entwicklers können nach der Anmeldung mit einem `431`-Fehler fehlschlagen, wenn der Entwickler vielen IdP-Gruppen angehört.442Die Anfragen eines Entwicklers können nach der Anmeldung mit einem `431`-Fehler fehlschlagen, wenn der Entwickler vielen IdP-Gruppen angehört.

443 443 

444Das Gateway antwortet mit `431`, wenn die Header einer Anfrage insgesamt mehr als 256 KiB umfassen, oder mehr als [`limits.max_request_header_bytes`](https://code.claude.com/docs/de/claude-apps-gateway-config#http-tuning), falls Sie diesen Wert setzen. Für diese Anfragen schreibt es weder eine Log-Zeile noch ein Audit-Ereignis. Gateway-Versionen vor v2.1.284 antworten oberhalb von 16 KiB mit `431`.444Das Gateway antwortet mit `431`, wenn die Header einer Anfrage insgesamt mehr als 256 KiB umfassen, oder mehr als [`limits.max_request_header_bytes`](https://code.claude.com/docs/de/claude-apps-gateway-config#http-tuning), sofern Sie diesen Wert gesetzt haben. Für diese Anfragen schreibt es weder eine Log-Zeile noch ein Audit-Event. Gateway-Versionen vor v2.1.284 antworten oberhalb von 16 KiB mit `431`.

445 445 

446Beginnen Sie mit dem ersten der folgenden Punkte, der auf Ihr Gateway zutrifft:446Beginnen Sie mit dem ersten der folgenden Punkte, der auf Ihr Gateway zutrifft:

447 447 

448* **Gateway älter als v2.1.284**: Aktualisieren Sie das Gateway448* **Gateway älter als v2.1.284**: Aktualisieren Sie das Gateway

449* **`limits.max_request_header_bytes` gesetzt**: Erhöhen Sie den Wert oder entfernen Sie den Schlüssel449* **`limits.max_request_header_bytes` gesetzt**: Erhöhen Sie den Wert oder entfernen Sie den Schlüssel

450* **Keines von beiden trifft zu, oder `431` tritt danach weiterhin auf**: Lassen Sie Ihren IdP weniger Gruppen ausgeben. [Identity-Provider-Setup](#identity-provider-setup) beschreibt, wie Okta, Microsoft Entra ID und Google Workspace Gruppen bereitstellen450* **Keines von beiden trifft zu, oder `431` tritt danach weiterhin auf**: Lassen Sie Ihren IdP weniger Gruppen ausgeben. [Einrichtung des Identitätsanbieters](#identity-provider-setup) beschreibt, wie Okta, Microsoft Entra ID und Google Workspace Gruppen bereitstellen

451 451 

452Wenn Sie den Groups-Claim kürzen, behalten Sie die Gruppen bei, die Sie in diesen Einstellungen angegeben haben, denn diese entscheiden über Zugriff, Richtlinie und Ausgabenlimits eines Entwicklers:452Wenn Sie den Groups-Claim kürzen, behalten Sie die Gruppen bei, die Sie in diesen Einstellungen angegeben haben, da sie über Zugriff, Richtlinie und Ausgabenobergrenzen eines Entwicklers entscheiden:

453 453 

454* **[`oidc.allowed_groups`](https://code.claude.com/docs/de/claude-apps-gateway-config#oidc)**: legt fest, wer sich anmelden kann454* **[`oidc.allowed_groups`](https://code.claude.com/docs/de/claude-apps-gateway-config#oidc)**: entscheidet, wer sich anmelden kann

455* **[`admin.admin_groups`](https://code.claude.com/docs/de/claude-apps-gateway-config#admin)**: legt fest, wer die Admin-API mit seiner Gateway-Sitzung aufrufen kann455* **[`admin.admin_groups`](https://code.claude.com/docs/de/claude-apps-gateway-config#admin)**: entscheidet, wer die Admin-API mit seiner Gateway-Sitzung aufrufen kann

456* **`match.groups` in [`managed.policies`](https://code.claude.com/docs/de/claude-apps-gateway-config#managed)**: legt fest, welche Richtlinie für einen Entwickler gilt456* **`match.groups` in [`managed.policies`](https://code.claude.com/docs/de/claude-apps-gateway-config#managed)**: entscheidet, welche Richtlinie für einen Entwickler gilt

457* **`rbac_group`-[Ausgabenlimits](https://code.claude.com/docs/de/claude-apps-gateway-spend-limits.md)**: legen fest, welche Gruppenlimits für einen Entwickler gelten457* **`rbac_group`-[Ausgabenobergrenzen](https://code.claude.com/docs/de/claude-apps-gateway-spend-limits.md)**: entscheiden, welche Gruppenobergrenzen für einen Entwickler gelten

458 458 

459### Langes Nachdenken endet in Proxy-Timeouts459### Langes Thinking endet in Proxy-Timeouts

460 460 

461Wenn Ihr Upstream `provider: anthropic` ist, verwenden Sie stattdessen [Langes Nachdenken bei einem Anthropic-API-Upstream](#long-thinking-on-an-anthropic-api-upstream): Auch dort erhöhen Sie `CLAUDE_STREAM_IDLE_TIMEOUT_MS`, aber die Zeiten und Fehler unterscheiden sich.461Wenn Ihr Upstream `provider: anthropic` ist, verwenden Sie stattdessen [Langes Thinking bei einem Anthropic API-Upstream](#long-thinking-on-an-anthropic-api-upstream): Auch dort erhöhen Sie `CLAUDE_STREAM_IDLE_TIMEOUT_MS`, aber die Zeiten und Fehler unterscheiden sich.

462 462 

463Wenn Turns nach langem Nachdenken fehlschlagen und Ihr Proxy eine Anfrage protokolliert, die etwa 12,5 Minuten offen ist, danach eine Reihe von `504`-Fehlern, erhöhen Sie [`CLAUDE_STREAM_IDLE_TIMEOUT_MS`](https://code.claude.com/docs/de/env-vars) in einer Gateway-Richtlinie. Bei einem Idle-Timeout von 240 Sekunden am Proxy besteht die Reihe beispielsweise aus 10 Anfragen, die jeweils nach 240 Sekunden abgebrochen werden.463Wenn Turns nach langem Thinking fehlschlagen und Ihr Proxy eine Anfrage protokolliert, die etwa 12,5 Minuten offen ist, gefolgt von einer Reihe von `504`-Fehlern, erhöhen Sie [`CLAUDE_STREAM_IDLE_TIMEOUT_MS`](https://code.claude.com/docs/de/env-vars) in einer Gateway-Richtlinie. Bei einem Leerlauf-Timeout von 240 Sekunden am Proxy besteht die Reihe beispielsweise aus 10 Anfragen, die jeweils nach 240 Sekunden abgebrochen werden.

464 464 

465* **Die erste Anfrage**: ein Stream, der sein erstes Antwortereignis, `message_start`, liefert und danach nur noch Pings, während Claude nachdenkt. Mit den Standardeinstellungen beendet Claude Code diesen Stream nach etwa 12,5 Minuten.465* **Die erste Anfrage**: ein Stream, der sein erstes Antwort-Event, `message_start`, liefert und danach nur noch Pings, während Claude nachdenkt. Mit den Standardeinstellungen beendet Claude Code diesen Stream nach etwa 12,5 Minuten.

466* **Die anderen 10**: dieselbe Anfrage, [ohne Streaming](https://code.claude.com/docs/de/errors.md#streaming-response-ended-before-any-complete-data-was-received) gesendet und dann erneut versucht, standardmäßig insgesamt 10 Sendungen. Sie erhalten keine Pings, daher erreicht eine langsame Antwort den Timeout des Proxys.466* **Die anderen 10**: dieselbe Anfrage, [ohne Streaming](https://code.claude.com/docs/de/errors.md#streaming-response-ended-before-any-complete-data-was-received) gesendet und dann erneut versucht, standardmäßig insgesamt 10 Sendevorgänge. Sie erhalten keine Pings, sodass eine langsame Antwort den Timeout des Proxys erreicht.

467 467 

468Für diese Behebung benötigen Sie keinen längeren Proxy-Timeout. Wenn Sie nur den Timeout des Proxys erhöhen, schlagen Anfragen ohne Streaming weiterhin fehl, sobald eine Antwort länger dauert als die eigene Wartezeit von Claude Code, standardmäßig 300 Sekunden.468Für diese Lösung benötigen Sie keinen längeren Proxy-Timeout. Wenn Sie nur den Timeout des Proxys erhöhen, schlagen Anfragen ohne Streaming weiterhin fehl, sobald eine Antwort länger dauert als die eigene Wartezeit von Claude Code, standardmäßig 300 Sekunden.

469 469 

470#### Ursache bestätigen470#### Die Ursache bestätigen

471 471 

472Lassen Sie einen Entwickler den Fehler mit `claude --debug-file ./claude-debug.txt` reproduzieren und durchsuchen Sie diese Datei dann nach dieser Zeile:472Lassen Sie einen Entwickler den Fehler mit `claude --debug-file ./claude-debug.txt` reproduzieren und durchsuchen Sie dann diese Datei nach folgender Zeile:

473 473 

474```text theme={null}474```text theme={null}

475Error streaming, falling back to non-streaming mode: Stream idle timeout - no chunks received475Error streaming, falling back to non-streaming mode: Stream idle timeout - no chunks received

476```476```

477 477 

478Wenn Ihre Entwickler [`CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK`](https://code.claude.com/docs/de/env-vars) bereits auf `1` setzen, sehen Sie keine Anfragen ohne Streaming, und der Turn endet mit `API Error: Stream idle timeout - no chunks received`. Es gilt dieselbe Behebung.478Wenn Ihre Entwickler [`CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK`](https://code.claude.com/docs/de/env-vars) bereits auf `1` setzen, sehen Sie keine Anfragen ohne Streaming, und der Turn endet mit `API Error: Stream idle timeout - no chunks received`. Es gilt dieselbe Lösung.

479 479 

480#### Wert wählen480#### Einen Wert wählen

481 481 

482Wählen Sie einen Wert für `CLAUDE_STREAM_IDLE_TIMEOUT_MS`, dessen zweite Spalte Ihre längste Denkpause abdeckt, oder beginnen Sie mit `1800000`, wenn Sie diese nicht kennen. Ein Stream kann etwa 7,5 Minuten länger als der Wert nur mit Pings bestehen bleiben:482Wählen Sie einen Wert für `CLAUDE_STREAM_IDLE_TIMEOUT_MS`, dessen zweite Spalte Ihre längste Denkpause abdeckt, oder beginnen Sie mit `1800000`, wenn Sie diese nicht kennen. Ein Stream kann etwa 7,5 Minuten länger als der Wert nur mit Pings bestehen bleiben:

483 483 

484| `CLAUDE_STREAM_IDLE_TIMEOUT_MS` | Ein Stream kann nur mit Pings bestehen bleiben für |484| `CLAUDE_STREAM_IDLE_TIMEOUT_MS` | Ein Stream kann nur mit Pings bestehen bleiben für |

485| - | - |485| - | - |

486| `300000`, der Standard | Etwa 12,5 Minuten |486| `300000`, der Standardwert | Etwa 12,5 Minuten |

487| `900000` | Etwa 22,5 Minuten |487| `900000` | Etwa 22,5 Minuten |

488| `1800000` | Etwa 37,5 Minuten |488| `1800000` | Etwa 37,5 Minuten |

489 489 

490Wenn ein Upstream hängt, während das Gateway weiterhin Pings sendet, warten Ihre Entwickler ebenfalls so lange, bevor Claude Code den Stream aufgibt. Eine Verbindung, die vollständig verstummt, endet weiterhin nach 5 bis 6 Minuten, da der [Body-Idle-Timeout](https://code.claude.com/docs/de/network-config.md#streaming-idle-watchdogs) dieser Variable nicht folgt.490Wenn ein Upstream hängt, während das Gateway weiterhin Pings sendet, warten Ihre Entwickler ebenfalls so lange, bevor Claude Code den Stream aufgibt. Eine Verbindung, die vollständig verstummt, endet trotzdem nach 5 bis 6 Minuten, da der [Body-Leerlauf-Timeout](https://code.claude.com/docs/de/network-config.md#streaming-idle-watchdogs) dieser Variable nicht folgt.

491 491 

492#### Wert in einer Richtlinie bereitstellen492#### Den Wert in einer Richtlinie bereitstellen

493 493 

494Fügen Sie den `env`-Eintrag jeder Richtlinie in `gateway.yaml` hinzu, die bereits Claude-Code-Einstellungen an die Entwickler liefert, die Sie abdecken möchten. Platzieren Sie ihn unter dem Schlüssel `code`, `cli` oder `settings`, den diese Richtlinie bereits hat. Um den Wert zunächst zu testen, beginnen Sie mit einer Richtlinie, die einer Gruppe entspricht. Unter [`managed`](https://code.claude.com/docs/de/claude-apps-gateway-config#managed) erfahren Sie, wie Richtlinien zugeordnet und vererbt werden. Dieses Beispiel fügt den Eintrag einer `match: {}`-Richtlinie mit dem Schlüssel `cli` hinzu:494Fügen Sie den `env`-Eintrag zu jeder Richtlinie in `gateway.yaml` hinzu, die bereits Claude Code-Einstellungen an die Entwickler liefert, die Sie abdecken möchten. Platzieren Sie ihn unter dem Schlüssel `code`, `cli` oder `settings`, den diese Richtlinie bereits hat. Um den Wert zunächst zu testen, beginnen Sie mit einer Richtlinie, die auf eine Gruppe passt. Unter [`managed`](https://code.claude.com/docs/de/claude-apps-gateway-config#managed) erfahren Sie, wie Richtlinien zugeordnet und vererbt werden. Dieses Beispiel fügt den Eintrag einer `match: {}`-Richtlinie mit dem Schlüssel `cli` hinzu:

495 495 

496```yaml theme={null}496```yaml theme={null}

497managed:497managed:


502 CLAUDE_STREAM_IDLE_TIMEOUT_MS: "1800000"502 CLAUDE_STREAM_IDLE_TIMEOUT_MS: "1800000"

503```503```

504 504 

505Mit dem Schlüssel `cli` decken Sie Terminal-, IDE-Erweiterungs- und Agent-SDK-Sitzungen ab. Für den Code-Tab von Claude Desktop siehe [`cli` oder `code` wählen](https://code.claude.com/docs/de/claude-apps-gateway-config#choose-cli-or-code).505Mit dem Schlüssel `cli` decken Sie Terminal-, IDE-Erweiterungs- und Agent SDK-Sitzungen ab. Für den Code-Tab von Claude Desktop siehe [`cli` oder `code` wählen](https://code.claude.com/docs/de/claude-apps-gateway-config#choose-cli-or-code).

506 506 

507Starten Sie das Gateway neu, damit es die bearbeitete Datei liest. Lassen Sie dann die Entwickler Claude Code neu starten, um `CLAUDE_STREAM_IDLE_TIMEOUT_MS` zu erhalten.507Starten Sie das Gateway neu, damit es die bearbeitete Datei liest. Lassen Sie die Entwickler dann Claude Code neu starten, um `CLAUDE_STREAM_IDLE_TIMEOUT_MS` zu erhalten.

508 508 

509### Langes Nachdenken bei einem Anthropic-API-Upstream509### Langes Thinking bei einem Anthropic API-Upstream

510 510 

511Wenn `provider: anthropic` der einzige Upstream des Modells ist und Ihr Proxy eine Anfrage protokolliert, die etwa 20 Minuten offen ist, danach `502`- oder `504`-Fehler, erhöhen Sie [`CLAUDE_STREAM_IDLE_TIMEOUT_MS`](https://code.claude.com/docs/de/env-vars) in einer Gateway-Richtlinie.511Wenn `provider: anthropic` der einzige Upstream des Modells ist und Ihr Proxy eine Anfrage protokolliert, die etwa 20 Minuten offen ist, gefolgt von `502`- oder `504`-Fehlern, erhöhen Sie [`CLAUDE_STREAM_IDLE_TIMEOUT_MS`](https://code.claude.com/docs/de/env-vars) in einer Gateway-Richtlinie.

512 512 

513* **Die lange Anfrage**: ein Stream, der `message_start` liefert und danach nur noch Pings, während Claude nachdenkt. Claude Code beendet ihn mit den Standardeinstellungen nach etwa 20 Minuten, und später, sobald Sie die Variable erhöhen.513* **Die lange Anfrage**: ein Stream, der `message_start` liefert und danach nur noch Pings, während Claude nachdenkt. Claude Code beendet ihn mit den Standardeinstellungen nach etwa 20 Minuten, und später, sobald Sie die Variable erhöhen.

514* **Die Fehler**: Anfragen, die Claude Code anschließend [ohne Streaming](https://code.claude.com/docs/de/errors.md#streaming-response-ended-before-any-complete-data-was-received) sendet. Jede davon schlägt mit einem `502` vom Gateway fehl, oder mit dem `504` Ihres Proxys, wenn der Timeout des Proxys kürzer ist als die Wartezeit des Gateways. Diese Wartezeit ist [`timeouts.upstream_ttfb_ms`](https://code.claude.com/docs/de/claude-apps-gateway-config#http-tuning), die Sie für diese Behebung nicht erhöhen müssen.514* **Die Fehler**: Anfragen, die Claude Code anschließend [ohne Streaming](https://code.claude.com/docs/de/errors.md#streaming-response-ended-before-any-complete-data-was-received) sendet. Jede schlägt mit einem `502` vom Gateway fehl, oder mit dem `504` Ihres Proxys, wenn dessen Timeout kürzer ist als die Wartezeit des Gateways. Diese Wartezeit ist [`timeouts.upstream_ttfb_ms`](https://code.claude.com/docs/de/claude-apps-gateway-config#http-tuning), die Sie für diese Lösung nicht erhöhen müssen.

515 515 

516Um die Ursache zu bestätigen, siehe [Ursache bestätigen](#confirm-the-cause).516Um die Ursache zu bestätigen, siehe [Die Ursache bestätigen](#confirm-the-cause).

517 517 

518Wählen Sie den Wert, dessen Zeit Ihre längste Denkpause abdeckt: etwa 20 Minuten beim Standardwert, 30 bei `900000` und 45 bei `1800000`. Folgen Sie dann [Wert in einer Richtlinie bereitstellen](#deliver-the-value-in-a-policy).518Wählen Sie den Wert, dessen Zeit Ihre längste Denkpause abdeckt: etwa 20 Minuten beim Standardwert, 30 bei `900000` und 45 bei `1800000`. Folgen Sie dann [Den Wert in einer Richtlinie bereitstellen](#deliver-the-value-in-a-policy).

519 519 

520## Verwandt520## Verwandt

521 521 

Details

228 228 

229Teleport erfordert eine Authentifizierung über ein claude.ai-Abonnement. Suchen Sie den Fall, der auf Sie zutrifft:229Teleport erfordert eine Authentifizierung über ein claude.ai-Abonnement. Suchen Sie den Fall, der auf Sie zutrifft:

230 230 

231* **Sie sind über einen API-Schlüssel authentifiziert**: Führen Sie `/login` aus, um sich stattdessen mit Ihrem claude.ai-Konto anzumelden231* **Sie sind mit einem API-Schlüssel oder einem Console-Konto angemeldet**: Führen Sie `claude auth login` in Ihrer Shell aus und melden Sie sich dann mit claude.ai an

232* **Der Fehler nennt Ihren Anbieter**: Cloud-Sitzungen sind über Drittanbieter nicht verfügbar. Siehe die [Fehlertabelle](#errors-when-sending-to-a-cloud-session)232* **Der Fehler nennt Ihren Anbieter**: Cloud-Sitzungen sind über Drittanbieter nicht verfügbar. Siehe die [Fehlertabelle](#errors-when-sending-to-a-cloud-session)

233* **Sie sind bereits über claude.ai angemeldet**: Ihre Organisation hat Cloud-Sitzungen möglicherweise deaktiviert233* **Sie sind bereits über claude.ai angemeldet**: Ihre Organisation hat Cloud-Sitzungen möglicherweise deaktiviert

234 234 


437 437 

438### Unable to get organization UUID438### Unable to get organization UUID

439 439 

440`claude --cloud` und `claude --teleport` erfordern eine Anmeldung mit einem claude.ai-Konto. Wenn Sie sich mit einem API-Schlüssel authentifizieren oder Ihre gespeicherten Kontodaten veraltet sind, sehen Sie eine der folgenden Meldungen:440`claude --cloud` und `claude --teleport` erfordern eine Anmeldung mit einem claude.ai-Konto. Wenn Sie sich stattdessen mit einem API-Schlüssel oder einer Console-Anmeldung authentifizieren oder Ihre gespeicherten Kontodaten veraltet sind, sehen Sie eine der folgenden Meldungen:

441 441 

442* `Unable to get organization UUID`442* `Unable to get organization UUID`

443* ``Cloud sessions need a claude.ai sign-in. Run `claude auth login` (or /login in a local session), then try again.``443* ``Cloud sessions need a claude.ai sign-in. Run `claude auth login` (or /login in a local session), then try again.``

444* ``Cloud sessions aren't available with this Console sign-in. They need a claude.ai sign-in. Run `claude auth login` (or /login in a local session), then try again.``

444* `Error loading Claude Code sessions` in der Sitzungsauswahl, wenn Sie `claude --teleport` ohne eine Sitzungs-ID ausführen445* `Error loading Claude Code sessions` in der Sitzungsauswahl, wenn Sie `claude --teleport` ohne eine Sitzungs-ID ausführen

445 446 

446Führen Sie [`claude auth login`](https://code.claude.com/docs/de/cli-reference#cli-commands) in Ihrer Shell aus, um sich mit Ihrem claude.ai-Konto anzumelden, und versuchen Sie dann den Befehl erneut. Innerhalb einer laufenden Sitzung bewirkt `/login` dasselbe. Wenn der Fehler stattdessen Ihren Anbieter benennt, siehe die [Fehlertabelle](#errors-when-sending-to-a-cloud-session): Cloud-Sitzungen sind nicht über Drittanbieter verfügbar.447Führen Sie [`claude auth login`](https://code.claude.com/docs/de/cli-reference#cli-commands) in Ihrer Shell aus, um sich mit Ihrem claude.ai-Konto anzumelden, und versuchen Sie dann den Befehl erneut. Innerhalb einer laufenden Sitzung bewirkt `/login` dasselbe. Wenn der Fehler stattdessen Ihren Anbieter benennt, siehe die [Fehlertabelle](#errors-when-sending-to-a-cloud-session): Cloud-Sitzungen sind nicht über Drittanbieter verfügbar.

Details

99 99 

100Diese Anforderungen entscheiden, ob Sie ein Secret hinzufügen können und ob der Agent-Proxy es nach dem Hinzufügen verwenden kann:100Diese Anforderungen entscheiden, ob Sie ein Secret hinzufügen können und ob der Agent-Proxy es nach dem Hinzufügen verwenden kann:

101 101 

102* **Rolle**: In Pro-, Max- und Team-Plänen können Sie unabhängig von Ihrer Rolle Secrets in Ihren eigenen Umgebungen hinzufügen und löschen. In Team und Enterprise haben Owner eine Organisationsadministrator-Rolle in Ihrer claude.ai-Organisation, Admins nicht, was in diesen Fällen ändert, was Sie sehen:102* **Rolle**: In jedem Plan können Sie unabhängig von Ihrer Rolle Secrets in Ihren eigenen Umgebungen hinzufügen und löschen. In Team und Enterprise haben Owner eine Organisationsadministrator-Rolle in Ihrer claude.ai-Organisation, Admins nicht, was in diesen Fällen ändert, was Sie sehen:

103 * **Ihre eigene Umgebung in Enterprise**: Mit einer Organisationsadministrator-Rolle fügen Sie Secrets hinzu und löschen sie. Ohne diese Rolle öffnet die Zeile **Netzwerk-Secrets** die Liste der Secrets mit dem Hinweis „Nur ein Organisationsadministrator kann Netzwerk-Secrets hinzufügen oder löschen“ und ohne Schaltfläche **Secret hinzufügen** oder Löschen. Bitten Sie einen Owner, das Secret zu einer [gemeinsamen Umgebung](#organization-shared-environments) hinzuzufügen, und führen Sie Ihre Sitzungen dann dort aus103 * **Ihre eigene Umgebung**: Ohne Organisationsadministrator-Rolle öffnet **Secret hinzufügen** ein [kürzeres Formular](#add-a-secret-without-the-role)

104 * **Eine gemeinsame Umgebung**: Owner [fügen ihre Secrets hinzu und löschen sie](#add-a-credential) über die Admin-Einstellungen. Ohne Organisationsadministrator-Rolle bitten Sie einen Owner, das Secret hinzuzufügen, da der Dialog der Umgebung keinen Bereich **Netzwerk-Secrets** hat104 * **Eine gemeinsame Umgebung**: Owner [fügen ihre Secrets hinzu und löschen sie](#add-a-credential) über die Admin-Einstellungen. Ohne Organisationsadministrator-Rolle bitten Sie einen Owner, das Secret hinzuzufügen, da der Dialog der Umgebung keinen Bereich **Netzwerk-Secrets** hat

105 * **Ihre eigene Umgebung in Team**: Ohne Organisationsadministrator-Rolle öffnet **Secret hinzufügen** ein [kürzeres Formular](#add-a-secret-without-the-role), das einen einzelnen Host aufnimmt

106* **Umgebungstyp**: eine von Anthropic gehostete Cloud-Umgebung, die bereits existiert. Eine [selbst gehostete Umgebung](https://code.claude.com/docs/de/self-hosted-environments) hat keine Netzwerk-Secrets105* **Umgebungstyp**: eine von Anthropic gehostete Cloud-Umgebung, die bereits existiert. Eine [selbst gehostete Umgebung](https://code.claude.com/docs/de/self-hosted-environments) hat keine Netzwerk-Secrets

107* **API-Erreichbarkeit**: die API akzeptiert Verbindungen aus dem Internet, da Anfragen aus dem Netzwerk von Anthropic ausgehen106* **API-Erreichbarkeit**: die API akzeptiert Verbindungen aus dem Internet, da Anfragen aus dem Netzwerk von Anthropic ausgehen

108* **Verschlüsselungsschlüssel**: wenn Ihre Organisation kundenverwaltete Verschlüsselungsschlüssel verwendet, können Sie keine Netzwerk-Secrets speichern107* **Verschlüsselungsschlüssel**: wenn Ihre Organisation kundenverwaltete Verschlüsselungsschlüssel verwendet, können Sie keine Netzwerk-Secrets speichern


111 110 

112Sie fügen Secrets einzeln hinzu. Um die Hosts oder den Wert eines Secrets zu ändern, löschen Sie es und fügen Sie es erneut hinzu.111Sie fügen Secrets einzeln hinzu. Um die Hosts oder den Wert eines Secrets zu ändern, löschen Sie es und fügen Sie es erneut hinzu.

113 112 

114Um ein Secret zu einer [gemeinsamen Umgebung](#organization-shared-environments) hinzuzufügen, öffnen Sie diese zur Bearbeitung über die Seite **Cloud-Umgebungen** in den [Admin-Einstellungen](https://claude.ai/admin-settings) und fahren Sie dann mit Schritt 2 im Bereich **Netzwerk-Secrets** fort. Wenn Sie einen Team-Plan nutzen und keine [Organisationsadministrator-Rolle](#requirements) haben, folgen Sie Schritt 1 in Ihrer eigenen Umgebung und [füllen Sie dann das kürzere Formular aus](#add-a-secret-without-the-role).113Um ein Secret zu einer [gemeinsamen Umgebung](#organization-shared-environments) hinzuzufügen, öffnen Sie diese zur Bearbeitung über die Seite **Cloud-Umgebungen** in den [Admin-Einstellungen](https://claude.ai/admin-settings) und fahren Sie dann mit Schritt 2 im Bereich **Netzwerk-Secrets** fort. Wenn Sie einen Team- oder Enterprise-Plan nutzen und keine [Organisationsadministrator-Rolle](#requirements) haben, folgen Sie Schritt 1 in Ihrer eigenen Umgebung und [füllen Sie dann das kürzere Formular aus](#add-a-secret-without-the-role).

115 114 

116**1. Öffnen Sie die Netzwerk-Secrets der Umgebung**115**1. Öffnen Sie die Netzwerk-Secrets der Umgebung**

117 116 


133 132 

134Um zu bestätigen, dass das Secret funktioniert, starten Sie eine Sitzung in der Umgebung und bitten Sie Claude, die API aufzurufen, zum Beispiel mit `curl`. Die API antwortet, als wäre der Schlüssel in der Anfrage, und der Schlüssel erscheint nicht in den Umgebungsvariablen der Sitzung oder in einer Datei. Wenn die Liste ein Secret stattdessen als **Nicht gesendet** markiert, sagt der Hinweis darunter, warum und was zu tun ist. Zwei Secrets, deren Hosts sich überlappen, ohne genau übereinzustimmen, erhalten keine Markierung, und der Agent-Proxy sendet nur eines davon.133Um zu bestätigen, dass das Secret funktioniert, starten Sie eine Sitzung in der Umgebung und bitten Sie Claude, die API aufzurufen, zum Beispiel mit `curl`. Die API antwortet, als wäre der Schlüssel in der Anfrage, und der Schlüssel erscheint nicht in den Umgebungsvariablen der Sitzung oder in einer Datei. Wenn die Liste ein Secret stattdessen als **Nicht gesendet** markiert, sagt der Hinweis darunter, warum und was zu tun ist. Zwei Secrets, deren Hosts sich überlappen, ohne genau übereinzustimmen, erhalten keine Markierung, und der Agent-Proxy sendet nur eines davon.

135 134 

136#### Fügen Sie ein Secret in einem Team-Plan ohne Organisationsadministrator-Rolle hinzu135#### Fügen Sie ein Secret ohne Organisationsadministrator-Rolle hinzu

137 136 

138Wenn Sie einen Team-Plan nutzen und keine [Organisationsadministrator-Rolle](#requirements) haben, nimmt das Formular **Secret hinzufügen** ein Secret für einen einzelnen Host auf. Wählen Sie die [Zeile **Netzwerk-Secrets**](#add-a-credential) Ihrer Umgebung und dann **Secret hinzufügen** aus. Füllen Sie diese Felder aus und wählen Sie die Schaltfläche **Secret hinzufügen** des Formulars:137Wenn Sie einen Team- oder Enterprise-Plan nutzen und keine [Organisationsadministrator-Rolle](#requirements) haben, nimmt das Formular **Secret hinzufügen** ein Secret für einen einzelnen Host auf. Wählen Sie die [Zeile **Netzwerk-Secrets**](#add-a-credential) Ihrer Umgebung und dann **Secret hinzufügen** aus. Füllen Sie diese Felder aus und wählen Sie die Schaltfläche **Secret hinzufügen** des Formulars:

139 138 

140* **Host**: der eine Host, der das Secret erhält, wie `api.example.com`. Das Formular akzeptiert keinen `*.`-Platzhalter139* **Host**: der eine Host, der das Secret erhält, wie `api.example.com`. Das Formular akzeptiert keinen `*.`-Platzhalter

141* **Name**: eine optionale Bezeichnung für das Secret140* **Name**: eine optionale Bezeichnung für das Secret

computer-use.md +10 −10

Details

68sicherzustellen, dass nichts abstürzt. Machen Sie einen Screenshot von Fehlerzuständen, die Sie finden.68sicherzustellen, dass nichts abstürzt. Machen Sie einen Screenshot von Fehlerzuständen, die Sie finden.

69```69```

70 70 

71## Genehmigen Sie Apps pro Sitzung71## Apps pro Sitzung genehmigen

72 72 

73Das Aktivieren des `computer-use`-Servers gewährt Claude nicht automatisch Zugriff auf jede App auf Ihrem Computer. Wenn Claude eine bestimmte App zum ersten Mal in einer Sitzung benötigt, erscheint eine Aufforderung in Ihrem Terminal mit:73Das Aktivieren des `computer-use`-Servers gewährt Claude keinen Zugriff auf jede App auf Ihrem Rechner. Wenn Claude in einer Sitzung zum ersten Mal eine bestimmte App benötigt, erscheint in Ihrem Terminal eine Berechtigungsabfrage, die Folgendes anzeigt:

74 74 

75* Welche Apps Claude steuern möchte75* Welche Apps Claude steuern möchte

76* Alle zusätzlichen angeforderten Berechtigungen, wie z. B. Zwischenablage-Zugriff76* Alle zusätzlich angefragten Berechtigungen, z. B. Zugriff auf die Zwischenablage

77* Wie viele andere Apps ausgeblendet werden, während Claude arbeitet77* Wie viele andere Apps ausgeblendet werden, während Claude arbeitet

78 78 

79Wählen Sie **Für diese Sitzung zulassen** oder **Ablehnen**. Genehmigungen gelten für die aktuelle Sitzung. Sie können mehrere Apps auf einmal genehmigen, wenn Claude sie zusammen anfordert.79Wählen Sie **Allow for this session** oder **Deny**. Genehmigungen gelten für die aktuelle Sitzung. Sie können mehrere Apps gleichzeitig genehmigen, wenn Claude sie gemeinsam anfragt.

80 80 

81Apps mit großer Reichweite zeigen eine zusätzliche Warnung in der Aufforderung, damit Sie wissen, welche Zugriffe das Genehmigen gewährt:81Apps mit weitreichendem Zugriff zeigen in der Abfrage eine zusätzliche Warnung an, damit Sie wissen, was Sie mit der Genehmigung gewähren:

82 82 

83| Warnung | Gilt für |83| Warnung | Gilt für |

84| :- | :- |84| :- | :- |

85| Gleichbedeutend mit Shell-Zugriff | Terminal, iTerm, VS Code, Warp und andere Terminals und IDEs |85| Entspricht Shell-Zugriff | Terminal, iTerm, VS Code, Warp sowie andere Terminals und IDEs |

86| Kann jede Datei lesen oder schreiben | Finder |86| Kann beliebige Dateien lesen oder schreiben | Finder |

87| Kann Systemeinstellungen ändern | Systemeinstellungen |87| Kann Systemeinstellungen ändern | Systemeinstellungen |

88 88 

89Diese Apps sind nicht blockiert. Die Warnung hilft Ihnen zu entscheiden, ob die Aufgabe dieses Zugriffsniveau rechtfertigt.89Diese Apps werden nicht blockiert. Anhand der Warnung können Sie entscheiden, ob die Aufgabe dieses Maß an Zugriff rechtfertigt.

90 90 

91Genehmigen Sie Finder, um Claude das Klicken auf den Desktop, das Dock oder ein Finder-Fenster zu ermöglichen.91Genehmigen Sie den Finder, damit Claude auf den Schreibtisch, das Dock oder ein Finder-Fenster klicken kann.

92 92 

93Claudes Kontrollebene variiert auch je nach App-Kategorie: Browser und Handelsplattformen sind nur zum Anschauen, Terminals und IDEs sind nur zum Klicken und alles andere erhält vollständige Kontrolle. Siehe [App-Berechtigungen in Desktop](https://code.claude.com/docs/de/desktop.md#app-permissions) für die vollständige Tier-Aufschlüsselung.93Der Umfang von Claudes Kontrolle variiert außerdem je nach App-Kategorie: Browser und Trading-Plattformen sind nur zur Ansicht freigegeben, Terminals und IDEs erlauben nur Klicks, und alle anderen Apps erhalten die volle Kontrolle. Die vollständige Aufschlüsselung der Stufen finden Sie unter [App-Berechtigungen in Desktop](https://code.claude.com/docs/de/desktop.md#app-permissions).

94 94 

95## Wie Claude auf Ihrem Bildschirm arbeitet95## Wie Claude auf Ihrem Bildschirm arbeitet

96 96 

Details

45 45 

46## Wenn sich Ihr Kontext füllt46## Wenn sich Ihr Kontext füllt

47 47 

48Claude Code komprimiert automatisch, wenn Sie sich dem Limit nähern, sodass ein volles Kontextfenster Ihre Sitzung nicht beendet. Der automatische Durchgang funktioniert genauso wie der `/compact`-Schritt in der Zeitleiste. Siehe [Wenn sich der Kontext füllt](https://code.claude.com/docs/de/how-claude-code-works.md#when-context-fills-up) für das, was er bewahrt. Informationen dazu, wann Claude Code auch eine Konversation komprimiert, die Sie ruhen lassen, finden Sie unter [Komprimierung bei Inaktivität](https://code.claude.com/docs/de/settings-reference.md#idlecompaction).48Claude Code komprimiert automatisch, wenn Sie sich dem Limit nähern, sodass ein volles Kontextfenster Ihre Sitzung nicht beendet. Der automatische Durchlauf funktioniert genauso wie der `/compact`-Schritt in der Zeitleiste. Unter [Wenn sich der Kontext füllt](https://code.claude.com/docs/de/how-claude-code-works.md#when-context-fills-up) erfahren Sie, was dabei erhalten bleibt. Informationen dazu, wann Claude Code auch eine Konversation komprimiert, die Sie inaktiv lassen, finden Sie unter [Komprimierung bei Inaktivität](https://code.claude.com/docs/de/settings-reference.md#idlecompaction).

49 49 

50Sie können auch handeln, bevor der automatische Durchgang ausgeführt wird:50Sie können auch handeln, bevor der automatische Durchlauf ausgeführt wird:

51 51 

52* **Mit Fokus komprimieren**: Führen Sie `/compact` mit Anweisungen aus, wie `/compact focus on the auth bug fix`, bevor Sie eine lange neue Aufgabe starten. Die Zusammenfassung behält das, was Sie wählen, anstelle dessen, was der automatische Durchgang als wichtig erachtet.52* **Mit Fokus komprimieren**: Führen Sie `/compact` mit Anweisungen aus, etwa `/compact focus on the auth bug fix`, bevor Sie eine lange neue Aufgabe beginnen. Die Zusammenfassung behält bei, was Sie auswählen, statt dessen, was der automatische Durchlauf für wichtig hält.

53* **Teil der Konversation komprimieren**: Führen Sie `/rewind` aus, wählen Sie eine Nachricht aus, und wählen Sie **Von hier aus zusammenfassen** oder **Bis hier zusammenfassen**. Siehe [Rewind und Zusammenfassung](https://code.claude.com/docs/de/checkpointing.md#rewind-and-summarize) für das, was jede Option behält und wie Sie die Zusammenfassung lenken.53* **Einen Teil der Konversation komprimieren**: Führen Sie `/rewind` aus, wählen Sie eine Nachricht aus und wählen Sie **Summarize from here** oder **Summarize up to here**. Unter [Zurückspulen und zusammenfassen](https://code.claude.com/docs/de/checkpointing.md#rewind-and-summarize) erfahren Sie, was jede Option beibehält und wie Sie die Zusammenfassung steuern.

54* **Früher komprimieren**: Führen Sie [`/autocompact`](https://code.claude.com/docs/de/commands#all-commands) mit einer Token-Anzahl aus, wie `/autocompact 500k`, um festzulegen, wie voll das Kontextfenster wird, bevor der automatische Durchgang ausgeführt wird. Siehe [Automatisches Kompressionsfenster einstellen](https://code.claude.com/docs/de/model-config.md#set-the-auto-compact-window) für akzeptierte Werte und Überschreibungen.54* **Früher komprimieren**: Führen Sie [`/autocompact`](https://code.claude.com/docs/de/commands#all-commands) mit einer Token-Anzahl aus, etwa `/autocompact 500k`, um festzulegen, wie voll das Kontextfenster werden darf, bevor der automatische Durchlauf ausgeführt wird. Unter [Das Fenster für die automatische Komprimierung festlegen](https://code.claude.com/docs/de/model-config.md#set-the-auto-compact-window) finden Sie zulässige Werte und Möglichkeiten zum Überschreiben.

55* **Zwischen Aufgaben löschen**: Führen Sie `/clear` aus, wenn Sie zu nicht verwandter Arbeit wechseln. Alte Konversationen verdrängen die Dateien, die Sie als nächstes benötigen, und kosten Token bei jeder Nachricht.55* **Zwischen Aufgaben leeren**: Führen Sie `/clear` aus, wenn Sie zu einer nicht verwandten Arbeit wechseln. Eine alte Konversation verdrängt die Dateien, die Sie als Nächstes benötigen, und kostet bei jeder Nachricht Token.

56* **Große Lesevorgänge delegieren**: Senden Sie Recherche an einen [Subagent](https://code.claude.com/docs/de/sub-agents.md), sodass die Dateiinhalte in seinem Kontextfenster bleiben, nicht in Ihrem.56* **Umfangreiche Lesevorgänge delegieren**: Übergeben Sie Recherchen an einen [Subagenten](https://code.claude.com/docs/de/sub-agents.md), damit die Dateiinhalte in dessen Kontextfenster bleiben und nicht in Ihrem.

57 57 

58Wenn Sie ein größeres Fenster benötigen, anstatt eine kleinere Konversation zu führen, unterstützen Fable-Modelle, Sonnet 5 und später, Haiku 5.5, Opus 4.6 und später sowie Sonnet 4.6 ein Kontextfenster mit 1 Million Token. Siehe [Erweiterter Kontext](https://code.claude.com/docs/de/model-config.md#extended-context) für die Verfügbarkeit nach Plan und wie Sie eine `[1m]` Modellvariante auswählen. Die Komprimierung funktioniert auf die gleiche Weise bei der größeren Grenze.58Wenn Sie ein größeres Fenster statt einer kleineren Konversation benötigen: Fable-Modelle, Sonnet 5 und neuer, Haiku 5.5, Opus 4.6 und neuer sowie Sonnet 4.6 unterstützen ein Kontextfenster von 1 Million Token. Unter [Erweiterter Kontext](https://code.claude.com/docs/de/model-config.md#extended-context) finden Sie die Verfügbarkeit je nach Plan und erfahren, wie Sie eine `[1m]`-Modellvariante auswählen. Die Komprimierung funktioniert beim größeren Limit genauso.

59 59 

60Der Punkt, an dem die automatische Komprimierung ausgeführt wird, hängt von Ihrem Modell und Ihrer Konfiguration ab. Siehe [Standardschwellen für automatische Komprimierung](https://code.claude.com/docs/de/model-config.md#default-auto-compact-thresholds) für die Grenzen pro Modell, und [Fenster für ein Gateway oder benutzerdefinierte Modell-ID korrigieren](https://code.claude.com/docs/de/model-config.md#correct-the-window-for-a-gateway-or-custom-model-id), wenn Claude Code das falsche Fenster für Ihre Modell-ID annimmt, wie z. B. einen [LLM-Gateway](https://code.claude.com/docs/de/llm-gateway)-Alias.60Der Zeitpunkt, an dem die automatische Komprimierung ausgeführt wird, hängt von Ihrem Modell und Ihrer Konfiguration ab. Unter [Standard-Schwellenwerte für die automatische Komprimierung](https://code.claude.com/docs/de/model-config.md#default-auto-compact-thresholds) finden Sie die Grenzen pro Modell, und unter [Das Fenster für ein Gateway oder eine benutzerdefinierte Modell-ID korrigieren](https://code.claude.com/docs/de/model-config.md#correct-the-window-for-a-gateway-or-custom-model-id) erfahren Sie, was zu tun ist, wenn Claude Code für Ihre Modell-ID ein falsches Fenster annimmt, etwa bei einem Alias eines [LLM-Gateways](https://code.claude.com/docs/de/llm-gateway).

61 61 

62## Überprüfen Sie Ihre eigene Sitzung62## Überprüfen Sie Ihre eigene Sitzung

63 63 

Details

36Die folgenden Prozesse starten nicht durch den Launcher:36Die folgenden Prozesse starten nicht durch den Launcher:

37 37 

38* Eine Sitzung, die Sie selbst in einem Terminal starten, die so ausgeführt wird, wie Sie sie aufgerufen haben. Um diese Sitzungen abzudecken, legen Sie ein Skript namens `claude` in ein Verzeichnis früher auf `PATH`, das Ihren Launcher mit der echten Binärdatei ausführt; ersetzen Sie nicht den verwalteten Symlink. Der Hintergrunddienst und seine Sitzungen starten ohne `PATH`-Lookup, daher stapeln sich die beiden Launcher dort nicht.38* Eine Sitzung, die Sie selbst in einem Terminal starten, die so ausgeführt wird, wie Sie sie aufgerufen haben. Um diese Sitzungen abzudecken, legen Sie ein Skript namens `claude` in ein Verzeichnis früher auf `PATH`, das Ihren Launcher mit der echten Binärdatei ausführt; ersetzen Sie nicht den verwalteten Symlink. Der Hintergrunddienst und seine Sitzungen starten ohne `PATH`-Lookup, daher stapeln sich die beiden Launcher dort nicht.

39* Der erste Prozess eines `claude-cli://` Deep Links, den der Protokoll-Handler des Betriebssystems direkt startet. Alles, das diese Sitzung danach im Hintergrund startet, läuft durch den Launcher. Um diesen Pfad vollständig zu schließen, [verhindern Sie die Handler-Registrierung](https://code.claude.com/docs/de/deep-links.md#registration-and-supported-platforms) mit der Einstellung `disableDeepLinkRegistration`.39* Eine über einen `claude-cli://`-Deep-Link geöffnete Sitzung, die in einem neuen Terminal ohne Ihren Launcher startet. Um zu verhindern, dass Deep Links für einen neuen Benutzer Sitzungen öffnen, setzen Sie [`disableDeepLinkRegistration`](https://code.claude.com/docs/de/settings-reference#disabledeeplinkregistration) auf `"disable"`, bevor dieser Benutzer Claude Code zum ersten Mal ausführt. Bei einem Benutzer, der bereits einen [registrierten Handler](https://code.claude.com/docs/de/deep-links.md#registration-and-supported-platforms) hat, öffnen Deep Links weiterhin Sitzungen, da die Einstellung den Handler nicht entfernt.

40* Der Neustart, den `--worktree` kombiniert mit `--tmux` durchführt: Der Terminal-Multiplexer startet diesen Pane, nicht die Binärdatei von Claude Code.40* Der Neustart, den `--worktree` kombiniert mit `--tmux` durchführt: Der Terminal-Multiplexer startet diesen Pane, nicht die Binärdatei von Claude Code.

41* Der Native-Messaging-Host, den [Claude in Chrome](https://code.claude.com/docs/de/chrome.md) registriert: Der Browser startet ihn, nicht die Binärdatei von Claude Code.41* Der Native-Messaging-Host, den [Claude in Chrome](https://code.claude.com/docs/de/chrome.md) registriert: Der Browser startet ihn, nicht die Binärdatei von Claude Code.

42 42 

data-usage.md +28 −28

Details

8 8 

9## Datenrichtlinien9## Datenrichtlinien

10 10 

11### Datentrainingsrichtlinie11### Richtlinie zum Training mit Daten

12 12 

13**Verbrauchernutzer (Free-, Pro- und Max-Pläne)**:13**Privatnutzer (Free-, Pro- und Max-Pläne)**:

14Wir geben Ihnen die Möglichkeit, Ihre Daten zur Verbesserung zukünftiger Claude-Modelle zu nutzen. Wir trainieren neue Modelle mit Daten aus Free-, Pro- und Max-Konten, wenn diese Einstellung aktiviert ist (auch wenn Sie Claude Code aus diesen Konten verwenden).14Wir überlassen Ihnen die Wahl, ob Ihre Daten zur Verbesserung zukünftiger Claude-Modelle verwendet werden dürfen. Wir trainieren neue Modelle mit Daten aus Free-, Pro- und Max-Konten, wenn diese Einstellung aktiviert ist (auch wenn Sie Claude Code über diese Konten verwenden).

15 15 

16**Kommerzielle Nutzer**: (Team- und Enterprise-Pläne, API, Plattformen von Drittanbietern und Claude Gov) behalten bestehende Richtlinien bei: Anthropic trainiert keine generativen Modelle mit Code oder Eingabeaufforderungen, die unter kommerziellen Bedingungen an Claude Code gesendet werden, es sei denn, der Kunde hat sich dafür entschieden, seine Daten für die Modellverbesserung bereitzustellen (zum Beispiel das [Developer Partner Program](https://support.claude.com/de/articles/11174108-about-the-development-partner-program)).16**Geschäftskunden**: (Team- und Enterprise-Pläne, API, Drittanbieterplattformen und Claude Gov) Es gelten die bestehenden Richtlinien: Anthropic trainiert keine generativen Modelle mit Code oder Prompts, die unter kommerziellen Bedingungen an Claude Code gesendet werden, es sei denn, der Kunde hat sich entschieden, uns seine Daten zur Modellverbesserung bereitzustellen (zum Beispiel über das [Developer Partner Program](https://support.claude.com/en/articles/11174108-about-the-development-partner-program)).

17 17 

18### Development Partner Program18### Development Partner Program

19 19 

20Wenn Sie sich explizit dafür entscheiden, uns Materialien zum Trainieren bereitzustellen, z. B. über das [Development Partner Program](https://support.claude.com/de/articles/11174108-about-the-development-partner-program), können wir diese Materialien zum Trainieren unserer Modelle verwenden. Ein Organisationsadministrator kann sich explizit für das Development Partner Program für seine Organisation anmelden. Beachten Sie, dass dieses Programm nur für die Anthropic-API von Erstanbietern verfügbar ist und nicht für Amazon Bedrock oder Google Cloud's Agent Platform-Nutzer.20Wenn Sie sich ausdrücklich für Methoden entscheiden, uns Materialien zum Training bereitzustellen, etwa über das [Development Partner Program](https://support.claude.com/en/articles/11174108-about-the-development-partner-program), können wir diese bereitgestellten Materialien zum Training unserer Modelle verwenden. Ein Admin einer Organisation kann sich ausdrücklich für die Teilnahme seiner Organisation am Development Partner Program entscheiden. Beachten Sie, dass dieses Programm nur für die First-Party-API von Anthropic verfügbar ist und nicht für Nutzer von Amazon Bedrock oder Google Cloud's Agent Platform.

21 21 

22### Feedback mit dem `/feedback`-Befehl22### Feedback über den Befehl `/feedback`

23 23 

24Wenn Sie uns Feedback zu Claude Code mit dem `/feedback`-Befehl senden, können wir Ihr Feedback zur Verbesserung unserer Produkte und Dienstleistungen nutzen. Transkripte, die über `/feedback` freigegeben werden, oder über `/bug` und `/share`, die über denselben Pfad berichten, werden 5 Jahre lang aufbewahrt.24Wenn Sie uns über den Befehl `/feedback` Feedback zu Claude Code senden, können wir Ihr Feedback zur Verbesserung unserer Produkte und Dienste verwenden. Transkripte, die über `/feedback` oder über `/bug` und `/share` geteilt werden, die über denselben Weg melden, werden 5 Jahre lang aufbewahrt.

25 25 

26Mit [Claude-entworfenes Feedback](https://code.claude.com/docs/de/tools-reference.md#sendfeedback-tool-behavior) kann Claude auch einen Feedback-Bericht entwerfen und zur Überprüfung in die Warteschlange auf Ihrem Computer einreihen. Claude Code sendet nichts, bis Sie den Entwurf senden, und ein gesendeter Entwurf durchläuft denselben Übermittlungspfad und die gleiche Aufbewahrung wie andere `/feedback`-Berichte.26Mit [von Claude entworfenem Feedback](https://code.claude.com/docs/de/tools-reference.md#sendfeedback-tool-behavior) kann Claude auch einen Feedback-Bericht entwerfen und ihn auf Ihrem Rechner zur Überprüfung in eine Warteschlange stellen. Claude Code sendet nichts, bis Sie sich entscheiden, den Entwurf zu senden, und ein gesendeter Entwurf durchläuft denselben Übermittlungsweg und dieselbe Aufbewahrung wie andere `/feedback`-Berichte.

27 27 

28### Sitzungsqualitätsumfragen28### Umfragen zur Sitzungsqualität

29 29 

30Wenn Sie in Claude Code die Eingabeaufforderung „Wie macht Claude das in dieser Sitzung?" sehen, wird bei der Beantwortung dieser Umfrage (einschließlich der Auswahl von „Verwerfen") nur Ihre Bewertung aufgezeichnet. Wir erfassen oder speichern keine Gesprächstranskripte, Eingaben, Ausgaben oder andere Sitzungsdaten als Teil der Bewertungsaufforderung selbst. Im Gegensatz zu Daumen-hoch/runter-Feedback oder `/feedback`-Berichten ist diese Sitzungsqualitätsumfrage eine einfache Produktzufriedenheitsmetrik.30Wenn Ihnen in Claude Code die Frage „How is Claude doing this session?“ angezeigt wird, wird bei der Beantwortung dieser Umfrage, einschließlich der Auswahl von „Dismiss“, nur Ihre Bewertung erfasst. Im Rahmen der Bewertungsabfrage selbst erfassen oder speichern wir keine Konversationstranskripte, Eingaben, Ausgaben oder andere Sitzungsdaten. Anders als Daumen-hoch/runter-Feedback oder `/feedback`-Berichte ist diese Umfrage zur Sitzungsqualität eine einfache Kennzahl zur Produktzufriedenheit.

31 31 

32Nach der Bewertungsaufforderung sehen Sie möglicherweise eine separate Folgefrage: „Kann Anthropic Ihr Sitzungstranskript ansehen, um uns bei der Verbesserung von Claude Code zu helfen?". Dies ist ein optionaler zweiter Schritt, der sich von der Bewertung unterscheidet:32Nach der Bewertungsabfrage wird Ihnen möglicherweise eine separate Folgefrage angezeigt: „Can Anthropic look at your session transcript to help us improve Claude Code?“. Dies ist ein optionaler zweiter Schritt, der von der Bewertung getrennt ist:

33 33 

34* **Ja**: lädt Ihr Gesprächstranskript, alle Subagenten-Transkripte und die Raw-Sitzungsprotokoll-Datei von der Festplatte zu Anthropic hoch. Bekannte API-Schlüssel- und Token-Muster werden vor dem Hochladen redigiert. Quellcode, Dateiinhalte und andere Gesprächsinhalte werden unverändert hochgeladen. Freigegebene Transkripte werden bis zu 6 Monate lang aufbewahrt. Auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry und angemeldeten [Claude Apps Gateway](https://code.claude.com/docs/de/claude-apps-gateway)-Sitzungen schreibt „Ja" dieselbe Nutzlast stattdessen in ein lokales Archiv unter `~/.claude/feedback-bundles/`; nichts verlässt Ihren Computer, bis Sie diese Datei weiterleiten.34* **Yes**: lädt Ihr Konversationstranskript, alle Transkripte von Subagenten und die Roh-Logdatei der Sitzung von der Festplatte zu Anthropic hoch. Bekannte Muster von API-Schlüsseln und Token werden vor dem Hochladen geschwärzt. Quellcode, Dateiinhalte und andere Konversationsinhalte werden unverändert hochgeladen. Geteilte Transkripte werden bis zu 6 Monate lang aufbewahrt. Bei Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry und angemeldeten Sitzungen über das [Claude-Apps-Gateway](https://code.claude.com/docs/de/claude-apps-gateway) schreibt Yes dieselbe Payload in ein lokales Archiv unter `~/.claude/feedback-bundles/`, anstatt sie hochzuladen; nichts verlässt Ihren Rechner, bis Sie diese Datei weiterleiten.

35* **Nein**: lehnt ab, ohne etwas zu senden35* **No**: lehnt ab, ohne etwas zu senden

36* **Nicht erneut fragen**: lehnt ab und verhindert, dass diese Folgefrage in zukünftigen Sitzungen angezeigt wird36* **Don't ask again**: lehnt ab und verhindert, dass diese Folgefrage in zukünftigen Sitzungen erscheint

37 37 

38Nichts wird hochgeladen, es sei denn, Sie wählen explizit **Ja**. Organisationen mit [Zero Data Retention](https://code.claude.com/docs/de/zero-data-retention.md) oder bei denen Produktfeedback durch Organisationsrichtlinie deaktiviert ist, oder bei denen `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` gesetzt ist, sehen diese Folgefrage nie. Ihre Antworten auf diese Umfrage, einschließlich Sitzungstranskripte, die nach der Bewertungsaufforderung eingereicht werden, beeinflussen nicht Ihre Datentrainingseinstellungen und können nicht zum Trainieren unserer KI-Modelle verwendet werden.38Es wird nichts hochgeladen, es sei denn, Sie wählen ausdrücklich **Yes**. Organisationen mit [Zero Data Retention](https://code.claude.com/docs/de/zero-data-retention.md), Organisationen, in denen Produktfeedback durch eine Organisationsrichtlinie deaktiviert ist, oder Umgebungen, in denen `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` gesetzt ist, sehen diese Folgefrage nie. Ihre Antworten auf diese Umfrage, einschließlich der nach der Bewertungsabfrage übermittelten Sitzungstranskripte, haben keinen Einfluss auf Ihre Einstellungen zum Training mit Daten und können nicht zum Training unserer KI-Modelle verwendet werden.

39 39 

40Um diese Umfragen zu deaktivieren, setzen Sie `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1`. Die Umfrage wird auch deaktiviert, wenn `DISABLE_TELEMETRY`, `DO_NOT_TRACK` oder `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` gesetzt ist. Organisationen, die nicht wesentlichen Datenverkehr blockieren, aber Umfrageantworten über ihren eigenen [OpenTelemetry-Collector](https://code.claude.com/docs/de/monitoring-usage.md) erfassen, können die Umfrage wieder aktivieren, indem sie `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL=1` setzen. Die Umfrage protokolliert dann Bewertungen nur zum konfigurierten Collector. Die Transkript-Freigabe-Folgefrage und der gesamte andere Anthropic-gebundene Feedback-Datenverkehr bleiben deaktiviert. Um die Häufigkeit zu steuern, anstatt zu deaktivieren, setzen Sie [`feedbackSurveyRate`](https://code.claude.com/docs/de/settings-reference#feedbacksurveyrate) in Ihrer Einstellungsdatei auf eine Wahrscheinlichkeit zwischen `0` und `1`.40Um diese Umfragen zu deaktivieren, setzen Sie `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1`. Die Umfrage ist ebenfalls deaktiviert, wenn `DISABLE_TELEMETRY`, `DO_NOT_TRACK` oder `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` gesetzt ist. Organisationen, die nicht wesentlichen Datenverkehr blockieren, Umfrageantworten aber über ihren eigenen [OpenTelemetry-Collector](https://code.claude.com/docs/de/monitoring-usage.md) erfassen, können die Umfrage wieder aktivieren, indem sie `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL=1` setzen. Die Umfrage protokolliert Bewertungen dann ausschließlich an den konfigurierten Collector. Die Folgefrage zum Teilen des Transkripts und jeglicher andere an Anthropic gerichtete Feedback-Datenverkehr bleiben deaktiviert. Um die Häufigkeit zu steuern, anstatt die Umfrage zu deaktivieren, setzen Sie [`feedbackSurveyRate`](https://code.claude.com/docs/de/settings-reference#feedbacksurveyrate) in Ihrer Einstellungsdatei auf eine Wahrscheinlichkeit zwischen `0` und `1`.

41 41 

42### Datenspeicherung42### Datenaufbewahrung

43 43 

44Anthropic speichert Claude Code-Daten basierend auf Ihrem Kontotyp und Ihren Einstellungen.44Anthropic bewahrt Claude-Code-Daten abhängig von Ihrem Kontotyp und Ihren Einstellungen auf.

45 45 

46**Verbrauchernutzer (Free-, Pro- und Max-Pläne)**:46**Privatnutzer (Free-, Pro- und Max-Pläne)**:

47 47 

48* Nutzer, die die Datennutzung für die Modellverbesserung zulassen: 5-jährige Aufbewahrungsfrist zur Unterstützung der Modellentwicklung und Sicherheitsverbesserungen48* Nutzer, die die Verwendung ihrer Daten zur Modellverbesserung erlauben: 5-jährige Aufbewahrungsfrist zur Unterstützung der Modellentwicklung und von Sicherheitsverbesserungen

49* Nutzer, die die Datennutzung für die Modellverbesserung nicht zulassen: 30-tägige Aufbewahrungsfrist49* Nutzer, die die Verwendung ihrer Daten zur Modellverbesserung nicht erlauben: 30-tägige Aufbewahrungsfrist

50* Datenschutzeinstellungen können jederzeit unter [claude.ai/settings/data-privacy-controls](https://claude.ai/settings/data-privacy-controls) geändert werden.50* Datenschutzeinstellungen können jederzeit unter [claude.ai/settings/data-privacy-controls](https://claude.ai/settings/data-privacy-controls) geändert werden.

51 51 

52**Kommerzielle Nutzer (Team, Enterprise und API)**:52**Geschäftskunden (Team, Enterprise und API)**:

53 53 

54* Standard: 30-tägige Aufbewahrungsfrist54* Standard: 30-tägige Aufbewahrungsfrist

55* [Zero Data Retention](https://code.claude.com/docs/de/zero-data-retention.md): verfügbar für Claude Code auf Claude for Enterprise. ZDR ist nicht in dem Standard-Enterprise-Plan enthalten; es wird auf Organisationsbasis von Ihrem Account-Team aktiviert, nachdem die Berechtigung bestätigt wurde55* [Zero Data Retention](https://code.claude.com/docs/de/zero-data-retention.md): verfügbar für qualifizierte Konten für Claude Code in Claude for Enterprise. ZDR ist nicht im Standard-Enterprise-Plan enthalten; es wird nach Bestätigung der Berechtigung von Ihrem Account-Team pro Organisation aktiviert

56* Lokales Caching: Claude Code-Clients speichern Sitzungstranskripte lokal im Klartext unter `~/.claude/projects/` für standardmäßig 30 Tage, um die Sitzungswiederaufnahme zu ermöglichen. Passen Sie den Zeitraum mit `cleanupPeriodDays` an. Siehe [Anwendungsdaten](https://code.claude.com/docs/de/claude-directory.md#application-data) für das, was gespeichert wird und wie man es löscht.56* Lokales Caching: Claude-Code-Clients speichern Sitzungstranskripte standardmäßig 30 Tage lang lokal im Klartext unter `~/.claude/projects/`, um das Fortsetzen von Sitzungen zu ermöglichen. Passen Sie den Zeitraum mit `cleanupPeriodDays` an. Unter [Anwendungsdaten](https://code.claude.com/docs/de/claude-directory.md#application-data) erfahren Sie, was gespeichert wird und wie Sie es löschen.

57 57 

58 Transkripte von Sitzungen, die in Claude Desktop oder Cowork gestartet oder zuletzt fortgesetzt wurden, sind [standardmäßig von diesem Limit ausgenommen](https://code.claude.com/docs/de/claude-directory.md#cleaned-up-automatically).58 Transkripte von Sitzungen, die in Claude Desktop oder Cowork gestartet oder zuletzt fortgesetzt wurden, sind [standardmäßig von dieser Begrenzung ausgenommen](https://code.claude.com/docs/de/claude-directory.md#cleaned-up-automatically).

59 59 

60Sie können einzelne Cloud-Sitzungen jederzeit löschen. Das Löschen einer Sitzung entfernt die Ereignisdaten der Sitzung dauerhaft. Anweisungen zum Löschen von Sitzungen finden Sie unter [Sitzungen löschen](https://code.claude.com/docs/de/claude-code-on-the-web.md#delete-sessions).60Sie können einzelne Cloud-Sitzungen jederzeit löschen. Beim Löschen einer Sitzung werden die Ereignisdaten der Sitzung dauerhaft entfernt. Anweisungen zum Löschen von Sitzungen finden Sie unter [Sitzungen löschen](https://code.claude.com/docs/de/claude-code-on-the-web.md#delete-sessions).

61 61 

62Erfahren Sie mehr über Datenspeicherungspraktiken in unserem [Privacy Center](https://privacy.anthropic.com/).62Weitere Informationen zu unseren Praktiken der Datenaufbewahrung finden Sie in unserem [Privacy Center](https://privacy.anthropic.com/).

63 63 

64Vollständige Details finden Sie in unseren [Commercial Terms of Service](https://www.anthropic.com/legal/commercial-terms) (für Team-, Enterprise- und API-Nutzer) oder [Consumer Terms](https://www.anthropic.com/legal/consumer-terms) (für Free-, Pro- und Max-Nutzer) und [Privacy Policy](https://www.anthropic.com/legal/privacy).64Alle Einzelheiten finden Sie in unseren [Commercial Terms of Service](https://www.anthropic.com/legal/commercial-terms) (für Team-, Enterprise- und API-Nutzer) oder [Consumer Terms](https://www.anthropic.com/legal/consumer-terms) (für Free-, Pro- und Max-Nutzer) sowie in unserer [Datenschutzrichtlinie](https://www.anthropic.com/legal/privacy).

65 65 

66## Datenzugriff66## Datenzugriff

67 67 

desktop.md +193 −193

Details

38 38 

39Für [geplante wiederkehrende Arbeiten](https://code.claude.com/docs/de/desktop-scheduled-tasks.md), [Tastaturkürzel](#keyboard-shortcuts) oder [Aufgaben von Ihrem Telefon senden](#sessions-from-dispatch) siehe die verlinkten Seiten und Abschnitte. Wenn Sie bereits die Terminal-basierte CLI verwenden, siehe den [CLI-Vergleich](#coming-from-the-cli) für das, was übertragen wird.39Für [geplante wiederkehrende Arbeiten](https://code.claude.com/docs/de/desktop-scheduled-tasks.md), [Tastaturkürzel](#keyboard-shortcuts) oder [Aufgaben von Ihrem Telefon senden](#sessions-from-dispatch) siehe die verlinkten Seiten und Abschnitte. Wenn Sie bereits die Terminal-basierte CLI verwenden, siehe den [CLI-Vergleich](#coming-from-the-cli) für das, was übertragen wird.

40 40 

41## Sitzung starten41## Eine Sitzung starten

42 42 

43Bevor Sie Ihre erste Nachricht senden, wählen Sie in der Zeile unter dem Eingabefeld die Umgebung, den Projektordner, den Berechtigungsmodus und das Modell aus:43Bevor Sie Ihre erste Nachricht senden, wählen Sie in der Zeile unter dem Prompt-Eingabefeld die Umgebung, den Projektordner, den Berechtigungsmodus und das Modell aus:

44 44 

45* **Umgebung**: Wählen Sie mit der Umgebungsauswahl, dem ersten Steuerelement in der Zeile, wo Claude ausgeführt wird. Siehe [Umgebungskonfiguration](#environment-configuration).45* **Umgebung**: Verwenden Sie die Umgebungsauswahl, das erste Steuerelement in der Zeile, um auszuwählen, wo Claude ausgeführt wird. Siehe [Umgebungskonfiguration](#environment-configuration).

46 * Wenn eine neue Sitzung keine Umgebungsauswahl unter dem Eingabefeld hat, folgen Sie den [Schritten für das frühere Layout](#check-which-layout-you-have).46 * Wenn eine neue Sitzung unter dem Prompt-Eingabefeld keine Umgebung anzeigt, folgen Sie den [Schritten für das frühere Layout](#check-which-layout-you-have).

47* **Projektordner**: Klicken Sie auf das Steuerelement für den Projektordner neben der Umgebungsauswahl, um den Ordner auszuwählen, in dem Claude arbeitet.47* **Projektordner**: Klicken Sie auf das Steuerelement für den Projektordner neben der Umgebungsauswahl, um den Ordner auszuwählen, in dem Claude arbeitet.

48 * **Cloud-Sitzung**: Wählen Sie statt eines Ordners [Repositorys](#run-long-running-tasks-in-the-cloud) aus48 * **Cloud-Sitzung**: Wählen Sie [Repositorys](#run-long-running-tasks-in-the-cloud) anstelle eines Ordners aus

49 * **[Gespeicherte lokale oder SSH-Umgebung](#create-a-saved-environment)**: Die Umgebung enthält ihre Ordner bereits, daher zeigt die Zeile kein Steuerelement für den Projektordner an. Um die Ordner zu ändern, [bearbeiten Sie die Umgebung](#use-edit-or-remove-a-saved-environment).49 * **[Gespeicherte lokale oder SSH-Umgebung](#create-a-saved-environment)**: Die Umgebung enthält bereits ihre Ordner, daher zeigt die Zeile kein Steuerelement für den Projektordner an. Um die Ordner zu ändern, [bearbeiten Sie die Umgebung](#use-edit-or-remove-a-saved-environment).

50* **Berechtigungsmodus**: Wählen Sie mit dem [Moduswahlschalter](#choose-a-permission-mode), wie viel Autonomie Claude hat. Sie können den Berechtigungsmodus während der Sitzung ändern.50* **Berechtigungsmodus**: Verwenden Sie die [Modusauswahl](#choose-a-permission-mode), um festzulegen, wie viel Autonomie Claude hat. Sie können den Berechtigungsmodus während der Sitzung ändern.

51* **Modell**: Wählen Sie ein [Modell](https://code.claude.com/docs/de/model-config.md#available-models) in der Modellauswahl am rechten Ende der Zeile aus. Sie können das Modell während der Sitzung ändern.51* **Modell**: Wählen Sie ein [Modell](https://code.claude.com/docs/de/model-config.md#available-models) in der Modellauswahl am rechten Ende der Zeile aus. Sie können das Modell während der Sitzung ändern.

52 52 

53Geben Sie Ihre Aufgabe ein und drücken Sie **Eingabe**, um zu starten. Jede Sitzung verfolgt ihren eigenen Kontext und Änderungen unabhängig.53Geben Sie Ihre Aufgabe ein und drücken Sie **Enter**, um zu starten. Jede Sitzung verfolgt ihren eigenen Kontext und ihre Änderungen unabhängig voneinander.

54 54 

55## Arbeiten mit Code55## Mit Code arbeiten

56 56 

57Geben Sie Claude den richtigen Kontext, kontrollieren Sie, wie viel es eigenständig tut, und überprüfen Sie, was es geändert hat.57Geben Sie Claude den richtigen Kontext, steuern Sie, wie viel es selbstständig erledigt, und prüfen Sie, was es geändert hat.

58 58 

59### Verwenden Sie das Eingabefeld59### Das Eingabefeld verwenden

60 60 

61Geben Sie ein, was Claude tun soll, und drücken Sie **Eingabe**, um zu senden. Claude liest Ihre Projektdateien, nimmt Änderungen vor und führt Befehle basierend auf Ihrem [Berechtigungsmodus](#choose-a-permission-mode) aus. Sie können Claude jederzeit unterbrechen: Klicken Sie auf die Stoppschaltfläche, um sofort zu unterbrechen, oder geben Sie eine Korrektur ein und drücken Sie **Eingabe**, um sie zu senden, ohne die laufende Aktion zu stoppen. Claude liest die Korrektur, sobald die aktuelle Aktion abgeschlossen ist, und passt sich an, bevor der nächste Schritt erfolgt.61Geben Sie ein, was Claude tun soll, und drücken Sie **Enter**, um es zu senden. Claude liest Ihre Projektdateien, nimmt Änderungen vor und führt Befehle entsprechend Ihrem [Berechtigungsmodus](#choose-a-permission-mode) aus. Sie können Claude jederzeit umlenken: Klicken Sie auf die Stopp-Schaltfläche, um sofort zu unterbrechen, oder geben Sie eine Korrektur ein und drücken Sie **Enter**, um sie zu senden, ohne die laufende Aktion anzuhalten. Claude liest die Korrektur, sobald die aktuelle Aktion abgeschlossen ist, und passt sich vor dem nächsten Schritt an.

62 62 

63Die Schaltfläche **+** neben dem Eingabefeld gibt Ihnen Zugriff auf Dateianhänge, [Skills](#use-skills), [Konnektoren](#connect-external-tools) und [Plugins](#install-plugins).63Klicken Sie auf die Schaltfläche **+** neben dem Eingabefeld, um auf Dateianhänge, [Skills](#use-skills), [Konnektoren](#connect-external-tools) und [Plugins](#install-plugins) zuzugreifen.

64 64 

65### Übernehmen Sie einen vorgeschlagenen Prompt65### Einen vorgeschlagenen Prompt übernehmen

66 66 

67Nachdem Claude geantwortet hat, kann die Code-Registerkarte einen vorgeschlagenen nächsten Prompt als grauen Text im leeren Eingabefeld anzeigen. Claude Code [generiert jeden Vorschlag](https://code.claude.com/docs/de/interactive-mode.md#prompt-suggestions) aus Ihrer Konversation mit einer kurzen Hintergrundanfrage, die auf die Nutzungslimits Ihres Plans oder Ihre API-Kosten angerechnet wird.67Nachdem Claude geantwortet hat, kann der Code-Tab einen vorgeschlagenen nächsten Prompt als grauen Text im leeren Eingabefeld anzeigen. Claude Code [erzeugt jeden Vorschlag](https://code.claude.com/docs/de/interactive-mode.md#prompt-suggestions) aus Ihrer Konversation mit einer kurzen Hintergrundanfrage, die auf die Nutzungslimits Ihres Plans oder Ihre API-Kosten angerechnet wird.

68 68 

69* **Vorschlag verwenden**: Drücken Sie **Tab** oder **Pfeil nach rechts**, um ihn in das Eingabefeld zu übernehmen, bearbeiten Sie ihn bei Bedarf und drücken Sie dann **Eingabe**, um ihn zu senden. Wenn Sie **Eingabe** drücken, bevor Sie den Vorschlag übernehmen, wird er nicht gesendet.69* **Vorschlag verwenden**: Drücken Sie **Tab** oder **Rechtspfeil**, um ihn in das Eingabefeld zu übernehmen, bearbeiten Sie ihn bei Bedarf und drücken Sie dann **Enter**, um ihn zu senden. Wenn Sie **Enter** drücken, bevor Sie den Vorschlag übernommen haben, wird er nicht gesendet.

70* **Eigenen Prompt schreiben**: Beginnen Sie mit der Eingabe. Der Vorschlag wird nur angezeigt, solange das Eingabefeld leer ist und keine angehängten Dateien enthält.70* **Eigenen Prompt schreiben**: Beginnen Sie mit der Eingabe. Der Vorschlag wird nur angezeigt, solange das Eingabefeld leer ist und keine angehängten Dateien enthält.

71 71 

72Deaktivieren Sie **Prompt suggestions** unter **Settings > Code** oder **Settings > Claude Code**, um Vorschläge zu beenden. Jede Sitzung zeigt sie ab ihrem nächsten Start oder ihrer nächsten Fortsetzung nicht mehr an.72Deaktivieren Sie **Prompt suggestions** unter **Settings > Code** oder **Settings > Claude Code**, um keine Vorschläge mehr zu erhalten. Jede Sitzung zeigt sie ab dem nächsten Start oder der nächsten Fortsetzung nicht mehr an.

73 73 

74### Fügen Sie Dateien und Kontext zu Eingaben hinzu74### Dateien und Kontext zu Prompts hinzufügen

75 75 

76Um Claude eine Datei zu geben, erwähnen Sie sie per @mention oder hängen Sie sie im Eingabefeld an:76Um Claude eine Datei zu übergeben, erwähnen Sie sie mit @ oder hängen Sie sie im Eingabefeld an:

77 77 

78* **@mention-Dateien**: Geben Sie `@` gefolgt von einem Dateinamen ein, um eine Datei zum Konversationskontext hinzuzufügen.78* **Dateien mit @ erwähnen**: Geben Sie `@` gefolgt von einem Dateinamen ein, um eine Datei zum Konversationskontext hinzuzufügen.

79 * **In einer Cloud-Sitzung**: `@` kann Dateien erst auflisten, nachdem Sie Ihre erste Nachricht gesendet haben. Wenn `@` keine Dateien auflistet, senden Sie Ihre erste Nachricht ohne die Datei und erwähnen Sie die Datei dann per @mention in Ihrer nächsten Nachricht.79 * **In einer Cloud-Sitzung**: `@` kann Dateien erst auflisten, nachdem Sie Ihre erste Nachricht gesendet haben. Wenn `@` keine Dateien auflistet, senden Sie Ihre erste Nachricht ohne die Datei und erwähnen Sie die Datei dann in Ihrer nächsten Nachricht mit @.

80* **Dateien anhängen**: Hängen Sie Bilder, PDFs und andere Dateien über die Schaltfläche **+** neben dem Eingabefeld an Ihren Prompt an, oder ziehen Sie Dateien direkt in den Prompt. Dies ist nützlich zum Teilen von Screenshots von Fehlern, Design-Mockups oder Referenzdokumenten.80* **Dateien anhängen**: Hängen Sie Bilder, PDFs und andere Dateien über die Schaltfläche **+** neben dem Eingabefeld an Ihren Prompt an, oder ziehen Sie Dateien per Drag-and-Drop direkt in den Prompt. Das ist nützlich, um Screenshots von Fehlern, Design-Mockups oder Referenzdokumente zu teilen.

81 * **In einer [WSL-Sitzung](https://code.claude.com/docs/de/desktop-wsl.md)**: Wenn das Menü **+** **Add image** statt **Add files or photos** anzeigt, können Sie nur Bilder anhängen. Um Claude eine andere Datei aus dem Ordner der Sitzung zu geben, erwähnen Sie sie per @mention.81 * **In einer [WSL-Sitzung](https://code.claude.com/docs/de/desktop-wsl.md)**: Wenn das Menü **+** den Eintrag **Add image** statt **Add files or photos** anzeigt, können Sie nur Bilder anhängen. Um Claude eine andere Datei aus dem Ordner der Sitzung zu übergeben, erwähnen Sie sie mit @.

82 82 

83### Wählen Sie einen Berechtigungsmodus83### Einen Berechtigungsmodus wählen

84 84 

85Berechtigungsmodi kontrollieren, wie viel Autonomie Claude während einer Sitzung hat: ob es vor dem Bearbeiten von Dateien, dem Ausführen von Befehlen oder beidem fragt. Sie können Berechtigungsmodi jederzeit mit dem Moduswahlschalter in der Zeile unter dem Eingabefeld wechseln. Um jede Änderung selbst zu genehmigen, wechseln Sie zu Manual.85Berechtigungsmodi steuern, wie viel Autonomie Claude während einer Sitzung hat: ob es vor dem Bearbeiten von Dateien, vor dem Ausführen von Befehlen oder vor beidem nachfragt. Sie können den Berechtigungsmodus jederzeit über die Modusauswahl in der Zeile unter dem Eingabefeld wechseln. Wenn Sie jede Änderung selbst genehmigen möchten, wechseln Sie zu Manual.

86 86 

87Um einen Standardmodus für neue lokale Sitzungen festzulegen, fügen Sie `permissions.defaultMode` zu Ihrer [Einstellungsdatei](https://code.claude.com/docs/de/settings.md#where-settings-live) hinzu. Die Desktop-App liest die gleichen Einstellungsdateien wie die CLI. Ein Modus, den Sie im Wahlschalter auswählen, wird pro Ordner gespeichert und hat Vorrang vor `defaultMode` für diesen Ordner, außer Plan, das nur für die aktuelle Sitzung gilt.87Um einen Standardmodus für neue lokale Sitzungen festzulegen, fügen Sie `permissions.defaultMode` zu Ihrer [Einstellungsdatei](https://code.claude.com/docs/de/settings.md#where-settings-live) hinzu. Die Desktop-App liest dieselben Einstellungsdateien wie die CLI. Ein Modus, den Sie in der Auswahl wählen, wird pro Ordner gespeichert und hat für diesen Ordner Vorrang vor `defaultMode`, mit Ausnahme von Plan, das nur für die aktuelle Sitzung gilt.

88 88 

89| Modus | Einstellungsschlüssel | Verhalten |89| Modus | Einstellungsschlüssel | Verhalten |

90| - | - | - |90| - | - | - |

91| **Manual** | `default` | Claude fragt vor dem Bearbeiten von Dateien oder dem Ausführen von Befehlen. Sie sehen einen Diff und können jede Änderung akzeptieren oder ablehnen. |91| **Manual** | `default` | Claude fragt nach, bevor es Dateien bearbeitet oder Befehle ausführt. Sie sehen einen Diff und können jede Änderung annehmen oder ablehnen. |

92| **Accept edits** | `acceptEdits` | Claude akzeptiert Dateibearbeitungen automatisch und häufige Dateisystem-Befehle wie `mkdir`, `touch` und `mv`, fragt aber immer noch vor dem Ausführen anderer Terminal-Befehle. Verwenden Sie dies, wenn Sie Dateiänderungen vertrauen und schnellere Iterationen wünschen. |92| **Accept edits** | `acceptEdits` | Claude akzeptiert Dateibearbeitungen und gängige Dateisystembefehle wie `mkdir`, `touch` und `mv` automatisch, fragt aber weiterhin nach, bevor es andere Terminalbefehle ausführt. Verwenden Sie diesen Modus, wenn Sie Dateiänderungen vertrauen und schneller iterieren möchten. |

93| **Plan** | `plan` | Claude liest Dateien und führt Befehle aus, um zu erkunden, schlägt dann einen Plan vor, ohne Ihren Quellcode zu bearbeiten. Gut für komplexe Aufgaben, bei denen Sie den Ansatz zuerst überprüfen möchten. |93| **Plan** | `plan` | Claude liest Dateien und führt Befehle zur Erkundung aus und schlägt dann einen Plan vor, ohne Ihren Quellcode zu bearbeiten. Gut geeignet für komplexe Aufgaben, bei denen Sie den Ansatz zuerst prüfen möchten. |

94| **Auto** | `auto` | Claude läuft ohne wiederkehrende Berechtigungsabfragen; vor Aktionen wie Shell-Befehlen und Netzwerkanfragen führt ein Hintergrund-Klassifikator eine Überprüfung durch, dass sie mit Ihrer Anfrage übereinstimmen. Wird angezeigt, wenn [Auto mode verfügbar ist](#auto-mode-availability); es gibt keinen separaten Settings-Umschalter dafür. |94| **Auto** | `auto` | Claude arbeitet ohne wiederkehrende Berechtigungsabfragen; bevor Aktionen wie Shell-Befehle und Netzwerkanfragen ausgeführt werden, prüft ein Klassifikator im Hintergrund, ob sie mit Ihrer Anfrage übereinstimmen. Erscheint, wenn der [Auto-Modus verfügbar ist](#auto-mode-availability); es gibt dafür keinen separaten Schalter in den Einstellungen. |

95| **Bypass permissions** | `bypassPermissions` | Claude läuft ohne Berechtigungsabfragen, außer für die [Aktionen, die kein Modus automatisch genehmigt](https://code.claude.com/docs/de/permission-modes.md#actions-no-mode-auto-approves), Sicherheitsklassifikatoren, wenn Claude [auf externen Websites agiert](#browse-external-sites), oder Desktop-Aktionen wie das Löschen einer Sitzung, jedoch nicht das [Archivieren einer Sitzung](#work-across-sessions). Äquivalent zu `--dangerously-skip-permissions` in der CLI. Aktivieren Sie auf Pro- und Max-Plänen „Allow bypass permissions mode“ unter **Settings > Code** oder **Settings > Claude Code**. Auf Team- und Enterprise-Plänen gibt es keinen Settings-Umschalter, und die Organisationsrichtlinie kontrolliert es stattdessen. Verwenden Sie dies nur in sandboxierten Containern oder VMs. |95| **Bypass permissions** | `bypassPermissions` | Claude arbeitet ohne Berechtigungsabfragen, ausgenommen die [Aktionen, die kein Modus automatisch genehmigt](https://code.claude.com/docs/de/permission-modes.md#actions-no-mode-auto-approves), die Sicherheitsklassifikatoren, wenn Claude [auf externen Websites handelt](#browse-external-sites), sowie Desktop-Aktionen wie das Löschen einer Sitzung, nicht jedoch das [Archivieren einer Sitzung](#work-across-sessions). Entspricht `--dangerously-skip-permissions` in der CLI. Aktivieren Sie in Pro- und Max-Plänen „Allow bypass permissions mode“ unter **Settings > Code** oder **Settings > Claude Code**. In Team- und Enterprise-Plänen gibt es keinen Schalter in den Einstellungen; stattdessen steuert die Organisationsrichtlinie diesen Modus. Verwenden Sie ihn nur in Sandbox-Containern oder VMs. |

96 96 

97Frühere Versionen der Code-Registerkarte bezeichneten diese Modi als Ask permissions, Auto accept edits und Plan mode.97Frühere Versionen des Code-Tabs bezeichneten diese Modi als Ask permissions, Auto accept edits und Plan mode.

98 98 

99Der Berechtigungsmodus `dontAsk` ist nur in der [CLI](https://code.claude.com/docs/de/permission-modes.md#allow-only-pre-approved-tools-with-dontask-mode) verfügbar.99Der Berechtigungsmodus `dontAsk` ist nur in der [CLI](https://code.claude.com/docs/de/permission-modes.md#allow-only-pre-approved-tools-with-dontask-mode) verfügbar.

100 100 

101> [!TIP]101> [!TIP]

102>102>

103> Beginnen Sie komplexe Aufgaben im Plan, damit Claude einen Ansatz abbildet, bevor Änderungen vorgenommen werden. Sobald Sie den Plan genehmigen, wechseln Sie zu Accept edits oder Manual, um ihn auszuführen. Siehe [Plan-Modus](https://code.claude.com/docs/de/permission-modes.md#analyze-before-you-edit-with-plan-mode) für mehr zu diesem Workflow.103> Beginnen Sie komplexe Aufgaben in Plan, damit Claude einen Ansatz entwirft, bevor es Änderungen vornimmt. Sobald Sie den Plan freigegeben haben, wechseln Sie zu Accept edits oder Manual, um ihn umzusetzen. Weitere Informationen zu diesem Workflow finden Sie unter [Plan-Modus](https://code.claude.com/docs/de/permission-modes.md#analyze-before-you-edit-with-plan-mode).

104 104 

105Cloud-Sitzungen unterstützen Accept edits, Plan und Auto. Accept edits entspricht dem `default`-Modus: Cloud-Sitzungen genehmigen Dateibearbeitungen vorab, daher zeigt der Wahlschalter Accept edits statt Manual an. Bypass permissions ist nicht verfügbar in Cloud-Sitzungen, einschließlich Sitzungen in einer [selbstgehosteten Umgebung](https://code.claude.com/docs/de/self-hosted-environments).105Cloud-Sitzungen unterstützen Accept edits, Plan und Auto. Accept edits entspricht dem Modus `default`: Cloud-Sitzungen genehmigen Dateibearbeitungen vorab, daher zeigt die Auswahl Accept edits statt Manual an. Bypass permissions ist in Cloud-Sitzungen nicht verfügbar, auch nicht in Sitzungen in einer [selbst gehosteten Umgebung](https://code.claude.com/docs/de/self-hosted-environments).

106 106 

107Enterprise-Administratoren können einschränken, welche Berechtigungsmodi verfügbar sind. Siehe [enterprise configuration](#enterprise-configuration) für Details.107Enterprise-Admins können einschränken, welche Berechtigungsmodi verfügbar sind. Details finden Sie unter [Enterprise-Konfiguration](#enterprise-configuration).

108 108 

109#### Verfügbarkeit des Auto-Modus109#### Verfügbarkeit des Auto-Modus

110 110 

111Der Auto-Modus ist für alle Benutzer auf der Anthropic API verfügbar und erfordert Claude Opus 4.6 oder später, Sonnet 4.6 oder später, Haiku 5.5 oder ein [Fable-Modell](https://code.claude.com/docs/de/model-config.md#work-with-fable). Organisationsadministratoren können den Auto-Modus mit dem Schlüssel `disableAutoMode` in [verwalteten Einstellungen](#managed-settings) ausschalten.111Der Auto-Modus ist für alle Nutzer der Anthropic API verfügbar und erfordert Claude Opus 4.6 oder neuer, Sonnet 4.6 oder neuer, Haiku 5.5 oder ein [Fable-Modell](https://code.claude.com/docs/de/model-config.md#work-with-fable). Organisationsadministratoren können den Auto-Modus mit dem Schlüssel `disableAutoMode` in den [verwalteten Einstellungen](#managed-settings) deaktivieren.

112 112 

113Bei Enterprise-Bereitstellungen, die Desktop zu Google Cloud's Agent Platform weiterleiten, ist der Auto-Modus auch standardmäßig verfügbar; siehe [Auto mode on Bedrock, Agent Platform, or Foundry](https://code.claude.com/docs/de/permission-modes.md#enable-auto-mode-on-bedrock-agent-platform-or-foundry) für die unterstützten Modelle.113In Enterprise-Bereitstellungen, die Desktop über die Agent Platform von Google Cloud leiten, ist der Auto-Modus ebenfalls standardmäßig verfügbar; die unterstützten Modelle finden Sie unter [Auto-Modus auf Bedrock, Agent Platform oder Foundry](https://code.claude.com/docs/de/permission-modes.md#enable-auto-mode-on-bedrock-agent-platform-or-foundry).

114 114 

115### Vorschau Ihrer App115### Vorschau Ihrer App

116 116 

117Claude kann einen Dev-Server starten und ihn im Browser-Pane öffnen, um seine Änderungen zu überprüfen. Dies funktioniert sowohl für Frontend-Web-Apps als auch für Backend-Server: Claude kann API-Endpunkte testen, Server-Logs anzeigen und Probleme, die er findet, iterieren. In den meisten Fällen startet Claude den Server automatisch nach dem Bearbeiten von Projektdateien. Sie können Claude auch jederzeit bitten, eine Vorschau anzuzeigen. Standardmäßig [überprüft Claude automatisch](#auto-verify-changes) Änderungen nach jeder Bearbeitung.117Claude kann einen Entwicklungsserver starten und ihn im Browser-Bereich öffnen, um seine Änderungen zu überprüfen. Das funktioniert sowohl für Frontend-Web-Apps als auch für Backend-Server: Claude kann API-Endpunkte testen, Server-Logs ansehen und gefundene Probleme iterativ beheben. In den meisten Fällen startet Claude den Server automatisch, nachdem es Projektdateien bearbeitet hat. Sie können Claude auch jederzeit um eine Vorschau bitten. Standardmäßig [überprüft Claude Änderungen automatisch](#auto-verify-changes) nach jeder Bearbeitung.

118 118 

119Klicken Sie in einer lokalen Sitzung auf einen HTML-, PDF- oder Videopfad im Chat, um ihn im Browser-Pane zu öffnen.119Klicken Sie in einer lokalen Sitzung auf einen HTML-, PDF- oder Videopfad im Chat, um ihn im Browser-Bereich zu öffnen.

120 120 

121> [!NOTE]121> [!NOTE]

122>122>

123> In einer [SSH-Sitzung](#ssh-sessions) kann Claude Ihre App nicht im Browser-Pane öffnen, da es dort nicht über die Tools des Panes verfügt. Um sich die App selbst anzusehen, [leiten Sie ihren Port an Ihren Computer weiter](#reach-a-port-on-the-remote-machine).123> In einer [SSH-Sitzung](#ssh-sessions) kann Claude Ihre App nicht im Browser-Bereich öffnen, da ihm dort die Tools dieses Bereichs nicht zur Verfügung stehen. Um sich die App selbst anzusehen, [leiten Sie ihren Port an Ihren Computer weiter](#reach-a-port-on-the-remote-machine).

124 124 

125Wenn das Browser-Pane nicht geöffnet ist, nachdem Claude in einer lokalen Sitzung einen Server gestartet hat, klicken Sie im Chat auf der Karte des Servers auf **Open**.125Wenn der Browser-Bereich nicht geöffnet ist, nachdem Claude in einer lokalen Sitzung einen Server gestartet hat, klicken Sie auf der Karte des Servers im Chat auf **Open**.

126 126 

127Aus dem Browser-Pane können Sie:127Im Browser-Bereich können Sie:

128 128 

129* Direkt im Browser-Pane mit Ihrer laufenden App interagieren129* Direkt im Browser-Bereich mit Ihrer laufenden App interagieren

130* Beobachten, wie Claude seine eigenen Änderungen automatisch überprüft: Es macht Screenshots, inspiziert das DOM, klickt auf Elemente, füllt Formulare aus und behebt Probleme, die es findet130* Zusehen, wie Claude seine eigenen Änderungen automatisch überprüft: Es erstellt Screenshots, untersucht das DOM, klickt auf Elemente, füllt Formulare aus und behebt gefundene Probleme

131* Server über das Menü **Dev servers** in der Kopfzeile des Browser-Panes starten oder stoppen oder alle auf einmal stoppen131* Server über das Menü **Dev servers** in der Kopfzeile des Browser-Bereichs starten oder stoppen oder alle auf einmal stoppen

132* Mit **Keep cookies** im **⋮**-Menü des Browser-Panes festlegen, ob der Browser Cookies nach dem Beenden der App behält, damit Sie sich während der Entwicklung nicht erneut anmelden müssen132* Mit **Keep cookies** im Menü **⋮** des Browser-Bereichs festlegen, ob der Browser Cookies nach dem Beenden der App behält, damit Sie sich während der Entwicklung nicht erneut anmelden müssen

133 133 

134Claude erstellt die anfängliche Server-Konfiguration basierend auf Ihrem Projekt. Wenn Ihre App einen benutzerdefinierten Dev-Befehl verwendet, bearbeiten Sie `.claude/launch.json`, um Ihr Setup zu entsprechen. Siehe [Configure preview servers](#configure-preview-servers) für die vollständige Referenz.134Claude erstellt die anfängliche Serverkonfiguration auf Grundlage Ihres Projekts. Wenn Ihre App einen benutzerdefinierten Entwicklungsbefehl verwendet, bearbeiten Sie `.claude/launch.json`, damit sie zu Ihrem Setup passt. Die vollständige Referenz finden Sie unter [Vorschau-Server konfigurieren](#configure-preview-servers).

135 135 

136Um die gespeicherten Daten des Browsers zu löschen, wählen Sie **Clear browsing data** im **⋮**-Menü des Browser-Panes. Um den Browser vollständig auszuschalten, deaktivieren Sie **Browser tools** unter **Settings > Code** oder **Settings > Claude Code**.136Um die gespeicherten Daten des Browsers zu löschen, wählen Sie **Clear browsing data** im Menü **⋮** des Browser-Bereichs. Um den Browser vollständig zu deaktivieren, schalten Sie **Browser tools** unter **Settings > Code** oder **Settings > Claude Code** aus.

137 137 

138### Externe Websites durchsuchen138### Externe Websites aufrufen

139 139 

140Das Browser-Pane ist ein Browser mit Registerkarten, daher können Sie Dokumentation, Issue-Tracker oder andere Websites neben Ihrer laufenden App öffnen. Um den Browser zu öffnen, drücken Sie **Cmd+Shift+B** auf macOS oder **Ctrl+Shift+B** auf Windows, oder klicken Sie in der Titelleiste der Sitzung auf **Browser**. Sie können sich auf Websites im Pane anmelden, einschließlich Popup-Anmeldungsflows wie Google OAuth.140Der Browser-Bereich ist ein Browser mit Tabs, sodass Sie Dokumentationen, Issue-Tracker oder beliebige andere Websites neben Ihrer laufenden App öffnen können. Um den Browser zu öffnen, drücken Sie **Cmd+Shift+B** unter macOS oder **Ctrl+Shift+B** unter Windows, oder klicken Sie in der Titelleiste der Sitzung auf **Browser**. Sie können sich im Bereich bei Websites anmelden, einschließlich Anmeldeabläufen in Pop-ups wie Google OAuth.

141 141 

142Wenn Sie zum ersten Mal auf einen externen Link im Chat klicken, fragt ein Dialog, ob Links im Browser-Pane oder in Ihrem Standardbrowser geöffnet werden sollen. Um Ihre Wahl später zu ändern, verwenden Sie **Open links in built-in browser** im **⋮**-Menü des Browser-Panes. **Cmd**-Klick auf macOS oder **Ctrl**-Klick auf Windows öffnet einen Link direkt in Ihrem Standardbrowser.142Wenn Sie zum ersten Mal auf einen externen Link im Chat klicken, fragt ein Dialog, ob Links im Browser-Bereich oder in Ihrem Standardbrowser geöffnet werden sollen. Um Ihre Wahl später zu ändern, verwenden Sie **Open links in built-in browser** im Menü **⋮** des Browser-Bereichs. Mit **Cmd**-Klick unter macOS oder **Ctrl**-Klick unter Windows öffnen Sie einen Link direkt in Ihrem Standardbrowser.

143 143 

144Claude kann externe Seiten lesen und mit ihnen interagieren, indem es die gleichen Tools verwendet, die es zum [Überprüfen Ihrer App](#preview-your-app) nutzt, mit zwei zusätzlichen Sicherheitsprüfungen:144Claude kann externe Seiten mit denselben Tools lesen und mit ihnen interagieren, die es zum [Überprüfen Ihrer App](#preview-your-app) verwendet, mit zwei zusätzlichen Sicherheitsprüfungen:

145 145 

146* Sicherheitsklassifikatoren überprüfen Claudes Schreibaktionen auf externen Seiten, wie Klicken und Tippen, in jedem Berechtigungsmodus. Dies sind die gleichen Klassifikatoren, die [Auto mode](#choose-a-permission-mode) verwendet, und wenn sie eine Aktion kennzeichnen, erhalten Sie eine Berechtigungsabfrage unabhängig vom Modus.146* Sicherheitsklassifikatoren prüfen die schreibenden Aktionen von Claude auf externen Seiten, etwa Klicken und Tippen, in jedem Berechtigungsmodus. Es handelt sich um dieselben Klassifikatoren, die der [Auto-Modus](#choose-a-permission-mode) verwendet, und wenn sie eine Aktion kennzeichnen, erhalten Sie unabhängig vom Modus eine Berechtigungsabfrage.

147* In Berechtigungsmodi außer Auto und Bypass permissions wird auch eine Domain-Allowlist-Prüfung angewendet, bevor Claude zu einer neuen Website navigiert.147* In anderen Berechtigungsmodi als Auto und Bypass permissions gilt zusätzlich eine Prüfung gegen eine Domain-Allowlist, bevor Claude zu einer neuen Website navigiert.

148 148 

149#### Genehmigen Sie Claudes Aktionen auf einer Website149#### Aktionen von Claude auf einer Website genehmigen

150 150 

151Wenn Claude zum ersten Mal auf einer externen Website agiert, wird eine Berechtigungskarte angezeigt und Claude wartet auf Ihre Wahl: **Allow once**, **Always allow** oder **Deny**. **Allow once** genehmigt die Aktion, ohne etwas zu speichern. **Always allow** speichert die Genehmigung für diese Website auf Ihrem Gerät, und Sie können sie in Einstellungen widerrufen. Jede Website benötigt ihre eigene Genehmigung, einschließlich Subdomains. Ihre lokalen Dev-Server und Projektdateien benötigen keine Genehmigung, daher funktioniert [auto-verify](#auto-verify-changes) ohne Berechtigungsabfragen.151Wenn Claude zum ersten Mal auf einer externen Website handelt, erscheint eine Berechtigungskarte, und Claude wartet auf Ihre Wahl: **Allow once**, **Always allow** oder **Deny**. **Allow once** genehmigt die Aktion, ohne etwas zu speichern. **Always allow** speichert die Genehmigung für diese Website auf Ihrem Gerät, und Sie können sie in den Einstellungen widerrufen. Jede Website benötigt eine eigene Genehmigung, auch Subdomains. Ihre lokalen Entwicklungsserver und Projektdateien benötigen keine Genehmigung, sodass die [automatische Überprüfung](#auto-verify-changes) ohne Abfragen weiter funktioniert.

152 152 

153Auch auf einer genehmigten Website wird Claude keine Artikel kaufen, Konten erstellen oder CAPTCHAs umgehen, ohne Ihre Eingabe. Das Durchsuchen im Browser-Pane verwendet das gleiche Sicherheitsmodell wie die [Claude in Chrome-Erweiterung](https://code.claude.com/docs/de/chrome.md). Siehe [Using Claude in Chrome safely](https://support.claude.com/en/articles/12902428-using-claude-in-chrome-safely) für die Behandlung sensibler Websites und riskanter Aktionen durch Claude.153Selbst auf einer genehmigten Website kauft Claude ohne Ihre Mitwirkung keine Artikel, erstellt keine Konten und umgeht keine CAPTCHAs. Das Surfen im Browser-Bereich verwendet dasselbe Sicherheitsmodell wie die [Erweiterung Claude in Chrome](https://code.claude.com/docs/de/chrome.md). Unter [Using Claude in Chrome safely](https://support.claude.com/en/articles/12902428-using-claude-in-chrome-safely) erfahren Sie, wie Claude mit sensiblen Websites und riskanten Aktionen umgeht.

154 154 

155#### Wählen Sie zwischen dem Browser-Pane und der Chrome-Erweiterung155#### Zwischen dem Browser und der Chrome-Erweiterung wählen

156 156 

157Das Browser-Pane verwendet ein sauberes Browser-Profil, getrennt von Ihrem persönlichen Browser, ohne Ihre gespeicherten Anmeldungen oder Verlauf. Verwenden Sie es zum Erstellen und Testen Ihrer App und für Websites, die Ihre Identität nicht benötigen. Wenn Sie möchten, dass Claude als Sie in Ihren angemeldeten Sitzungen agiert, verwenden Sie stattdessen die [Claude in Chrome-Erweiterung](https://code.claude.com/docs/de/chrome.md), die den Anmeldestatus Ihres Browsers teilt.157Der Browser-Bereich verwendet ein sauberes Browserprofil, getrennt von Ihrem persönlichen Browser, ohne Ihre gespeicherten Anmeldungen oder Ihren Verlauf. Verwenden Sie ihn zum Entwickeln und Testen Ihrer App und für Websites, die Ihre Identität nicht benötigen. Wenn Claude in Ihren angemeldeten Sitzungen als Sie handeln soll, verwenden Sie stattdessen die [Erweiterung Claude in Chrome](https://code.claude.com/docs/de/chrome.md), die den Anmeldestatus Ihres Browsers teilt.

158 158 

159#### Beschränken Sie das externe Durchsuchen für Ihre Organisation159#### Externes Surfen für Ihre Organisation einschränken

160 160 

161Der Browser folgt den gleichen [Site-Allowlist- und Blocklist-Kontrollen](https://support.claude.com/en/articles/13065128-claude-in-chrome-admin-controls) wie die Claude in Chrome-Erweiterung. Wenn Ihre Organisation diese Listen bereits für die Erweiterung konfiguriert hat, respektiert der Browser sie automatisch. Administratoren können auch Claudes Tools auf externen Seiten mit der verwalteten Einstellung [`browserExternalPageTools`](#managed-settings) ausschalten. Mit deaktivierten Tools können Benutzer immer noch zu externen Websites navigieren; Claudes Tools können sie nicht lesen oder bearbeiten.161Der Browser befolgt dieselben [Allowlist- und Blocklist-Steuerungen für Websites](https://support.claude.com/en/articles/13065128-claude-in-chrome-admin-controls) wie die Erweiterung Claude in Chrome. Wenn Ihre Organisation diese Listen bereits für die Erweiterung konfiguriert hat, berücksichtigt der Browser sie automatisch. Administratoren können außerdem die Tools von Claude auf externen Seiten mit der [verwalteten Einstellung `browserExternalPageTools`](#managed-settings) deaktivieren. Bei deaktivierten Tools können Nutzer externe Websites weiterhin besuchen; die Tools von Claude können sie jedoch weder lesen noch darauf handeln.

162 162 

163Um das externe Durchsuchen vollständig auszuschalten, setzen Sie die verwaltete Einstellung [`disableBrowserExternalNavigation`](#managed-settings) auf `true`. Dies blockiert alle externe Navigation im Browser, einschließlich Websites auf der Allowlist Ihrer Organisation; localhost Dev-Server und Datei-Vorschauen funktionieren weiterhin. Verwenden Sie `browserExternalPageTools`, um Benutzern zu ermöglichen, externe Websites weiterhin zu durchsuchen, ohne Claudes Tools, und `disableBrowserExternalNavigation`, um externe Websites für Benutzer und Claude zu blockieren.163Um externes Surfen vollständig zu deaktivieren, setzen Sie die [verwaltete Einstellung `disableBrowserExternalNavigation`](#managed-settings) auf `true`. Dadurch wird jede externe Navigation im Browser blockiert, auch zu Websites auf der Allowlist Ihrer Organisation; Entwicklungsserver auf localhost und Dateivorschauen funktionieren weiterhin. Verwenden Sie `browserExternalPageTools`, damit Nutzer externe Websites weiterhin ohne die Tools von Claude aufrufen können, und `disableBrowserExternalNavigation`, um externe Websites sowohl für Nutzer als auch für Claude zu blockieren.

164 164 

165### Überprüfen Sie Änderungen mit der Diff-Ansicht165### Änderungen in der Diff-Ansicht prüfen

166 166 

167Nachdem Claude Änderungen an Ihrem Code vorgenommen hat, können Sie mit der Diff-Ansicht Änderungen dateiweise überprüfen, bevor Sie einen Pull Request erstellen. Um die Diff-Ansicht zu öffnen, klicken Sie auf die Zeilenzahlen, z. B. `+12 -1`, in der Karte **Changes** des [Sitzungsdetails-Bereichs](#see-session-details). Sie können auch in der Titelleiste der Sitzung auf **Changes** klicken. Der Diff einer Cloud-Sitzung gegenüber dem Basis-Branch kann [Änderungen auslassen, die noch nicht gepusht wurden](https://code.claude.com/docs/de/claude-code-on-the-web.md#troubleshoot-a-missing-file-in-the-diff-view).167Nachdem Claude Änderungen an Ihrem Code vorgenommen hat, können Sie in der Diff-Ansicht die Änderungen Datei für Datei prüfen, bevor Sie einen Pull Request erstellen. Um die Diff-Ansicht zu öffnen, klicken Sie auf die Zeilenzahlen, etwa `+12 -1`, in der Karte **Changes** im [Bereich mit den Sitzungsdetails](#see-session-details). Sie können auch in der Titelleiste der Sitzung auf **Changes** klicken. Der Diff einer Cloud-Sitzung gegenüber dem Basis-Branch kann [Änderungen auslassen, die noch nicht gepusht wurden](https://code.claude.com/docs/de/claude-code-on-the-web.md#troubleshoot-a-missing-file-in-the-diff-view).

168 168 

169Um Kommentare zu bestimmten Zeilen hinzuzufügen, bewegen Sie den Mauszeiger über eine Zeile und klicken Sie auf das **+**, das neben ihrer Zeilennummer erscheint, um ein Kommentarfeld zu öffnen. Geben Sie Ihr Feedback ein und drücken Sie **Eingabe**, um den Kommentar hinzuzufügen. Nach dem Hinzufügen von Kommentaren zu mehreren Zeilen senden Sie alle Kommentare auf einmal:169Um bestimmte Zeilen zu kommentieren, bewegen Sie den Mauszeiger über eine Zeile und klicken Sie auf das **+**, das neben der Zeilennummer erscheint, um ein Kommentarfeld zu öffnen. Geben Sie Ihr Feedback ein und drücken Sie **Enter**, um den Kommentar hinzuzufügen. Nachdem Sie Kommentare zu mehreren Zeilen hinzugefügt haben, senden Sie alle Kommentare auf einmal:

170 170 

171* **macOS**: drücken Sie **Cmd+Eingabe**171* **macOS**: Drücken Sie **Cmd+Enter**

172* **Windows**: drücken Sie **Ctrl+Eingabe**172* **Windows**: Drücken Sie **Ctrl+Enter**

173 173 

174Claude liest Ihre Kommentare und nimmt die angeforderten Änderungen vor, die als neuer Diff angezeigt werden, den Sie überprüfen können.174Claude liest Ihre Kommentare und nimmt die angeforderten Änderungen vor, die als neuer Diff erscheinen, den Sie prüfen können.

175 175 

176### Überprüfen Sie Ihren Code176### Ihren Code prüfen

177 177 

178Um Claude Ihre Änderungen vor dem Commit überprüfen zu lassen, geben Sie `/code-review` in das [Eingabefeld](#use-the-prompt-box) ein. Die Ergebnisse erscheinen in der Konversation, sobald das Review abgeschlossen ist.178Damit Claude Ihre Änderungen vor dem Committen prüft, geben Sie `/code-review` in das [Eingabefeld](#use-the-prompt-box) ein. Die Ergebnisse erscheinen in der Konversation, sobald das Review abgeschlossen ist.

179 179 

180In lokalen, [SSH](#ssh-sessions)- und [WSL](https://code.claude.com/docs/de/desktop-wsl.md)-Sitzungen werden die Ergebnisse als **Code review**-Karte angezeigt, nach Datei gruppiert. Verwenden Sie die Karte, um darauf zu reagieren:180In lokalen, [SSH-](#ssh-sessions) und [WSL-Sitzungen](https://code.claude.com/docs/de/desktop-wsl.md) erscheinen die Ergebnisse als Karte **Code review**, nach Dateien gruppiert. Nutzen Sie die Karte, um darauf zu reagieren:

181 181 

182* Klicken Sie auf **Walk through in diff**, um die Diff-Ansicht zu öffnen und die Ergebnisse einzeln durchzugehen. Ein Ergebnis im aktuellen Diff erscheint an seiner Zeile, wo Sie auf **Fix this one** klicken oder es verwerfen können.182* Klicken Sie auf **Walk through in diff**, um die Diff-Ansicht zu öffnen und die Ergebnisse einzeln durchzugehen. Ein Ergebnis im aktuellen Diff erscheint an seiner Zeile, wo Sie auf **Fix this one** klicken oder es verwerfen können.

183* Klicken Sie auf **Apply fixes**, um Claude zu bitten, die noch offenen Ergebnisse zu beheben.183* Klicken Sie auf **Apply fixes**, um Claude zu bitten, die noch offenen Ergebnisse zu beheben.

184 184 

185In jeder Sitzung können Sie Claude auch im Eingabefeld bitten, die Ergebnisse des Reviews zu beheben. Wonach `/code-review` sucht und welche Argumente es akzeptiert, erfahren Sie unter [Lokal mit `/code-review` überprüfen](https://code.claude.com/docs/de/code-review-local).185In jeder Sitzung können Sie Claude auch über das Eingabefeld bitten, die im Review gefundenen Probleme zu beheben. Worauf `/code-review` achtet und welche Argumente es akzeptiert, erfahren Sie unter [Lokal prüfen mit `/code-review`](https://code.claude.com/docs/de/code-review-local).

186 186 

187### Überwachen Sie den Pull-Request-Status187### Status von Pull Requests überwachen

188 188 

189Damit Claude fehlgeschlagene Prüfungen behebt oder GitHub den Pull Request mergt, aktivieren Sie **Auto-fix** oder **Merge when ready**. Nachdem Sie einen Pull Request geöffnet haben, wird er in der Karte **Changes** des [Sitzungsdetails-Bereichs](#see-session-details) mit dem Status seiner CI-Prüfungen angezeigt. Öffnen Sie das **⋮**-Menü neben seinem Titel:189Damit Claude fehlschlagende Checks behebt oder GitHub den Pull Request mergt, aktivieren Sie **Auto-fix** oder **Merge when ready**. Nachdem Sie einen Pull Request geöffnet haben, erscheint er in der Karte **Changes** im [Bereich mit den Sitzungsdetails](#see-session-details) zusammen mit dem Status seiner CI-Checks. Öffnen Sie das Menü **⋮** neben seinem Titel:

190 190 

191* **Auto-fix**: In einer lokalen Sitzung geht Claude außerdem auf neue Review-Kommentare ein, die jemand anderes als Sie hinterlässt. Der Autor des Kommentars muss der Eigentümer des Repositorys, ein Organisationsmitglied, ein Collaborator oder eine GitHub App sein.191* **Auto-fix**: In einer lokalen Sitzung bearbeitet Claude auch neue Review-Kommentare, die jemand anderes als Sie hinterlässt. Der Autor des Kommentars muss der Eigentümer des Repositorys, ein Mitglied der Organisation, ein Collaborator oder eine GitHub App sein.

192* **Merge when ready**: Aktiviert GitHubs Auto-Merge für den PR. In einer lokalen Sitzung fordert Desktop einen Squash-Merge an, sofern der Basis-Branch keine Merge-Queue verwendet.192* **Merge when ready**: Aktiviert das automatische Mergen von GitHub für den PR. In einer lokalen Sitzung fordert Desktop einen Squash-Merge an, sofern der Basis-Branch keine Merge-Queue verwendet.

193 * **In SSH- und WSL-Sitzungen**: **Merge when ready** ist deaktiviert, aktivieren Sie daher Auto-Merge für den Pull Request auf GitHub193 * **In SSH- und WSL-Sitzungen**: **Merge when ready** ist deaktiviert; aktivieren Sie daher das automatische Mergen für den Pull Request auf GitHub

194 * **Wenn das Repository kein Auto-Merge zulässt**: **Merge when ready** lässt sich nicht aktivieren, aktivieren Sie daher zuerst Auto-Merge in Ihren [GitHub-Repository-Einstellungen](https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-auto-merge-for-pull-requests-in-your-repository)194 * **Wenn das Repository kein automatisches Mergen erlaubt**: **Merge when ready** lässt sich nicht aktivieren; aktivieren Sie daher zuerst das automatische Mergen in den [Einstellungen Ihres GitHub-Repositorys](https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-auto-merge-for-pull-requests-in-your-repository)

195* **[Früheres Layout](#check-which-layout-you-have)**: Sobald die Sitzung einen Pull Request hat, klicken Sie in ihrer Statusleiste auf **CI**.195* **[Früheres Layout](#check-which-layout-you-have)**: Sobald die Sitzung einen Pull Request hat, klicken Sie in ihrer Statusleiste auf **CI**.

196 196 

197Um die Sitzung automatisch zu archivieren, sobald der PR gemergt oder geschlossen wird, aktivieren Sie [auto-archive](#archive-a-session) unter **Settings > Code** oder **Settings > Claude Code**.197Um die Sitzung automatisch zu archivieren, sobald der PR gemergt oder geschlossen wird, aktivieren Sie die [automatische Archivierung](#archive-a-session) unter **Settings > Code** oder **Settings > Claude Code**.

198 198 

199> [!NOTE]199> [!NOTE]

200>200>

201> Die PR-Überwachung erfordert, dass die [GitHub CLI (`gh`)](https://cli.github.com/) auf Ihrem Computer installiert und authentifiziert ist. Wenn `gh` nicht installiert ist, fordert Desktop Sie auf, es beim ersten Versuch, einen PR zu erstellen, zu installieren.201> Die PR-Überwachung erfordert, dass die [GitHub CLI (`gh`)](https://cli.github.com/) auf Ihrem Rechner installiert und authentifiziert ist. Wenn `gh` nicht installiert ist, fordert Desktop Sie beim ersten Versuch, einen PR zu erstellen, zur Installation auf.

202>202>

203> Richten Sie in einer [SSH-Sitzung](#ssh-sessions) `git` und `gh` auf dem Remote-Computer ein, bevor Sie auf **Create PR** klicken, da Claude den Branch dort pusht und `gh pr create` ausführt. Installieren Sie `gh` dort selbst, da Desktop Sie in einer SSH-Sitzung nicht dazu auffordert. Prüfen Sie dann dort, dass `git push` funktioniert und dass `gh auth status` meldet, dass Sie angemeldet sind.203> Richten Sie in einer [SSH-Sitzung](#ssh-sessions) `git` und `gh` auf dem Remote-Rechner ein, bevor Sie auf **Create PR** klicken, da Claude den Branch dort pusht und `gh pr create` dort ausführt. Installieren Sie `gh` dort selbst, da Desktop Sie in einer SSH-Sitzung nicht dazu auffordert. Prüfen Sie dann dort, dass `git push` funktioniert und dass `gh auth status` meldet, dass Sie angemeldet sind.

204 204 

205## Anordnen Ihres Arbeitsbereichs205## Anordnen Ihres Arbeitsbereichs

206 206 


314 314 

315Beide Layouts haben den Nutzungsring neben dem Modell-Wahlschalter. Klicken Sie darauf, um Ihre Plan-Nutzung zu sehen, die über alle Ihre Claude-Code-Oberflächen hinweg geteilt wird.315Beide Layouts haben den Nutzungsring neben dem Modell-Wahlschalter. Klicken Sie darauf, um Ihre Plan-Nutzung zu sehen, die über alle Ihre Claude-Code-Oberflächen hinweg geteilt wird.

316 316 

317## Lassen Sie Claude Ihren Computer verwenden317## Claude Ihren Computer verwenden lassen

318 318 

319Computernutzung ermöglicht es Claude, Ihre Apps zu öffnen, Ihren Bildschirm zu steuern und direkt auf Ihrem Computer zu arbeiten, wie Sie es tun würden. Bitten Sie Claude, mit einem Desktop-Tool zu interagieren, das keine CLI hat, oder etwas zu automatisieren, das nur über eine GUI funktioniert. Für das Ausführen und Testen von iOS-Apps öffnet Desktop stattdessen den dedizierten [iOS Simulator-Bereich](https://code.claude.com/docs/de/desktop-ios-simulator.md), anstatt Ihren Bildschirm zu steuern; der Bereich funktioniert ohne Aktivierung der Computernutzung.319Mit Computer Use kann Claude Ihre Apps öffnen, Ihren Bildschirm steuern und direkt auf Ihrem Rechner arbeiten, so wie Sie es tun würden. Bitten Sie Claude, mit einem Desktop-Tool zu interagieren, das keine CLI hat, oder etwas zu automatisieren, das nur über eine grafische Oberfläche funktioniert. Zum Ausführen und Testen von iOS-Apps öffnet Desktop stattdessen den dedizierten [iOS-Simulator-Bereich](https://code.claude.com/docs/de/desktop-ios-simulator.md), anstatt Ihren Bildschirm zu steuern; der Bereich funktioniert, ohne dass Computer Use aktiviert sein muss.

320 320 

321> [!NOTE]321> [!NOTE]

322>322>

323> Computernutzung ist eine Research Preview auf macOS und Windows, die einen Pro- oder Max-Plan erfordert. Sie ist nicht für Team- oder Enterprise-Pläne verfügbar. Die Claude Desktop-App muss ausgeführt werden. Auf macOS erfordert Computernutzung macOS 14 oder höher.323> Computer Use ist eine Research Preview unter macOS und Windows, die einen Pro- oder Max-Plan erfordert. Es ist in Team- oder Enterprise-Plänen nicht verfügbar. Die Claude Desktop-App muss ausgeführt werden. Unter macOS erfordert Computer Use macOS 14 oder höher.

324 324 

325Computernutzung ist standardmäßig deaktiviert. [Aktivieren Sie sie in Einstellungen](#enable-computer-use), bevor Claude Ihren Bildschirm steuern kann. Auf macOS müssen Sie auch Barrierefreiheits- und Bildschirmaufzeichnungsberechtigungen gewähren.325Computer Use ist standardmäßig deaktiviert. [Aktivieren Sie es in den Einstellungen](#enable-computer-use), bevor Claude Ihren Bildschirm steuern kann. Unter macOS müssen Sie außerdem die Berechtigungen für Bedienungshilfen und Bildschirmaufnahme erteilen.

326 326 

327Auf macOS kann Computernutzung auch im Hintergrund ausgeführt werden: Claude arbeitet in den Apps, die Sie genehmigt haben, während Sie weiterarbeiten.327Unter macOS kann Computer Use auch im Hintergrund laufen: Claude arbeitet in den von Ihnen genehmigten Apps, während Sie weiterarbeiten.

328 328 

329> [!WARNING]329> [!WARNING]

330>330>

331> Im Gegensatz zum [sandboxierten Bash-Tool](https://code.claude.com/docs/de/sandboxing.md) läuft Computernutzung auf Ihrem tatsächlichen Desktop mit Zugriff auf das, was Sie genehmigen. Claude überprüft jede Aktion und kennzeichnet potenzielle Prompt-Injection von Bildschirminhalten, aber die Vertrauensgrenze ist unterschiedlich. Siehe den [Sicherheitsleitfaden für Computernutzung](https://support.claude.com/en/articles/14128542) für Best Practices.331> Anders als das [Bash-Tool in der Sandbox](https://code.claude.com/docs/de/sandboxing.md) läuft Computer Use auf Ihrem tatsächlichen Desktop mit Zugriff auf alles, was Sie genehmigen. Claude prüft jede Aktion und kennzeichnet mögliche Prompt-Injection durch Bildschirminhalte, aber die Vertrauensgrenze ist eine andere. Best Practices finden Sie im [Sicherheitsleitfaden für Computer Use](https://support.claude.com/en/articles/14128542).

332 332 

333### Wann Computernutzung anwendbar ist333### Wann Computer Use zum Einsatz kommt

334 334 

335Claude hat mehrere Möglichkeiten, mit einer App oder einem Dienst zu interagieren, und Computernutzung ist die breiteste und langsamste. Es versucht zuerst das präziseste Tool:335Claude hat mehrere Möglichkeiten, mit einer App oder einem Dienst zu interagieren, und Computer Use ist die umfassendste und langsamste. Claude versucht zuerst das präziseste Tool:

336 336 

337* Wenn Sie einen [Konnektor](#connect-external-tools) für einen Dienst haben, verwendet Claude den Konnektor.337* Wenn Sie einen [Konnektor](#connect-external-tools) für einen Dienst haben, verwendet Claude den Konnektor.

338* Wenn die Aufgabe ein Shell-Befehl ist, verwendet Claude Bash.338* Wenn die Aufgabe ein Shell-Befehl ist, verwendet Claude Bash.

339* Wenn die Aufgabe Browser-Arbeit ist und Sie [Claude in Chrome](https://code.claude.com/docs/de/chrome.md) eingerichtet haben, verwendet Claude das.339* Wenn es sich um Browserarbeit handelt und Sie [Claude in Chrome](https://code.claude.com/docs/de/chrome.md) eingerichtet haben, verwendet Claude dieses.

340* Wenn die Aufgabe das Ausführen oder Testen einer iOS-App ist, verwendet Claude den [iOS Simulator-Bereich](https://code.claude.com/docs/de/desktop-ios-simulator.md), der keine Bildschirmsteuerung verwendet.340* Wenn es um das Ausführen oder Testen einer iOS-App geht, verwendet Claude den [iOS-Simulator-Bereich](https://code.claude.com/docs/de/desktop-ios-simulator.md), der keine Bildschirmsteuerung nutzt.

341* Wenn keine dieser Optionen zutrifft, verwendet Claude Computernutzung.341* Wenn nichts davon zutrifft, verwendet Claude Computer Use.

342 342 

343Die [Pro-App-Zugriffsstufen](#app-permissions) verstärken dies: Browser sind auf Nur-Ansicht begrenzt, und Terminals und IDEs auf Nur-Klick, was Claude zum dedizierten Tool lenkt, auch wenn Computernutzung aktiv ist. Bildschirmsteuerung ist für Dinge reserviert, die nichts anderes erreichen kann, wie native Apps, Hardware-Steuerfelder oder proprietäre Tools ohne API.343Die [Zugriffsstufen pro App](#app-permissions) verstärken dies: Browser sind auf Nur-Ansicht begrenzt, Terminals und IDEs auf Nur-Klicken, sodass Claude auch bei aktivem Computer Use zum dedizierten Tool gelenkt wird. Die Bildschirmsteuerung ist Dingen vorbehalten, die auf keine andere Weise erreichbar sind, etwa native Apps, Hardware-Bedienfelder oder proprietäre Tools ohne API.

344 344 

345### Aktivieren Sie Computernutzung345### Computer Use aktivieren

346 346 

347Computernutzung ist standardmäßig deaktiviert. Wenn Sie Claude bitten, etwas zu tun, das es benötigt, während es deaktiviert ist, teilt Claude Ihnen mit, dass es die Aufgabe tun könnte, wenn Sie Computernutzung in Einstellungen aktivieren.347Computer Use ist standardmäßig deaktiviert. Wenn Sie Claude um etwas bitten, das Computer Use erfordert, während es deaktiviert ist, teilt Claude Ihnen mit, dass es die Aufgabe erledigen könnte, wenn Sie Computer Use in den Einstellungen aktivieren.

348 348 

349**1. Aktualisieren Sie die Desktop-App**349**1. Desktop-App aktualisieren**

350 350 

351Stellen Sie sicher, dass Sie die neueste Version von Claude Desktop haben. Auf macOS und Windows laden Sie herunter oder aktualisieren Sie unter [claude.com/download](https://claude.com/download); unter Linux aktualisieren Sie über Ihren Paketmanager ([Anweisungen](https://code.claude.com/docs/de/desktop-linux.md)). Starten Sie dann die App neu.351Stellen Sie sicher, dass Sie die neueste Version von Claude Desktop haben. Unter macOS und Windows können Sie unter [claude.com/download](https://claude.com/download) herunterladen oder aktualisieren; unter Linux aktualisieren Sie über Ihren Paketmanager ([Anleitung](https://code.claude.com/docs/de/desktop-linux.md)). Starten Sie die App anschließend neu.

352 352 

353**2. Schalten Sie den Umschalter ein**353**2. Schalter einschalten**

354 354 

355Öffnen Sie in der Desktop-App die **Einstellungen** und dann:355Öffnen Sie in der Desktop-App **Settings** und dann:

356 356 

357* **Wenn das Einstellungsmenü Dieser Computer auflistet**: Gehen Sie zu **Dieser Computer > System**357* **Wenn das Menü „Settings“ den Eintrag This computer auflistet**: Gehen Sie zu **This computer > System**

358* **Andernfalls**: Gehen Sie zu **Funktionen**358* **Andernfalls**: Gehen Sie zu **Capabilities**

359 359 

360Schalten Sie unter **Computernutzung** die Option **Computernutzung aktivieren** ein:360Schalten Sie unter **Computer use** die Option **Enable computer use** ein:

361 361 

362* **Windows**: Der Umschalter wird sofort wirksam und das Setup ist abgeschlossen362* **Windows**: Der Schalter wird sofort wirksam und die Einrichtung ist abgeschlossen

363* **macOS**: Fahren Sie mit dem nächsten Schritt fort363* **macOS**: Fahren Sie mit dem nächsten Schritt fort

364 364 

365Wenn Sie den Umschalter nicht sehen, bestätigen Sie, dass Sie macOS oder Windows mit einem Pro- oder Max-Plan verwenden, und aktualisieren und starten Sie die App neu.365Wenn Sie den Schalter nicht sehen, vergewissern Sie sich, dass Sie macOS oder Windows mit einem Pro- oder Max-Plan verwenden, und aktualisieren Sie die App und starten Sie sie neu.

366 366 

367**3. Gewähren Sie macOS-Berechtigungen**367**3. macOS-Berechtigungen erteilen**

368 368 

369Auf macOS müssen Sie zwei Systemberechtigungen gewähren, bevor der Umschalter wirksam wird:369Unter macOS müssen Sie zwei Systemberechtigungen erteilen, bevor der Schalter wirksam wird:

370 370 

371* **Barrierefreiheit**: ermöglicht Claude, zu klicken, zu tippen und zu scrollen371* **Bedienungshilfen (Accessibility)**: ermöglicht Claude, zu klicken, zu tippen und zu scrollen

372* **Bildschirmaufzeichnung**: ermöglicht Claude, zu sehen, was auf Ihrem Bildschirm ist372* **Bildschirmaufnahme (Screen Recording)**: ermöglicht Claude, zu sehen, was auf Ihrem Bildschirm ist

373 373 

374Die Einstellungsseite zeigt den aktuellen Status jeder Berechtigung. Wenn eine verweigert wird, klicken Sie auf das Badge, um den relevanten Systemeinstellungsbereich zu öffnen.374Die Einstellungsseite zeigt den aktuellen Status jeder Berechtigung an. Wenn eine davon verweigert wurde, klicken Sie auf das Abzeichen, um den entsprechenden Bereich der Systemeinstellungen zu öffnen.

375 375 

376### App-Berechtigungen376### App-Berechtigungen

377 377 

378Wenn Claude eine App zum ersten Mal verwenden muss, wird eine Eingabeaufforderung in Ihrer Sitzung angezeigt. Klicken Sie auf **Für diese Sitzung zulassen** oder **Ablehnen**. Genehmigungen gelten für die aktuelle Sitzung oder 30 Minuten in [Dispatch-generierten Sitzungen](#sessions-from-dispatch).378Wenn Claude zum ersten Mal eine App verwenden muss, erscheint in Ihrer Sitzung eine Berechtigungsabfrage. Klicken Sie auf **Allow for this session** oder **Deny**. Genehmigungen gelten für die aktuelle Sitzung bzw. 30 Minuten in [über Dispatch gestarteten Sitzungen](#sessions-from-dispatch).

379 379 

380Die Eingabeaufforderung zeigt auch, welche Kontrollebene Claude für diese App erhält. Diese Stufen sind nach App-Kategorie festgelegt und können nicht geändert werden:380Die Abfrage zeigt auch, welche Steuerungsstufe Claude für diese App erhält. Diese Stufen sind nach App-Kategorie festgelegt und können nicht geändert werden:

381 381 

382| Stufe | Was Claude tun kann | Gilt für |382| Stufe | Was Claude tun kann | Gilt für |

383| :- | :- | :- |383| :- | :- | :- |

384| Nur Ansicht | Die App in Screenshots sehen | Browser, Handelsplattformen |384| Nur Ansicht | Die App in Screenshots sehen | Browser, Handelsplattformen |

385| Nur Klick | Klicken und scrollen, aber nicht tippen oder Tastenkombinationen verwenden | Terminals, IDEs |385| Nur Klicken | Klicken und scrollen, aber nicht tippen oder Tastenkombinationen verwenden | Terminals, IDEs |

386| Vollständige Kontrolle | Klicken, tippen, ziehen und Tastenkombinationen verwenden | Alles andere |386| Volle Kontrolle | Klicken, tippen, ziehen und Tastenkombinationen verwenden | Alles andere |

387 387 

388Apps mit großer Reichweite wie Terminals, Finder oder Datei-Explorer und Systemeinstellungen oder Einstellungen zeigen eine zusätzliche Warnung in der Eingabeaufforderung, damit Sie wissen, was das Genehmigen gewährt.388Apps mit weitreichendem Zugriff, wie Terminals, Finder oder der Datei-Explorer sowie die Systemeinstellungen bzw. Einstellungen, zeigen in der Abfrage eine zusätzliche Warnung an, damit Sie wissen, was Sie mit der Genehmigung gewähren.

389 389 

390Der Abschnitt **Computernutzung** in den Einstellungen, in dem Sie [die Computernutzung aktiviert haben](#enable-computer-use), enthält diese Optionen:390In den Einstellungen enthält der Abschnitt **Computer use**, in dem Sie [Computer Use eingeschaltet haben](#enable-computer-use), die folgenden Optionen:

391 391 

392* **Abgelehnte Apps**: Fügen Sie Apps hier hinzu, um sie ohne Aufforderung abzulehnen. Claude kann eine abgelehnte App indirekt durch Aktionen in einer zulässigen App beeinflussen, kann aber nicht direkt mit der abgelehnen App interagieren.392* **Denied apps**: Fügen Sie hier Apps hinzu, um sie ohne Nachfrage abzulehnen. Claude kann eine abgelehnte App weiterhin indirekt durch Aktionen in einer erlaubten App beeinflussen, aber nicht direkt mit der abgelehnten App interagieren.

393* **Apps anzeigen, wenn Claude fertig ist**: Wenn Computernutzung nicht im Hintergrund ausgeführt wird, blendet Claude Ihre anderen Fenster aus, während es arbeitet, damit es nur mit der genehmigten App interagiert. Wenn Claude fertig ist, werden ausgeblendete Fenster wiederhergestellt, es sei denn, Sie deaktivieren diese Einstellung.393* **Unhide apps when Claude finishes**: Wenn Computer Use nicht im Hintergrund läuft, blendet Claude während der Arbeit Ihre anderen Fenster aus, sodass es nur mit der genehmigten App interagiert. Wenn Claude fertig ist, werden ausgeblendete Fenster wiederhergestellt, sofern Sie diese Einstellung nicht ausschalten.

394 394 

395## Sitzungen verwalten395## Sitzungen verwalten

396 396 


861 861 

862> [!NOTE]862> [!NOTE]

863>863>

864> Wenn sich Ihre Umgebungsauswahl über dem Eingabefeld befindet, haben Sie das [frühere Layout](#check-which-layout-you-have), das keine gespeicherten lokalen Umgebungen hat. Verwenden Sie stattdessen den [Editor für die lokale Umgebung](#use-the-local-environment-editor).864> Wenn eine neue Sitzung unter dem Eingabefeld keine Umgebung anzeigt, haben Sie das [frühere Layout](#check-which-layout-you-have), in dem es keine gespeicherten lokalen Umgebungen gibt. Verwenden Sie stattdessen den [Editor für die lokale Umgebung](#use-the-local-environment-editor).

865 865 

866**1. Das Formular einer lokalen Umgebung öffnen**866**1. Das Formular einer lokalen Umgebung öffnen**

867 867 


963>963>

964> Wenn Sie Desktop mit einem [Drittanbieter](https://code.claude.com/docs/de/third-party-integrations.md) verwenden, benötigen SSH-Sitzungen eine eigene Einrichtung. Siehe [SSH remote sessions in Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/ssh-remote-sessions).964> Wenn Sie Desktop mit einem [Drittanbieter](https://code.claude.com/docs/de/third-party-integrations.md) verwenden, benötigen SSH-Sitzungen eine eigene Einrichtung. Siehe [SSH remote sessions in Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/ssh-remote-sessions).

965 965 

966Fügen Sie im [Dialog **New environment**](#create-a-saved-environment) eine SSH-Verbindung hinzu und starten Sie dann eine Sitzung auf dieser Verbindung. Wenn eine neue Sitzung keine Umgebungsauswahl unter dem Eingabefeld hat, haben Sie das frühere Layout. Siehe [Prüfen, welches Layout Sie haben](#check-which-layout-you-have).966Fügen Sie im [Dialog **New environment**](#create-a-saved-environment) eine SSH-Verbindung hinzu und starten Sie dann eine Sitzung über diese Verbindung. Wenn eine neue Sitzung unter dem Eingabefeld keine Umgebung anzeigt, haben Sie das frühere Layout. Siehe [Prüfen, welches Layout Sie haben](#check-which-layout-you-have).

967 967 

968**1. Dialog New environment öffnen**968**1. Dialog New environment öffnen**

969 969 


2101 2101 

2102## Fehlerbehebung2102## Fehlerbehebung

2103 2103 

2104Die folgenden Abschnitte behandeln Probleme, die spezifisch für die Desktop-App sind. Für Runtime-API-Fehler, die im Chat angezeigt werden, wie `API Error: 500`, `529 Overloaded`, `429` oder `Prompt is too long`, siehe die [Fehlerreferenz](https://code.claude.com/docs/de/errors.md).2104Die folgenden Abschnitte behandeln Probleme, die speziell die Desktop-App betreffen. Informationen zu API-Fehlern zur Laufzeit, die im Chat erscheinen, wie `API Error: 500`, `529 Overloaded`, `429` oder `Prompt is too long`, finden Sie in der [Fehlerreferenz](https://code.claude.com/docs/de/errors.md).

2105 2105 

2106### Überprüfen Sie Ihre Version2106### Ihre Version prüfen

2107 2107 

2108Um zu sehen, welche Version der Desktop-App Sie ausführen:2108So sehen Sie, welche Version der Desktop-App Sie verwenden:

2109 2109 

2110* **macOS**: Klicken Sie auf **Claude** in der Menüleiste und dann auf **Über Claude**2110* **macOS**: Klicken Sie in der Menüleiste auf **Claude** und dann auf **About Claude**

2111* **Windows**: Klicken Sie auf **Hilfe** und dann auf **Über Claude**2111* **Windows**: Klicken Sie auf **Help** und dann auf **About Claude**

2112 2112 

2113Klicken Sie auf die Versionsnummer, um sie in Ihre Zwischenablage zu kopieren.2113Klicken Sie auf die Versionsnummer, um sie in Ihre Zwischenablage zu kopieren.

2114 2114 

2115#### Claude Code-Version auf der Registerkarte „Code“2115#### Claude Code-Version im Code-Tab

2116 2116 

2117Um zu sehen, welche Version von Claude Code eine Sitzung ausführt, geben Sie `/status` in einer lokalen Sitzung auf der Registerkarte **Code** ein und lesen Sie die Zeile **Claude Code**, die eine Version wie `2.1.286` anzeigt.2117Um zu sehen, welche Version von Claude Code eine Sitzung ausführt, geben Sie in einer lokalen Sitzung im **Code**-Tab `/status` ein und lesen Sie die Zeile **Claude Code**, die eine Version wie `2.1.286` anzeigt.

2118 2118 

2119Um eine neuere Version für lokale Sitzungen zu erhalten, öffnen Sie unter macOS **Claude → Nach Updates suchen** bzw. unter Windows **Hilfe → Nach Updates suchen** und starten Sie dann eine neue Sitzung.2119Um eine neuere Version für lokale Sitzungen zu erhalten, öffnen Sie unter macOS **Claude > Check for Updates…** oder unter Windows **Help > Check for Updates…** und starten Sie dann eine neue Sitzung.

2120 2120 

2121In einer lokalen Sitzung führt die Registerkarte **Code** ihre eigene Kopie von Claude Code aus, die eine eigene Versionsnummer hat. Die Desktop-App lädt diese Kopie herunter und aktualisiert sie. Daher kann sie sich vom Befehl `claude` in Ihrem Terminal unterscheiden, und das Aktualisieren der einen aktualisiert nicht die andere.2121In einer lokalen Sitzung führt der **Code**-Tab eine eigene Kopie von Claude Code aus, die eine eigene Versionsnummer hat. Die Desktop-App lädt diese Kopie herunter und aktualisiert sie, daher kann sie sich vom Befehl `claude` in Ihrem Terminal unterscheiden, und das Aktualisieren der einen aktualisiert nicht die andere.

2122 2122 

2123### Überprüfen Sie, welches Layout Sie haben2123### Prüfen, welches Layout Sie haben

2124 2124 

2125Wenn eine neue Sitzung keine [Umgebungsauswahl](#start-a-session) unter dem Eingabefeld hat, verwenden Sie das frühere Layout:2125Wenn eine neue Sitzung die [Umgebung](#start-a-session) oberhalb des Eingabefelds statt darunter anzeigt, haben Sie das frühere Layout:

2126 2126 

2127* **[Desktop älter als v2.37337.0](#check-your-version)**: Aktualisieren Sie die App, um das aktuelle Layout zu erhalten. Wählen Sie unter macOS **Claude → Nach Updates suchen** bzw. unter Windows **Hilfe → Nach Updates suchen**.2127* **[Desktop älter als v2.37337.0](#check-your-version)**: Aktualisieren Sie, um das aktuelle Layout zu erhalten. Wählen Sie unter macOS **Claude > Check for Updates…** oder unter Windows **Help > Check for Updates…**.

2128* **[Drittanbieter](https://code.claude.com/docs/de/third-party-integrations.md) mit Sitzungen auf Ihrem Computer**: Das aktuelle Layout erfordert Claude Desktop v3.1623.0 oder höher, [überprüfen Sie also Ihre Version](#check-your-version). Zum Aktualisieren wählen Sie unter macOS **Claude → Nach Updates suchen** bzw. unter Windows **Hilfe → Nach Updates suchen**. Wenn Ihre Organisation [automatische Updates deaktiviert](#device-management-policies), ist **Nach Updates suchen** ausgeblendet. Bitten Sie in diesem Fall Ihren Administrator um v3.1623.0 oder höher.2128* **[Drittanbieter](https://code.claude.com/docs/de/third-party-integrations.md) mit Sitzungen auf Ihrem Computer**: Das aktuelle Layout erfordert Claude Desktop v3.1623.0 oder höher, [prüfen Sie also Ihre Version](#check-your-version). Zum Aktualisieren wählen Sie unter macOS **Claude > Check for Updates…** oder unter Windows **Help > Check for Updates…**. Wenn Ihre Organisation [automatische Updates deaktiviert](#device-management-policies), ist **Check for Updates…** ausgeblendet; bitten Sie in diesem Fall Ihren Administrator um v3.1623.0 oder höher.

2129* **Drittanbieter mit Sitzungen auf der Infrastruktur Ihrer Organisation**: Wenn Ihre Organisation Sitzungen auf ihrer eigenen Infrastruktur statt auf Ihrem Computer ausführt, behält Desktop das frühere Layout bei, und ein Update ändert das Layout nicht. Wenn Sie nicht wissen, wo Ihre Sitzungen ausgeführt werden, fragen Sie Ihren Administrator.2129* **Drittanbieter mit Sitzungen auf der Infrastruktur Ihrer Organisation**: Das aktuelle Layout erfordert Claude Desktop v4.29.0 oder höher, [prüfen Sie also Ihre Version](#check-your-version). Wenn Sie eine ältere Version verwenden, bitten Sie Ihren Administrator um v4.29.0 oder höher. Wenn Sie nicht wissen, wo Ihre Sitzungen laufen, fragen Sie Ihren Administrator.

2130 2130 

2131Im früheren Layout wählen Sie die Umgebung und den Projektordner oberhalb des Eingabefelds sowie den Berechtigungsmodus und das Modell in der Zeile darunter. Dem früheren Layout fehlen der [Bereich mit Sitzungsdetails](#see-session-details) und die [gespeicherten lokalen und SSH-Umgebungen](#create-a-saved-environment).2131Im früheren Layout wählen Sie die Umgebung und einen Projektordner oder ein Repository oberhalb des Eingabefelds und den Berechtigungsmodus und das Modell in der Zeile darunter. Dem früheren Layout fehlen das [Sitzungsdetails-Panel](#see-session-details) und [gespeicherte lokale und SSH-Umgebungen](#create-a-saved-environment).

2132 2132 

2133### 403 oder Authentifizierungsfehler auf der Registerkarte „Code“2133### 403- oder Authentifizierungsfehler im Code-Tab

2134 2134 

2135Wenn Sie `Error 403: Forbidden` oder andere Authentifizierungsfehler bei der Verwendung der Registerkarte „Code“ sehen:2135Wenn Sie bei der Verwendung des Code-Tabs `Error 403: Forbidden` oder andere Authentifizierungsfehler sehen:

2136 2136 

21371. Melden Sie sich aus dem App-Menü ab und wieder an. Dies ist die häufigste Lösung.21371. Melden Sie sich über das App-Menü ab und wieder an. Dies ist die häufigste Lösung.

21382. Überprüfen Sie, ob Sie ein aktives bezahltes Abonnement haben: Pro, Max, Team oder Enterprise.21382. Überprüfen Sie, ob Sie ein aktives kostenpflichtiges Abonnement haben: Pro, Max, Team oder Enterprise.

21393. Wenn die CLI funktioniert, aber Desktop nicht, beenden Sie die Desktop-App vollständig, nicht nur das Fenster schließen, und öffnen Sie sie dann erneut und melden Sie sich an.21393. Wenn die CLI funktioniert, Desktop aber nicht, beenden Sie die Desktop-App vollständig, anstatt nur das Fenster zu schließen, öffnen Sie sie dann erneut und melden Sie sich wieder an.

21404. Überprüfen Sie Ihre Internetverbindung und Proxy-Einstellungen.21404. Überprüfen Sie Ihre Internetverbindung und Ihre Proxy-Einstellungen.

2141 2141 

2142### Leerer oder hängender Bildschirm beim Start2142### Leerer oder hängender Bildschirm beim Start

2143 2143 

2144Wenn die App öffnet, aber einen leeren oder nicht reagierenden Bildschirm anzeigt:2144Wenn die App sich öffnet, aber einen leeren oder nicht reagierenden Bildschirm anzeigt:

2145 2145 

21461. Starten Sie die App neu.21461. Starten Sie die App neu.

21472. Überprüfen Sie auf ausstehende Updates. Auf macOS und Windows wird die App beim Start automatisch aktualisiert; unter Linux aktualisieren Sie über apt wie in [Claude Desktop unter Linux](https://code.claude.com/docs/de/desktop-linux.md) beschrieben.21472. Prüfen Sie auf ausstehende Updates. Unter macOS und Windows aktualisiert sich die App beim Start automatisch; unter Linux aktualisieren Sie über apt, wie in [Claude Desktop unter Linux](https://code.claude.com/docs/de/desktop-linux.md) beschrieben.

21483. Überprüfen Sie auf einem verwalteten Netzwerk, dass Ihre Firewall die CDN-Hosts in [Netzwerkzugriffsanforderungen](#network-access-requirements) zulässt.21483. Bestätigen Sie in einem verwalteten Netzwerk, dass Ihre Firewall die CDN-Hosts aus den [Anforderungen an den Netzwerkzugriff](#network-access-requirements) zulässt.

21494. Überprüfen Sie unter Windows den Event Viewer auf Absturzprotokolle unter **Windows Logs → Application**.21494. Prüfen Sie unter Windows in der Ereignisanzeige unter **Windows-Protokolle → Anwendung** auf Absturz-Logs.

2150 2150 

2151### „Fehler beim Laden der Sitzung“2151### "Failed to load session"

2152 2152 

2153Wenn Sie `Failed to load session` sehen, existiert der ausgewählte Ordner möglicherweise nicht mehr, ein Git-Repository benötigt möglicherweise Git LFS, das nicht installiert ist, oder Dateiberechtigungen verhindern möglicherweise den Zugriff. Versuchen Sie, einen anderen Ordner auszuwählen oder die App neu zu starten.2153Wenn Sie `Failed to load session` sehen, existiert der ausgewählte Ordner möglicherweise nicht mehr, ein Git-Repository erfordert möglicherweise Git LFS, das nicht installiert ist, oder Dateiberechtigungen verhindern den Zugriff. Versuchen Sie, einen anderen Ordner auszuwählen oder die App neu zu starten.

2154 2154 

2155### Sitzung findet installierte Tools nicht2155### Sitzung findet installierte Tools nicht

2156 2156 

2157Wenn Claude Tools wie `npm`, `node` oder andere CLI-Befehle nicht finden kann, überprüfen Sie, dass die Tools in Ihrem regulären Terminal funktionieren, überprüfen Sie, dass Ihr Shell-Profil PATH richtig einrichtet, und starten Sie die Desktop-App neu, um Umgebungsvariablen neu zu laden.2157Wenn Claude Tools wie `npm`, `node` oder andere CLI-Befehle nicht finden kann, überprüfen Sie, ob die Tools in Ihrem regulären Terminal funktionieren, prüfen Sie, ob Ihr Shell-Profil PATH korrekt setzt, und starten Sie die Desktop-App neu, um die Umgebungsvariablen neu zu laden.

2158 2158 

2159### Git- und Git LFS-Fehler2159### Git- und Git LFS-Fehler

2160 2160 

2161Sitzungen, die in ihrem eigenen Worktree ausgeführt werden, benötigen Git. Wenn Sie „Git is required“ sehen, installieren Sie [Git](https://git-scm.com/downloads) oder [Git for Windows](https://git-scm.com/downloads/win) unter Windows und versuchen Sie es erneut. Unter Windows fragten Claude Desktop-Versionen vor 1.49585.0 nach Git, bevor eine lokale Sitzung gestartet wurde; wenn Sie diese Aufforderung sehen und keine Worktrees verwenden, aktualisieren Sie die App.2161Sitzungen, die in einem eigenen Worktree laufen, benötigen Git. Wenn Sie "Git is required" sehen, installieren Sie [Git](https://git-scm.com/downloads) bzw. unter Windows [Git for Windows](https://git-scm.com/downloads/win) und versuchen Sie es erneut. Unter Windows haben Claude Desktop-Versionen vor 1.49585.0 vor dem Start jeder lokalen Sitzung nach Git gefragt; wenn Sie diese Abfrage sehen und keine Worktrees verwenden, aktualisieren Sie die App.

2162 2162 

2163Wenn Sie „Git LFS is required by this repository but is not installed“ sehen, installieren Sie Git LFS von [git-lfs.com](https://git-lfs.com/), führen Sie `git lfs install` aus und starten Sie die App neu.2163Wenn Sie "Git LFS is required by this repository but is not installed" sehen, installieren Sie Git LFS von [git-lfs.com](https://git-lfs.com/), führen Sie `git lfs install` aus und starten Sie die App neu.

2164 2164 

2165### MCP-Server funktionieren nicht unter Windows2165### MCP-Server funktionieren unter Windows nicht

2166 2166 

2167Wenn MCP-Server-Umschalter nicht reagieren oder Server unter Windows keine Verbindung herstellen, überprüfen Sie, dass der Server in Ihren Einstellungen richtig konfiguriert ist, starten Sie die App neu, überprüfen Sie, dass der Server-Prozess im Task Manager läuft, und überprüfen Sie Server-Protokolle auf Verbindungsfehler.2167Wenn die Schalter für MCP-Server unter Windows nicht reagieren oder Server keine Verbindung herstellen, prüfen Sie, ob der Server in Ihren Einstellungen korrekt konfiguriert ist, starten Sie die App neu, überprüfen Sie im Task-Manager, ob der Serverprozess läuft, und sehen Sie sich die Server-Logs auf Verbindungsfehler an.

2168 2168 

2169### SSH host key verification failed2169### SSH host key verification failed

2170 2170 


2174* `Connection failed: Host key changed or not trusted` beim Eingabefeld oder nach **Test connection**2174* `Connection failed: Host key changed or not trusted` beim Eingabefeld oder nach **Test connection**

2175* `<host>'s host key is not trusted` oder `<host>'s host key has changed` bei einer getrennten Sitzung2175* `<host>'s host key is not trusted` oder `<host>'s host key has changed` bei einer getrennten Sitzung

2176 2176 

2177Desktop lehnt einen Schlüssel meist ab, weil er sich von dem auf Ihrem Computer gespeicherten Schlüssel unterscheidet oder weil für diesen Computer kein Schlüssel gespeichert ist. Ein Computer, der neu aufgesetzt oder neu installiert wurde, präsentiert meist einen neuen Schlüssel, ebenso etwas, das die Verbindung abfängt. Überprüfen Sie den Schlüssel, bevor Sie sich erneut verbinden, ausgehend davon, was Desktop zusammen mit der Meldung anzeigt:2177Desktop lehnt einen Schlüssel meist ab, weil er sich von dem auf Ihrem Computer gespeicherten unterscheidet oder weil für diesen Rechner kein Schlüssel gespeichert ist. Ein Rechner, der neu aufgesetzt oder neu installiert wurde, präsentiert in der Regel einen neuen Schlüssel, ebenso etwas, das die Verbindung abfängt. Prüfen Sie den Schlüssel, bevor Sie sich erneut verbinden, ausgehend davon, was Desktop zusammen mit der Meldung anzeigt:

2178 2178 

2179* **Sie verwenden Windows, und Desktop meldet `Connection failed: Host key changed or not trusted`**: Schließen Sie zuerst einen [fehlenden OpenSSH-Client](#ssh-host-key-refused-on-windows-without-an-openssh-client) aus2179* **Sie verwenden Windows, und Desktop meldet `Connection failed: Host key changed or not trusted`**: Schließen Sie zuerst einen [fehlenden OpenSSH-Client](#ssh-host-key-refused-on-windows-without-an-openssh-client) aus

2180* **Desktop fordert Sie auf, `UserKnownHostsFile` zu setzen**: Setzen Sie es in `~/.ssh/config` auf `~/.ssh/known_hosts` und [überprüfen Sie dann den Schlüssel in einem Terminal](#check-the-host-key-from-a-terminal)2180* **Desktop fordert Sie auf, `UserKnownHostsFile` zu setzen**: Setzen Sie es in `~/.ssh/config` auf `~/.ssh/known_hosts` und [prüfen Sie dann den Schlüssel über ein Terminal](#check-the-host-key-from-a-terminal)

2181* **Sie sehen eine Schaltfläche „Review new key“**: Wählen Sie sie aus und [vergleichen](#check-a-remote-machines-host-key) Sie den Fingerabdruck, den Desktop anzeigt, mit dem des Computers selbst. Wenn sie übereinstimmen, wählen Sie **Trust new key**, um den gespeicherten Schlüssel zu ersetzen. Andernfalls wählen Sie **Cancel**.2181* **Sie sehen eine Schaltfläche Review new key**: Wählen Sie sie aus und [vergleichen](#check-a-remote-machines-host-key) Sie den Fingerabdruck, den Desktop anzeigt, mit dem des Rechners selbst. Wenn sie übereinstimmen, wählen Sie **Trust new key**, um den gespeicherten Schlüssel zu ersetzen. Andernfalls wählen Sie **Cancel**.

2182* **Sie sehen keine Schaltfläche „Review new key“, Desktop zeigt `Couldn't show the new key` an, oder Desktop lehnt den Schlüssel nach „Trust new key“ erneut ab**: [Überprüfen Sie den Schlüssel in einem Terminal](#check-the-host-key-from-a-terminal)2182* **Sie sehen keine Schaltfläche Review new key, Desktop zeigt `Couldn't show the new key` an, oder Desktop lehnt den Schlüssel nach Trust new key erneut ab**: [Prüfen Sie den Schlüssel über ein Terminal](#check-the-host-key-from-a-terminal)

2183 2183 

2184#### Host-Schlüssel in einem Terminal überprüfen2184#### Den Host-Schlüssel über ein Terminal prüfen

2185 2185 

2186Führen Sie `ssh <SSH host>` auf Ihrem Computer aus, mit dem Wert **SSH host** Ihrer [SSH-Verbindung](#ssh-sessions) in Desktop. Fügen Sie `-p <SSH port>` hinzu, wenn die Verbindung einen Wert für **SSH port** hat. Verwenden Sie unter Windows PowerShell, da Desktop sich nicht mit dem `ssh` aus Git Bash oder WSL verbindet. Wenn PowerShell kein `ssh` findet, [installieren Sie den OpenSSH-Client von Microsoft](#ssh-host-key-refused-on-windows-without-an-openssh-client).2186Führen Sie auf Ihrem Computer `ssh <SSH host>` aus, mit dem Wert **SSH host** Ihrer [SSH-Verbindung](#ssh-sessions) in Desktop. Fügen Sie `-p <SSH port>` hinzu, wenn die Verbindung einen Wert für **SSH port** hat. Verwenden Sie unter Windows PowerShell, da Desktop keine Verbindung mit dem `ssh` in Git Bash oder WSL herstellt. Wenn PowerShell kein `ssh` findet, [installieren Sie den OpenSSH-Client von Microsoft](#ssh-host-key-refused-on-windows-without-an-openssh-client).

2187 2187 

2188Achten Sie darauf, welchen Computer `ssh` in seiner Meldung nennt; das kann ein Jump-Host sein und nicht `<SSH host>`. Folgen Sie dann dem passenden Fall:2188Achten Sie darauf, welchen Rechner `ssh` in seiner Meldung nennt; das kann ein Jump-Host und nicht `<SSH host>` sein. Folgen Sie dann dem zutreffenden Fall:

2189 2189 

2190* **`ssh` fragt, ob die Verbindung fortgesetzt werden soll**: [Vergleichen](#check-a-remote-machines-host-key) Sie den angezeigten Fingerabdruck mit dem des betreffenden Computers selbst. Antworten Sie nur dann mit `yes`, wenn sie übereinstimmen.2190* **`ssh` fragt, ob die Verbindung fortgesetzt werden soll**: [Vergleichen](#check-a-remote-machines-host-key) Sie den angezeigten Fingerabdruck mit dem des Rechners selbst. Antworten Sie nur mit `yes`, wenn sie übereinstimmen.

2191* **`ssh` warnt, dass sich der Host-Schlüssel geändert hat**: [Vergleichen](#check-a-remote-machines-host-key) Sie den Fingerabdruck aus der Warnung mit dem des betreffenden Computers selbst. Nur wenn sie übereinstimmen, löschen Sie die Zeile, die `Offending <type> key in <file>:<line>` nennt, und führen Sie `ssh` erneut aus. Wenn `ssh` erneut wegen einer anderen Zeile warnt, vergleichen, löschen und wiederholen Sie wie zuvor.2191* **`ssh` warnt, dass sich der Host-Schlüssel geändert hat**: [Vergleichen](#check-a-remote-machines-host-key) Sie den Fingerabdruck aus der Warnung mit dem des Rechners selbst. Nur wenn sie übereinstimmen, löschen Sie die Zeile, die `Offending <type> key in <file>:<line>` nennt, und führen Sie `ssh` erneut aus. Wenn `ssh` erneut wegen einer anderen Zeile warnt, vergleichen, löschen und führen Sie erneut aus wie zuvor.

2192* **`ssh` lehnt einen unbekannten Schlüssel ab, ohne nachzufragen**: Besorgen Sie sich die `known_hosts`-Zeile dieses Computers von der Person, die ihn verwaltet, und zwar nicht über die Verbindung, die Sie gerade überprüfen. Fügen Sie die Zeile zu Ihrer `known_hosts`-Datei hinzu, mit dem Namen aus der Meldung von `ssh` als Hostname, und führen Sie `ssh` erneut aus.2192* **`ssh` lehnt einen unbekannten Schlüssel ab, ohne nachzufragen**: Besorgen Sie sich die `known_hosts`-Zeile dieses Rechners bei der Person, die ihn verwaltet, und nicht über die Verbindung, die Sie gerade prüfen. Fügen Sie die Zeile Ihrer `known_hosts`-Datei hinzu, mit dem Namen aus der Meldung von `ssh` als Hostname, und führen Sie `ssh` erneut aus.

2193* **`ssh` fährt mit der Anmeldung fort, ohne Sie nach dem Host-Schlüssel zu fragen**: Geben Sie noch kein Passwort ein. [Überprüfen Sie die Schlüssel, denen `ssh` bereits vertraut](#check-the-keys-that-ssh-already-trusts).2193* **`ssh` fährt mit der Anmeldung fort, ohne Sie zum Host-Schlüssel zu fragen**: Geben Sie noch kein Passwort ein. [Prüfen Sie die Schlüssel, denen `ssh` bereits vertraut](#check-the-keys-that-ssh-already-trusts).

2194 2194 

2195Sobald `ssh` einen Schlüssel akzeptiert, den Sie überprüft oder hinzugefügt haben, versuchen Sie es in Desktop erneut. Wenn Desktop den Schlüssel erneut ablehnt, siehe [Desktop-Logs für ein SSH-Problem abrufen](#get-desktops-logs-for-an-ssh-problem).2195Sobald `ssh` einen Schlüssel akzeptiert, den Sie geprüft oder hinzugefügt haben, versuchen Sie es in Desktop erneut. Wenn Desktop den Schlüssel erneut ablehnt, lesen Sie [Desktop-Logs für ein SSH-Problem abrufen](#get-desktops-logs-for-an-ssh-problem).

2196 2196 

2197##### Schlüssel überprüfen, denen `ssh` bereits vertraut2197##### Die Schlüssel prüfen, denen `ssh` bereits vertraut

2198 2198 

2199Führen Sie denselben `ssh`-Befehl mit dem Zusatz `-v -S none` erneut aus. In der Ausgabe zeigt eine Zeile `Server host key:` einen Fingerabdruck, und die folgende Zeile `Host '<name>' is known` nennt den Computer, zu dem er gehört. [Vergleichen](#check-a-remote-machines-host-key) Sie jeden gefundenen Fingerabdruck mit dem des betreffenden Computers selbst.2199Führen Sie denselben `ssh`-Befehl erneut aus und fügen Sie `-v -S none` hinzu. In der Ausgabe zeigt eine Zeile `Server host key:` einen Fingerabdruck, und die nächste Zeile `Host '<name>' is known` nennt den Rechner, zu dem er gehört. [Vergleichen](#check-a-remote-machines-host-key) Sie jeden gefundenen Fingerabdruck mit dem des jeweiligen Rechners selbst.

2200 2200 

2201* **Für einen Jump-Host gibt es keine Zeile `Server host key:`**: Führen Sie auch `ssh -v -S none <jump host>` aus und vergleichen Sie diesen Fingerabdruck auf dieselbe Weise.2201* **Für einen Jump-Host gibt es keine Zeile `Server host key:`**: Führen Sie auch `ssh -v -S none <jump host>` aus und vergleichen Sie diesen Fingerabdruck auf dieselbe Weise.

2202* **Ein Fingerabdruck stimmt nicht überein, oder Sie können ihn nicht überprüfen**: Verbinden Sie sich nicht erneut. Entfernen Sie den gespeicherten Schlüssel: Unter `Host '<name>' is known` nennt die Zeile `Found key in <file>:<line>` die Datei, die ihn enthält. Führen Sie `ssh-keygen -R "<name>" -f <file>` aus. Wenn Sie Host-Schlüssel in mehr als einer Datei speichern, entfernen Sie den Schlüssel aus jeder Datei. Wenn Sie eine Datei nicht ändern können, wenden Sie sich an die Person, die Ihren Computer verwaltet.2202* **Ein Fingerabdruck stimmt nicht überein, oder Sie können ihn nicht prüfen**: Verbinden Sie sich nicht erneut. Entfernen Sie den gespeicherten Schlüssel: Unter `Host '<name>' is known` nennt die Zeile `Found key in <file>:<line>` die Datei, die ihn enthält. Führen Sie `ssh-keygen -R "<name>" -f <file>` aus. Wenn Sie Host-Schlüssel in mehr als einer Datei aufbewahren, entfernen Sie den Schlüssel aus jeder. Wenn Sie eine Datei nicht ändern können, informieren Sie die Person, die Ihren Computer verwaltet.

2203* **Alle Fingerabdrücke stimmen überein**: Versuchen Sie es in Desktop erneut. Wenn Desktop den Schlüssel erneut ablehnt, siehe [Desktop-Logs für ein SSH-Problem abrufen](#get-desktops-logs-for-an-ssh-problem).2203* **Alle Fingerabdrücke stimmen überein**: Versuchen Sie es in Desktop erneut. Wenn Desktop den Schlüssel erneut ablehnt, lesen Sie [Desktop-Logs für ein SSH-Problem abrufen](#get-desktops-logs-for-an-ssh-problem).

2204 2204 

2205### SSH-Host-Schlüssel wird unter Windows ohne OpenSSH-Client abgelehnt2205### SSH-Host-Schlüssel unter Windows ohne OpenSSH-Client abgelehnt

2206 2206 

2207Unter Windows ohne OpenSSH-Client lehnt Desktop selbst einen korrekten Host-Schlüssel mit `Connection failed: Host key changed or not trusted` ab. Desktop benötigt den Client, um gespeicherte Schlüssel nachzuschlagen. Um zu prüfen, ob Sie einen haben, führen Sie `ssh` in PowerShell aus. Wenn PowerShell `ssh` nicht erkennt, installieren Sie den [OpenSSH-Client von Microsoft](https://learn.microsoft.com/windows-server/administration/openssh/openssh_install_firstuse) und starten Sie Desktop neu.2207Unter Windows ohne OpenSSH-Client lehnt Desktop selbst einen korrekten Host-Schlüssel ab, mit `Connection failed: Host key changed or not trusted`. Desktop benötigt den Client, um gespeicherte Schlüssel nachzuschlagen. Um zu prüfen, ob Sie einen haben, führen Sie `ssh` in PowerShell aus. Wenn PowerShell `ssh` nicht erkennt, installieren Sie den [OpenSSH-Client von Microsoft](https://learn.microsoft.com/windows-server/administration/openssh/openssh_install_firstuse) und starten Sie Desktop neu.

2208 2208 

2209Verbinden Sie sich dann erneut. Wenn Desktop fragt, ob Sie sich zum ersten Mal verbinden möchten, [überprüfen Sie den Host-Schlüssel des Computers](#check-a-remote-machines-host-key), bevor Sie ihm vertrauen. Wenn Desktop den Schlüssel weiterhin ablehnt, folgen Sie den anderen Fällen unter [SSH host key verification failed](#ssh-host-key-verification-failed).2209Verbinden Sie sich dann erneut. Wenn Desktop fragt, ob Sie sich zum ersten Mal verbinden möchten, [prüfen Sie den Host-Schlüssel des Rechners](#check-a-remote-machines-host-key), bevor Sie ihm vertrauen. Wenn Desktop den Schlüssel weiterhin ablehnt, folgen Sie den anderen Fällen unter [SSH host key verification failed](#ssh-host-key-verification-failed).

2210 2210 

2211### SSH-Verbindung schlägt nach der Anmeldung fehl2211### SSH-Verbindung schlägt nach der Anmeldung fehl

2212 2212 

2213Suchen Sie in dieser Tabelle den Titel der Karte oder den Code am Ende der Fehlermeldung und gehen Sie dann so vor, wie in der letzten Spalte angegeben. Um die Meldung zu sehen, wählen Sie auf der Fehlerkarte **View details** aus.2213Suchen Sie den Titel der Karte oder den Code am Ende der Fehlermeldung in dieser Tabelle und tun Sie dann, was die letzte Spalte angibt. Um die Meldung zu sehen, wählen Sie auf der Fehlerkarte **View details**.

2214 2214 

2215| Titel auf der Karte | Code | Vorgehensweise |2215| Titel auf der Karte | Code | Vorgehen |

2216| - | - | - |2216| - | - | - |

2217| `<host>'s SSH server has SFTP turned off` | `[SFTP_UNAVAILABLE]` | Aktivieren Sie SFTP in der `sshd_config` des Servers, wie unter [Anforderungen an den Remote-Computer](#remote-machine-requirements-for-ssh-sessions) beschrieben |2217| `<host>'s SSH server has SFTP turned off` | `[SFTP_UNAVAILABLE]` | Aktivieren Sie SFTP in der `sshd_config` des Servers, wie unter [Anforderungen an den Remote-Rechner](#remote-machine-requirements-for-ssh-sessions) beschrieben |

2218| `SFTP doesn't start on <host>` | `[SFTP_NOT_STARTED]` | Stellen Sie in einem Terminal auf Ihrem Computer mit `sftp` eine Verbindung zum selben Host her, um zu sehen, was den Start verhindert, und überprüfen Sie dann die Einstellungen und Dateien, die in der Meldung von Desktop genannt werden |2218| `SFTP doesn't start on <host>` | `[SFTP_NOT_STARTED]` | Verbinden Sie sich mit `sftp` in einem Terminal auf Ihrem Computer mit demselben Host, um zu sehen, was den Start verhindert, und prüfen Sie dann die Einstellungen und Dateien, die die Meldung von Desktop nennt |

2219| `<host> allows too few SSH sessions per connection` | `[SESSION_LIMIT]` | Aktualisieren Sie auf Claude Desktop v3.1623.0 oder höher, oder erhöhen Sie `MaxSessions` in der `sshd_config` des Servers, zum Beispiel auf den OpenSSH-Standardwert 10 |2219| `<host> allows too few SSH sessions per connection` | `[SESSION_LIMIT]` | Aktualisieren Sie auf Claude Desktop v3.1623.0 oder höher, oder erhöhen Sie `MaxSessions` in der `sshd_config` des Servers, zum Beispiel auf den OpenSSH-Standardwert 10 |

2220| `<host> is out of disk space` | `[ENOSPC]` oder `[EDQUOT]` | Geben Sie auf dem Remote-Computer Speicherplatz oder Kontingent frei, in Ihrem Home-Verzeichnis oder in `/tmp` |2220| `<host> is out of disk space` | `[ENOSPC]` oder `[EDQUOT]` | Geben Sie auf dem Remote-Rechner Speicherplatz oder Kontingent frei, in Ihrem Home-Verzeichnis oder in `/tmp` |

2221| `Free up disk space on this computer` | `[ENOSPC]` oder `[EDQUOT]`, in einer Meldung, die mit `Couldn't prepare the deploy locally` beginnt | Geben Sie Speicherplatz auf Ihrem Computer frei |2221| `Free up disk space on this computer` | `[ENOSPC]` oder `[EDQUOT]`, in einer Meldung, die mit `Couldn't prepare the deploy locally` beginnt | Geben Sie Speicherplatz auf Ihrem Computer frei |

2222| `Claude Code won't start on <host>` | `[CLI_UNRESPONSIVE]` | Warten Sie eine Minute und versuchen Sie es dann erneut. Wenn es weiterhin fehlschlägt, führen Sie den in der Meldung genannten Befehl auf dem Remote-Computer aus, um zu sehen, ob Claude Code dort antwortet. |2222| `Claude Code won't start on <host>` | `[CLI_UNRESPONSIVE]` | Warten Sie eine Minute und versuchen Sie es dann erneut. Wenn es weiterhin fehlschlägt, führen Sie den in der Meldung genannten Befehl auf dem Remote-Rechner aus, um zu sehen, ob Claude Code dort antwortet. |

2223 2223 

2224Bei allen anderen Meldungen überprüfen Sie die [Anforderungen an den Remote-Computer](#remote-machine-requirements-for-ssh-sessions).2224Prüfen Sie bei allen anderen Meldungen die [Anforderungen an den Remote-Rechner](#remote-machine-requirements-for-ssh-sessions).

2225 2225 

2226### Desktop-Logs für ein SSH-Problem abrufen2226### Desktop-Logs für ein SSH-Problem abrufen

2227 2227 

2228Sie erhalten `ssh.log`, die Aufzeichnung von Desktop über seine SSH-Verbindungen, in einer ZIP-Datei mit den Logs von Desktop, die Sie über das Menü **Hilfe** speichern. Um sie zu speichern, öffnen Sie **Hilfe > Fehlerbehebung** und wählen Sie den Eintrag für Ihr System aus:2228Sie erhalten `ssh.log`, die Aufzeichnung von Desktop über seine SSH-Verbindungen, in einer ZIP-Datei mit den Logs von Desktop, die Sie über das Menü **Help** speichern. Öffnen Sie zum Speichern **Help > Troubleshooting** und wählen Sie den Eintrag für Ihr System:

2229 2229 

2230* **macOS**: **Logs im Finder anzeigen**2230* **macOS**: **Show Logs in Finder**

2231* **Windows**: **Logs im Datei-Explorer anzeigen**2231* **Windows**: **Show Logs in File Explorer**

2232* **Linux**: **Logs im Dateimanager anzeigen**2232* **Linux**: **Show Logs in File Manager**

2233 2233 

2234Sehen Sie die Dateien durch, bevor Sie sie senden, da sie Namen und andere Details aus Ihrer Umgebung enthalten können. `<host>` und `<user>` stehen für Namen, die Desktop ersetzt hat. Desktop ersetzt nicht jeden Namen, und ein SSH-Host- oder Benutzername kann weiterhin im Klartext erscheinen. Wenn Sie die ZIP-Datei an jemanden senden, teilen Sie mit, welcher Host wann fehlgeschlagen ist, da die Logs ihn möglicherweise nicht nennen.2234Sehen Sie die Dateien durch, bevor Sie sie senden, da sie Namen und andere Details aus Ihrer Umgebung enthalten können. `<host>` und `<user>` stehen für Namen, die Desktop ersetzt hat. Desktop ersetzt nicht jeden Namen, und ein SSH-Host- oder Benutzername kann weiterhin im Klartext erscheinen. Wenn Sie die ZIP-Datei an jemanden senden, teilen Sie mit, welcher Host wann fehlgeschlagen ist, da die Logs ihn möglicherweise nicht nennen.

2235 2235 

2236Die ZIP-Datei enthält nicht das Log des Hilfsprogramms, das Desktop auf dem Remote-Computer installiert. Um auch dieses Log zu erhalten, kopieren Sie `remote-server.log` aus dem Ordner des Hilfsprogramms unter [`~/.claude/remote/run/`](#files-and-processes-on-the-remote-machine) im Home-Verzeichnis des Benutzers, der die Verbindung hergestellt hat. Sehen Sie auch diese Datei durch, bevor Sie sie senden.2236Die ZIP-Datei enthält nicht das Log des Hilfsprogramms, das Desktop auf dem Remote-Rechner installiert. Um auch dieses Log zu erhalten, kopieren Sie `remote-server.log` aus dem Ordner des Hilfsprogramms unter [`~/.claude/remote/run/`](#files-and-processes-on-the-remote-machine) im Home-Verzeichnis des Benutzers, der sich verbunden hat. Sehen Sie auch diese Datei durch, bevor Sie sie senden.

2237 2237 

2238### App wird nicht beendet2238### App lässt sich nicht beenden

2239 2239 

2240* **macOS**: drücken Sie Cmd+Q. Wenn die App nicht reagiert, verwenden Sie Force Quit mit Cmd+Option+Esc, wählen Sie Claude und klicken Sie auf Force Quit.2240* **macOS**: Drücken Sie Cmd+Q. Wenn die App nicht reagiert, verwenden Sie „Sofort beenden“ mit Cmd+Option+Esc, wählen Sie Claude aus und klicken Sie auf „Sofort beenden“.

2241* **Windows**: verwenden Sie Task Manager mit Strg+Umschalt+Esc, um den Claude-Prozess zu beenden.2241* **Windows**: Verwenden Sie den Task-Manager mit Ctrl+Shift+Esc, um den Claude-Prozess zu beenden.

2242 2242 

2243### Windows-spezifische Probleme2243### Windows-spezifische Probleme

2244 2244 

2245* **PATH nicht aktualisiert nach Installation**: Öffnen Sie ein neues Terminal-Fenster. PATH-Updates gelten nur für neue Terminal-Sitzungen.2245* **PATH nach der Installation nicht aktualisiert**: Öffnen Sie ein neues Terminalfenster. PATH-Aktualisierungen gelten nur für neue Terminal-Sitzungen.

2246* **Fehler bei gleichzeitiger Installation**: Wenn Sie einen Fehler über eine andere Installation sehen, die läuft, aber es gibt keine, versuchen Sie, das Installationsprogramm als Administrator auszuführen.2246* **Fehler wegen gleichzeitiger Installation**: Wenn Sie einen Fehler über eine andere laufende Installation sehen, obwohl keine läuft, versuchen Sie, das Installationsprogramm als Administrator auszuführen.

2247 2247 

2248### „Branch existiert noch nicht“ beim Öffnen in CLI2248### "Branch doesn't exist yet" beim Öffnen in der CLI

2249 2249 

2250Cloud-Sitzungen können Branches erstellen, die auf Ihrem lokalen Computer nicht existieren. Klicken Sie in der Sitzung auf den Branch-Namen und wählen Sie **Copy branch name**, und rufen Sie ihn dann lokal ab:2250Cloud-Sitzungen können Branches erstellen, die auf Ihrem lokalen Rechner nicht existieren. Klicken Sie in der Sitzung auf den Branch-Namen und wählen Sie **Copy branch name**, und rufen Sie ihn dann lokal ab:

2251 2251 

2252```bash theme={null}2252```bash theme={null}

2253git fetch origin <branch-name>2253git fetch origin <branch-name>

2254git checkout <branch-name>2254git checkout <branch-name>

2255```2255```

2256 2256 

2257### Immer noch stecken?2257### Immer noch Probleme?

2258 2258 

2259* Öffnen Sie Hilfe → Support erhalten in der Desktop-App, oder besuchen Sie das [Claude Support Center](https://support.claude.com/) direkt2259* Öffnen Sie in der Desktop-App Help → Get Support oder besuchen Sie direkt das [Claude-Supportcenter](https://support.claude.com/)

2260* Für Probleme, die auch in der eigenständigen `claude` CLI reproduzierbar sind, suchen Sie oder melden Sie einen Fehler auf [GitHub Issues](https://github.com/anthropics/claude-code/issues)2260* Bei Problemen, die sich auch in der eigenständigen `claude`-CLI reproduzieren lassen, suchen Sie auf [GitHub Issues](https://github.com/anthropics/claude-code/issues) nach einem Bug oder melden Sie einen

2261 2261 

2262Wenn Sie einen Fehler melden, geben Sie Ihre Desktop-App-Version, Ihr Betriebssystem, die genaue Fehlermeldung und relevante Protokolle an. Überprüfen Sie auf macOS Console.app. Überprüfen Sie unter Windows Event Viewer → Windows Logs → Application. Überprüfen Sie Protokollauszüge, bevor Sie sie in einem öffentlichen Issue posten; sie können Dateipfade und andere Details aus Ihrer Umgebung enthalten.2262Geben Sie beim Melden eines Problems Ihre Desktop-App-Version, Ihr Betriebssystem, die genaue Fehlermeldung und relevante Logs an. Prüfen Sie unter macOS Console.app. Prüfen Sie unter Windows die Ereignisanzeige → Windows-Protokolle → Anwendung. Sehen Sie Log-Auszüge durch, bevor Sie sie in einem öffentlichen Issue posten; sie können Dateipfade und andere Details aus Ihrer Umgebung enthalten.

Details

57 57 

58Klicken Sie in der [Zeile unter dem Eingabefeld](https://code.claude.com/docs/de/desktop.md#start-a-session) auf das erste Steuerelement, die Umgebungsauswahl, und wählen Sie den obersten Eintrag in der Gruppe **Lokal**. Klicken Sie dann auf das Steuerelement für den Projektordner neben der Umgebungsauswahl, wählen Sie **Ordner öffnen…** und wählen Sie das Verzeichnis Ihres Projekts.58Klicken Sie in der [Zeile unter dem Eingabefeld](https://code.claude.com/docs/de/desktop.md#start-a-session) auf das erste Steuerelement, die Umgebungsauswahl, und wählen Sie den obersten Eintrag in der Gruppe **Lokal**. Klicken Sie dann auf das Steuerelement für den Projektordner neben der Umgebungsauswahl, wählen Sie **Ordner öffnen…** und wählen Sie das Verzeichnis Ihres Projekts.

59 59 

60Wenn unter Ihrem Eingabefeld keine Umgebungsauswahl angezeigt wird, verwenden Sie das frühere Layout. Siehe [Prüfen, welches Layout Sie verwenden](https://code.claude.com/docs/de/desktop.md#check-which-layout-you-have).60Wenn eine neue Sitzung unter Ihrem Eingabefeld keine Umgebung anzeigt, verwenden Sie das frühere Layout. Siehe [Prüfen, welches Layout Sie verwenden](https://code.claude.com/docs/de/desktop.md#check-which-layout-you-have).

61 61 

62> [!TIP]62> [!TIP]

63>63>


962. Schaltflächen, um jede Änderung zu genehmigen oder abzulehnen962. Schaltflächen, um jede Änderung zu genehmigen oder abzulehnen

973. Echtzeit-Updates, während Claude Ihre Anfrage bearbeitet973. Echtzeit-Updates, während Claude Ihre Anfrage bearbeitet

98 98 

99## Und jetzt?99## Wie geht es weiter?

100 100 

101Sie haben Ihre erste Bearbeitung durchgeführt. Eine vollständige Referenz zu allem, was Claude Code Desktop kann, finden Sie unter [Claude Code Desktop verwenden](https://code.claude.com/docs/de/desktop.md). Hier sind einige Dinge, die Sie als Nächstes ausprobieren können.101Sie haben Ihre erste Bearbeitung vorgenommen. Die vollständige Referenz zu allem, was die Desktop-App kann, finden Sie unter [Claude Code Desktop verwenden](https://code.claude.com/docs/de/desktop.md). Hier sind einige Dinge, die Sie als Nächstes ausprobieren können.

102 102 

103**Unterbrechen und lenken.** Sie können Claude jederzeit umleiten. Klicken Sie auf die Stoppschaltfläche, um sofort zu unterbrechen, oder geben Sie eine Korrektur ein und drücken Sie **Eingabe**, um sie zu senden, ohne die laufende Aktion zu stoppen. In beiden Fällen müssen Sie nicht warten, bis sie abgeschlossen ist, oder von vorne beginnen.103**Unterbrechen und steuern.** Sie können Claude jederzeit umlenken. Klicken Sie auf die Stopp-Schaltfläche, um sofort zu unterbrechen, oder geben Sie eine Korrektur ein und drücken Sie **Enter**, um sie zu senden, ohne die laufende Aktion anzuhalten. So oder so müssen Sie weder warten, bis sie abgeschlossen ist, noch von vorne beginnen.

104 104 

105**Geben Sie Claude mehr Kontext.** Geben Sie `@filename` in das Eingabefeld ein, um eine bestimmte Datei in die Konversation zu ziehen. Je mehr Kontext Claude hat, desto besser sind die Ergebnisse. Siehe [Dateien und Kontext hinzufügen](https://code.claude.com/docs/de/desktop.md#add-files-and-context-to-prompts).105**Geben Sie Claude mehr Kontext.** Geben Sie `@filename` in das Prompt-Feld ein, um eine bestimmte Datei in die Konversation einzubeziehen. Je mehr Kontext Claude hat, desto besser sind die Ergebnisse. Siehe [Dateien und Kontext hinzufügen](https://code.claude.com/docs/de/desktop.md#add-files-and-context-to-prompts).

106 106 

107**Verwenden Sie Skills für wiederholbare Aufgaben.** Geben Sie `/` ein oder klicken Sie auf **+** → **Slash commands**, um [integrierte Befehle](https://code.claude.com/docs/de/commands.md), [benutzerdefinierte Skills](https://code.claude.com/docs/de/skills.md) und Plugin-Skills zu durchsuchen. Skills sind wiederverwendbare Eingabeaufforderungen, die Sie jederzeit aufrufen können, z. B. Code-Review-Checklisten oder Bereitstellungsschritte.107**Verwenden Sie Skills für wiederholbare Aufgaben.** Geben Sie `/` ein oder klicken Sie auf **+** → **Slash commands**, um [integrierte Befehle](https://code.claude.com/docs/de/commands.md), [benutzerdefinierte Skills](https://code.claude.com/docs/de/skills.md) und Plugin-Skills zu durchsuchen. Skills sind wiederverwendbare Prompts, die Sie jederzeit bei Bedarf aufrufen können, etwa Checklisten für Code-Reviews oder Deployment-Schritte.

108 108 

109**Überprüfen Sie Änderungen vor dem Commit.** Nachdem Claude Dateien bearbeitet hat, wird ein `+12 -1`-Indikator angezeigt. Klicken Sie darauf, um die [Diff-Ansicht](https://code.claude.com/docs/de/desktop.md#review-changes-with-diff-view) zu öffnen, überprüfen Sie Änderungen Datei für Datei und kommentieren Sie bestimmte Zeilen. Claude liest Ihre Kommentare und überarbeitet. Damit Claude die Änderungen selbst überprüft, geben Sie [`/code-review`](https://code.claude.com/docs/de/desktop#review-your-code) in das Eingabefeld ein.109**Überprüfen Sie Änderungen vor dem Commit.** Nachdem Claude Dateien bearbeitet hat, erscheint eine Anzeige wie `+12 -1`. Klicken Sie darauf, um die [Diff-Ansicht](https://code.claude.com/docs/de/desktop.md#review-changes-with-diff-view) zu öffnen, Änderungen Datei für Datei zu überprüfen und bestimmte Zeilen zu kommentieren. Claude liest Ihre Kommentare und überarbeitet den Code. Damit Claude die Änderungen selbst überprüft, geben Sie [`/code-review`](https://code.claude.com/docs/de/desktop#review-your-code) in das Prompt-Feld ein.

110 110 

111**Passen Sie an, wie viel Kontrolle Sie haben.** Ihr [Berechtigungsmodus](https://code.claude.com/docs/de/desktop.md#choose-a-permission-mode) bestimmt, wie viel Claude tun kann, ohne um Genehmigung zu fragen:111**Passen Sie an, wie viel Kontrolle Sie haben.** Ihr [Berechtigungsmodus](https://code.claude.com/docs/de/desktop.md#choose-a-permission-mode) legt fest, wie viel Claude tun kann, ohne um Genehmigung zu bitten:

112 112 

113* **Auto**: Ein Klassifizierer überprüft Aktionen im Hintergrund und blockiert die riskanten, anstatt Sie zu fragen.113* **Auto**: Ein Klassifikator überprüft Aktionen im Hintergrund und blockiert riskante Aktionen, anstatt Sie zu fragen.

114* **Manuell**: Claude fragt vor dem Bearbeiten von Dateien oder dem Ausführen von Befehlen.114* **Manual**: Claude fragt nach, bevor Dateien bearbeitet oder Befehle ausgeführt werden.

115* **Bearbeitungen akzeptieren**: Claude akzeptiert Dateibearbeitungen automatisch für schnellere Iteration.115* **Accept edits**: Claude akzeptiert Dateibearbeitungen automatisch für schnellere Iterationen.

116* **Plan**: Claude schlägt einen Ansatz vor, ohne Dateien zu bearbeiten, was vor einem großen Refactoring nützlich ist.116* **Plan**: Claude schlägt einen Ansatz vor, ohne Dateien zu bearbeiten. Das ist vor einem großen Refactoring nützlich.

117 117 

118**Fügen Sie Plugins für mehr Funktionen hinzu.** Installieren Sie [Plugins](https://code.claude.com/docs/de/desktop.md#install-plugins), die Skills, Agenten, MCP-Server und mehr hinzufügen.118**Fügen Sie Plugins für weitere Funktionen hinzu.** Installieren Sie [Plugins](https://code.claude.com/docs/de/desktop.md#install-plugins), die Skills, Agenten, MCP-Server und mehr hinzufügen.

119 119 

120**Ordnen Sie Ihren Arbeitsbereich an.** Ziehen Sie die Chat-, Diff-, Terminal-, Datei- und Browser-Bereiche in das gewünschte Layout. Öffnen Sie das Terminal mit **Strg+\`**, um Befehle neben Ihrer Sitzung auszuführen, oder klicken Sie auf einen Dateipfad, um ihn zu öffnen. Siehe [Arbeitsbereich anordnen](https://code.claude.com/docs/de/desktop.md#arrange-your-workspace).120**Gestalten Sie Ihren Workspace.** Ziehen Sie die Bereiche für Chat, Diff, Terminal, Dateien und Browser in das gewünschte Layout. Öffnen Sie das Terminal mit **Ctrl+\`**, um Befehle parallel zu Ihrer Sitzung auszuführen, oder klicken Sie auf einen Dateipfad, um die Datei zu öffnen. Siehe [Workspace gestalten](https://code.claude.com/docs/de/desktop.md#arrange-your-workspace).

121 121 

122**Zeigen Sie eine Vorschau Ihrer App an.** Wenn Sie Ihren Dev-Server auf dem Desktop ausführen, wird Ihre App im Browser-Bereich geöffnet, der auch [externe Websites öffnen](https://code.claude.com/docs/de/desktop.md#browse-external-sites) kann. Claude kann die laufende App anzeigen, Endpunkte testen, Protokolle überprüfen und auf das reagieren, was es sieht. Siehe [Zeigen Sie eine Vorschau Ihrer App an](https://code.claude.com/docs/de/desktop.md#preview-your-app).122**Zeigen Sie eine Vorschau Ihrer App an.** Wenn Sie Ihren Entwicklungsserver in der Desktop-App ausführen, wird Ihre App im Browser-Bereich geöffnet, der auch [externe Websites öffnen](https://code.claude.com/docs/de/desktop.md#browse-external-sites) kann. Claude kann die laufende App ansehen, Endpunkte testen, Logs untersuchen und auf Basis dessen, was es sieht, iterieren. Siehe [Vorschau Ihrer App](https://code.claude.com/docs/de/desktop.md#preview-your-app).

123 123 

124**Verfolgen Sie Ihren Pull Request.** Nach dem Öffnen eines PR überwacht Claude Code die CI-Prüfungsergebnisse und kann Fehler automatisch beheben. Siehe [Überwachen Sie den Pull-Request-Status](https://code.claude.com/docs/de/desktop.md#monitor-pull-request-status).124**Verfolgen Sie Ihren Pull Request.** Nach dem Öffnen eines PR überwacht Claude Code die Ergebnisse der CI-Prüfungen und kann Fehler automatisch beheben. Siehe [Status von Pull Requests überwachen](https://code.claude.com/docs/de/desktop.md#monitor-pull-request-status).

125 125 

126**Planen Sie Claude ein.** Richten Sie [geplante Aufgaben](https://code.claude.com/docs/de/desktop-scheduled-tasks.md) ein, um Claude automatisch regelmäßig auszuführen: eine tägliche Code-Überprüfung jeden Morgen, eine wöchentliche Abhängigkeitsprüfung oder eine Zusammenfassung, die Daten aus Ihren verbundenen Tools abruft.126**Lassen Sie Claude nach Zeitplan arbeiten.** Richten Sie [geplante Aufgaben](https://code.claude.com/docs/de/desktop-scheduled-tasks.md) ein, um Claude automatisch in regelmäßigen Abständen auszuführen: ein tägliches Code-Review jeden Morgen, eine wöchentliche Prüfung der Abhängigkeiten oder ein Briefing, das Informationen aus Ihren verbundenen Tools zusammenführt.

127 127 

128**Skalieren Sie auf, wenn Sie bereit sind.** Öffnen Sie [parallele Sitzungen](https://code.claude.com/docs/de/desktop.md#work-in-parallel-with-sessions) aus der Seitenleiste, um mehrere Aufgaben gleichzeitig zu bearbeiten, optional jede in ihrem eigenen Git Worktree, und öffnen Sie den [Aufgabenbereich](https://code.claude.com/docs/de/desktop.md#watch-background-tasks), um die Subagenten und Hintergrund-Befehle zu beobachten, die eine Sitzung ausführt. Öffnen Sie einen [Side Chat](https://code.claude.com/docs/de/desktop.md#ask-a-side-question-without-derailing-the-session), um eine Frage zu stellen, ohne den Hauptthread zu unterbrechen. Senden Sie [langfristige Arbeiten in die Cloud](https://code.claude.com/docs/de/desktop.md#run-long-running-tasks-in-the-cloud), damit sie fortgesetzt werden, auch wenn Sie die App schließen, oder [verschieben Sie eine bereits begonnene Sitzung in die Cloud](https://code.claude.com/docs/de/desktop.md#continue-in-another-surface), wenn eine Aufgabe länger als erwartet dauert. [Verbinden Sie externe Tools](https://code.claude.com/docs/de/desktop.md#extend-claude-code) wie GitHub, Slack und Linear, um Ihren Workflow zusammenzubringen.128**Skalieren Sie, wenn Sie bereit sind.** Öffnen Sie [parallele Sitzungen](https://code.claude.com/docs/de/desktop.md#work-in-parallel-with-sessions) über die Seitenleiste, um an mehreren Aufgaben gleichzeitig zu arbeiten, optional jeweils in einem eigenen Git-Worktree, und öffnen Sie den [Aufgabenbereich](https://code.claude.com/docs/de/desktop.md#watch-background-tasks), um die Subagenten und Hintergrundbefehle zu beobachten, die in einer Sitzung laufen. Öffnen Sie einen [Nebenchat](https://code.claude.com/docs/de/desktop.md#ask-a-side-question-without-derailing-the-session), um eine Frage zu stellen, ohne den Hauptstrang zu unterbrechen. Senden Sie [lang laufende Arbeiten in die Cloud](https://code.claude.com/docs/de/desktop.md#run-long-running-tasks-in-the-cloud), damit sie auch dann weiterlaufen, wenn Sie die App schließen, oder [verschieben Sie eine bereits gestartete Sitzung in die Cloud](https://code.claude.com/docs/de/desktop.md#continue-in-another-surface), wenn eine Aufgabe länger dauert als erwartet. [Verbinden Sie externe Tools](https://code.claude.com/docs/de/desktop.md#extend-claude-code) wie GitHub, Slack und Linear, um Ihren Workflow zusammenzuführen.

129 129 

130## Nächste Schritte130## Nächste Schritte

131 131 

devcontainer.md +1 −1

Details

79 79 

80> [!NOTE]80> [!NOTE]

81>81>

82> Wenn die Browser-Anmeldung abgeschlossen ist, aber der Rückruf den Container nie erreicht, kopieren Sie den im Browser angezeigten Code und fügen Sie ihn bei der Aufforderung `Paste code here if prompted` im Terminal ein. Dies kann vorkommen, wenn die Port-Weiterleitung des Editors den localhost-Rückruf nicht leitet.82> Für die Anthropic-Anmeldung: Wenn sich kein Browser öffnet oder er Sie anmeldet und dann einen `localhost`-Verbindungsfehler anzeigt, verwenden Sie die Anmelde-URL, die über der Eingabeaufforderung zum Einfügen im Terminal angezeigt wird. Kopieren Sie sie in Ihren Browser, melden Sie sich dort an und fügen Sie dann den im Browser angezeigten Code in diese Eingabeaufforderung ein. Wenn das Einfügen nichts bewirkt, siehe [OAuth-Anmeldung schlägt in WSL2, SSH oder Containern fehl](https://code.claude.com/docs/de/troubleshoot-install.md#oauth-login-fails-in-wsl2-ssh-or-containers).

83 83 

84## Authentifizierung und Einstellungen über Neuerstellungen hinweg beibehalten84## Authentifizierung und Einstellungen über Neuerstellungen hinweg beibehalten

85 85 

env-vars.md +3 −3

Details

233| `CLAUDE_CODE_DISABLE_ATTACHMENTS` | Setzen Sie `1`, um die Verarbeitung von Anhängen zu deaktivieren. Dateierwähnungen mit `@`-Syntax werden als einfacher Text gesendet, anstatt zu Dateiinhalt erweitert zu werden. Wird in [Projekt- und lokalen Einstellungen](https://code.claude.com/docs/de/settings-reference.md#variables-claude-code-ignores-in-env) ignoriert |233| `CLAUDE_CODE_DISABLE_ATTACHMENTS` | Setzen Sie `1`, um die Verarbeitung von Anhängen zu deaktivieren. Dateierwähnungen mit `@`-Syntax werden als einfacher Text gesendet, anstatt zu Dateiinhalt erweitert zu werden. Wird in [Projekt- und lokalen Einstellungen](https://code.claude.com/docs/de/settings-reference.md#variables-claude-code-ignores-in-env) ignoriert |

234| `CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK` | Setzen Sie `1`, damit ein Claude Code-Prozess seinen Befehl [`gcpAuthRefresh`](https://code.claude.com/docs/de/settings-reference#gcpauthrefresh) oder [`awsAuthRefresh`](https://code.claude.com/docs/de/settings-reference#awsauthrefresh) selbst ausführt, anstatt zu warten, während ein anderer Prozess ihn ausführt. Erfordert Claude Code v2.1.286 oder höher |234| `CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK` | Setzen Sie `1`, damit ein Claude Code-Prozess seinen Befehl [`gcpAuthRefresh`](https://code.claude.com/docs/de/settings-reference#gcpauthrefresh) oder [`awsAuthRefresh`](https://code.claude.com/docs/de/settings-reference#awsauthrefresh) selbst ausführt, anstatt zu warten, während ein anderer Prozess ihn ausführt. Erfordert Claude Code v2.1.286 oder höher |

235| `CLAUDE_CODE_DISABLE_AUTO_MEMORY` | Setzen Sie `1`, um [Auto-Memory](https://code.claude.com/docs/de/memory.md#auto-memory) zu deaktivieren. Setzen Sie `0`, um Auto-Memory zwangsweise einzuschalten, selbst wenn der `--bare`-Modus oder [`autoMemoryEnabled: false`](https://code.claude.com/docs/de/settings-reference#automemoryenabled) es andernfalls deaktivieren würde. Wenn deaktiviert, erstellt oder lädt Claude keine Auto-Memory-Dateien |235| `CLAUDE_CODE_DISABLE_AUTO_MEMORY` | Setzen Sie `1`, um [Auto-Memory](https://code.claude.com/docs/de/memory.md#auto-memory) zu deaktivieren. Setzen Sie `0`, um Auto-Memory zwangsweise einzuschalten, selbst wenn der `--bare`-Modus oder [`autoMemoryEnabled: false`](https://code.claude.com/docs/de/settings-reference#automemoryenabled) es andernfalls deaktivieren würde. Wenn deaktiviert, erstellt oder lädt Claude keine Auto-Memory-Dateien |

236| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Setzen Sie den Wert auf `1`, um den Parameter `run_in_background` aus den Tools Bash, PowerShell und Subagent zu entfernen und die Tastenkombination Strg+B sowie Hintergrundausführungen von [geforkten Skills](https://code.claude.com/docs/de/skills.md#run-skills-in-a-subagent) auszuschalten. Claude Code verschiebt dann außerdem Subagenten, lange MCP-Tool-Aufrufe und Shell-Befehle mit Zeitüberschreitung nicht mehr automatisch in den Hintergrund. [MCP-Aufgaben](https://code.claude.com/docs/de/mcp.md#make-claude-wait-for-the-result-of-an-mcp-task) und das [Monitor-Tool](https://code.claude.com/docs/de/tools-reference.md#monitor-tool) laufen weiterhin im Hintergrund |236| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Auf `1` setzen, um den Parameter `run_in_background` aus den Tools Bash, PowerShell und Subagent zu entfernen und das Tastenkürzel Ctrl+B sowie Hintergrundausführungen von [geforkten Skills](https://code.claude.com/docs/de/skills.md#run-skills-in-a-subagent) auszuschalten. Claude Code verschiebt dann auch Subagenten, lange MCP-Tool-Aufrufe und Shell-Befehle mit Zeitüberschreitung nicht mehr automatisch in den Hintergrund. [MCP-Aufgaben](https://code.claude.com/docs/de/mcp.md#make-claude-wait-for-the-result-of-an-mcp-task) und das [Monitor-Tool](https://code.claude.com/docs/de/tools-reference.md#monitor-tool) laufen weiterhin im Hintergrund. Um auch [Hintergrundsitzungen](https://code.claude.com/docs/de/agent-view.md#turn-off-agent-view) auszuschalten, setzen Sie `CLAUDE_CODE_DISABLE_AGENT_VIEW` auf `1` |

237| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_DEFAULT` | Setzen Sie `1`, damit Claude Code eine [Amazon Bedrock](https://code.claude.com/docs/de/amazon-bedrock.md)-Streaming-Antwort mit fehlendem oder leerem `Content-Type`-Header nicht mehr als binären Event-Stream von Amazon Bedrock behandelt. Standardmäßig nimmt Claude Code an, dass ein Gateway den Header aus einer ansonsten unveränderten Antwort entfernt hat, und dekodiert daher den Body, sodass das Streaming weiter funktioniert. Setzen Sie dies nur für ein Gateway, das den Stream außerdem als Server-Sent Events neu ausgibt; Claude Code liest den Body ohne Header dann stattdessen als Server-Sent Events. Erfordert Claude Code v2.1.239 oder höher |237| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_DEFAULT` | Setzen Sie `1`, damit Claude Code eine [Amazon Bedrock](https://code.claude.com/docs/de/amazon-bedrock.md)-Streaming-Antwort mit fehlendem oder leerem `Content-Type`-Header nicht mehr als binären Event-Stream von Amazon Bedrock behandelt. Standardmäßig nimmt Claude Code an, dass ein Gateway den Header aus einer ansonsten unveränderten Antwort entfernt hat, und dekodiert daher den Body, sodass das Streaming weiter funktioniert. Setzen Sie dies nur für ein Gateway, das den Stream außerdem als Server-Sent Events neu ausgibt; Claude Code liest den Body ohne Header dann stattdessen als Server-Sent Events. Erfordert Claude Code v2.1.239 oder höher |

238| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD` | Setzen Sie `1`, um die Prüfung zu überspringen, ob eine [Amazon Bedrock](https://code.claude.com/docs/de/amazon-bedrock.md)-Streaming-Antwort den Content-Type `application/vnd.amazon.eventstream` trägt. Ohne diese Variable lässt Claude Code die Anfrage, wenn eine Antwort einen anderen Content-Type trägt, mit einem Fehler fehlschlagen, der diesen Typ nennt; das bedeutet, dass ein [Gateway oder Proxy die Antwort umwandelt](https://code.claude.com/docs/de/amazon-bedrock.md#streaming-errors-behind-a-gateway-or-proxy). Konfigurieren Sie das Gateway so, dass es den `Content-Type`-Header und den Body unverändert weiterleitet, anstatt diese Variable zu setzen. Erfordert Claude Code v2.1.208 oder höher |238| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD` | Setzen Sie `1`, um die Prüfung zu überspringen, ob eine [Amazon Bedrock](https://code.claude.com/docs/de/amazon-bedrock.md)-Streaming-Antwort den Content-Type `application/vnd.amazon.eventstream` trägt. Ohne diese Variable lässt Claude Code die Anfrage, wenn eine Antwort einen anderen Content-Type trägt, mit einem Fehler fehlschlagen, der diesen Typ nennt; das bedeutet, dass ein [Gateway oder Proxy die Antwort umwandelt](https://code.claude.com/docs/de/amazon-bedrock.md#streaming-errors-behind-a-gateway-or-proxy). Konfigurieren Sie das Gateway so, dass es den `Content-Type`-Header und den Body unverändert weiterleitet, anstatt diese Variable zu setzen. Erfordert Claude Code v2.1.208 oder höher |

239| `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF` | Auf `1` setzen, um die laufende Arbeit einer [Hintergrundsitzung](https://code.claude.com/docs/de/agent-view.md) zu beenden, wenn der [Supervisor](https://code.claude.com/docs/de/agent-view.md#the-supervisor-process) den Prozess dieser Sitzung stoppt, neu startet oder aktualisiert, anstatt sie an den nächsten Prozess der Sitzung zu übergeben. Diese Arbeit umfasst die laufenden Hintergrund-Shell-Befehle der Sitzung, ab v2.1.198 außerdem Hintergrund-Subagenten. Betrifft nur diese Übergabe: Wenn Sie eine Sitzung mit `←` oder [`/background`](https://code.claude.com/docs/de/agent-view#from-inside-a-session) in den Hintergrund schicken, wird laufende Hintergrundarbeit weiterhin übernommen. Erfordert Claude Code v2.1.196 oder höher |239| `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF` | Auf `1` setzen, um die laufende Arbeit einer [Hintergrundsitzung](https://code.claude.com/docs/de/agent-view.md) zu beenden, wenn der [Supervisor](https://code.claude.com/docs/de/agent-view.md#the-supervisor-process) den Prozess dieser Sitzung stoppt, neu startet oder aktualisiert, anstatt sie an den nächsten Prozess der Sitzung zu übergeben. Diese Arbeit umfasst die laufenden Hintergrund-Shell-Befehle der Sitzung, ab v2.1.198 außerdem Hintergrund-Subagenten. Betrifft nur diese Übergabe: Wenn Sie eine Sitzung mit `←` oder [`/background`](https://code.claude.com/docs/de/agent-view#from-inside-a-session) in den Hintergrund schicken, wird laufende Hintergrundarbeit weiterhin übernommen. Erfordert Claude Code v2.1.196 oder höher |


276| `CLAUDE_CODE_DISABLE_WEB_FETCH` | Setzen Sie `1`, um das Tool [WebFetch](https://code.claude.com/docs/de/tools-reference.md#webfetch-tool-behavior) auszuschalten. Das Tool [WebSearch](https://code.claude.com/docs/de/tools-reference.md#websearch-tool-behavior) bleibt verfügbar. Erfordert Claude Code v2.1.285 oder höher |276| `CLAUDE_CODE_DISABLE_WEB_FETCH` | Setzen Sie `1`, um das Tool [WebFetch](https://code.claude.com/docs/de/tools-reference.md#webfetch-tool-behavior) auszuschalten. Das Tool [WebSearch](https://code.claude.com/docs/de/tools-reference.md#websearch-tool-behavior) bleibt verfügbar. Erfordert Claude Code v2.1.285 oder höher |

277| `CLAUDE_CODE_DISABLE_WINDOWS_SHELL_LAUNCHER` | Setzen Sie `1`, um Befehle des [PowerShell-Tools](https://code.claude.com/docs/de/tools-reference.md#powershell-tool) unter Windows direkt statt über den `cmd.exe`-Launcher zu starten. Standardmäßig ermöglicht der Launcher, dass ein PowerShell-Befehl, der [im Hintergrund läuft](https://code.claude.com/docs/de/tools-reference.md#background-commands), [in den nächsten Prozess der Sitzung übernommen wird](https://code.claude.com/docs/de/agent-view.md#the-supervisor-process), etwa wenn Sie [die Sitzung in den Hintergrund verschieben](https://code.claude.com/docs/de/agent-view.md#from-inside-a-session). Wenn Sie die Variable setzen, stoppt ein in den Hintergrund verschobener PowerShell-Befehl, wenn der Prozess der Sitzung beendet wird. Bash-Befehle sind nicht betroffen. Erfordert Claude Code v2.1.269 oder höher |277| `CLAUDE_CODE_DISABLE_WINDOWS_SHELL_LAUNCHER` | Setzen Sie `1`, um Befehle des [PowerShell-Tools](https://code.claude.com/docs/de/tools-reference.md#powershell-tool) unter Windows direkt statt über den `cmd.exe`-Launcher zu starten. Standardmäßig ermöglicht der Launcher, dass ein PowerShell-Befehl, der [im Hintergrund läuft](https://code.claude.com/docs/de/tools-reference.md#background-commands), [in den nächsten Prozess der Sitzung übernommen wird](https://code.claude.com/docs/de/agent-view.md#the-supervisor-process), etwa wenn Sie [die Sitzung in den Hintergrund verschieben](https://code.claude.com/docs/de/agent-view.md#from-inside-a-session). Wenn Sie die Variable setzen, stoppt ein in den Hintergrund verschobener PowerShell-Befehl, wenn der Prozess der Sitzung beendet wird. Bash-Befehle sind nicht betroffen. Erfordert Claude Code v2.1.269 oder höher |

278| `CLAUDE_CODE_DISABLE_WORKFLOWS` | Setzen Sie `1`, um [Workflows](https://code.claude.com/docs/de/workflows.md#turn-workflows-off) zu deaktivieren. Entspricht der Einstellung [`disableWorkflows`](https://code.claude.com/docs/de/settings-reference#disableworkflows) |278| `CLAUDE_CODE_DISABLE_WORKFLOWS` | Setzen Sie `1`, um [Workflows](https://code.claude.com/docs/de/workflows.md#turn-workflows-off) zu deaktivieren. Entspricht der Einstellung [`disableWorkflows`](https://code.claude.com/docs/de/settings-reference#disableworkflows) |

279| `CLAUDE_CODE_EFFORT_LEVEL` | Legt die Effort-Stufe für unterstützte Modelle fest. Werte: `low`, `medium`, `high`, `xhigh`, `max` oder `auto`, um den Modellstandard zu verwenden. Die verfügbaren Stufen hängen vom Modell ab. Hat Vorrang vor `--effort`, `/effort` und den Einstellungen `modelSettings` und `effortLevel`. Eine Obergrenze durch [`maxEffortLevel`](https://code.claude.com/docs/de/settings-reference#maxeffortlevel) gilt weiterhin. Siehe [Effort-Stufe anpassen](https://code.claude.com/docs/de/model-config.md#adjust-effort-level) |279| `CLAUDE_CODE_EFFORT_LEVEL` | Legt die Effort-Stufe für unterstützte Modelle fest. Werte: `low`, `medium`, `high`, `xhigh` oder `max`. Die verfügbaren Stufen hängen vom Modell ab. Hat Vorrang vor `--effort`, `/effort` sowie den Einstellungen `modelSettings` und `effortLevel`. Eine Obergrenze durch [`maxEffortLevel`](https://code.claude.com/docs/de/settings-reference#maxeffortlevel) gilt weiterhin. Setzen Sie den Wert auf `auto` oder `unset`, damit Claude Code [keine Effort-Stufe sendet](https://code.claude.com/docs/de/model-config.md#send-no-effort-level) und die API ihren eigenen Standardwert für das Modell anwendet. Siehe [Effort-Stufe anpassen](https://code.claude.com/docs/de/model-config.md#adjust-effort-level) |

280| `CLAUDE_CODE_EMIT_SESSION_STATE_EVENTS` | Auf `1` setzen, um dem Nachrichtenstream [`session_state_changed`](https://code.claude.com/docs/de/agent-sdk/typescript#sdksessionstatechangedmessage)-Nachrichten hinzuzufügen, die den Zustand der Sitzung enthalten. Erfordert entweder das [Agent SDK](https://code.claude.com/docs/de/agent-sdk/overview.md) oder `--print`, `--output-format stream-json` und `--verbose` |280| `CLAUDE_CODE_EMIT_SESSION_STATE_EVENTS` | Auf `1` setzen, um dem Nachrichtenstream [`session_state_changed`](https://code.claude.com/docs/de/agent-sdk/typescript#sdksessionstatechangedmessage)-Nachrichten hinzuzufügen, die den Zustand der Sitzung enthalten. Erfordert entweder das [Agent SDK](https://code.claude.com/docs/de/agent-sdk/overview.md) oder `--print`, `--output-format stream-json` und `--verbose` |

281| `CLAUDE_CODE_ENABLE_AUTO_MODE` | Wird aus Kompatibilitätsgründen mit älteren Versionen akzeptiert und hat keine Wirkung. Der Auto-Modus ist bei jedem Anbieter standardmäßig verfügbar, einschließlich Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry und angemeldeten Sitzungen über das [Claude apps gateway](https://code.claude.com/docs/de/claude-apps-gateway). In v2.1.158 bis v2.1.206 musste diese Variable auf `1` gesetzt werden, um den [Auto-Modus](https://code.claude.com/docs/de/permission-modes.md#eliminate-prompts-with-auto-mode) bei diesen Anbietern verfügbar zu machen |281| `CLAUDE_CODE_ENABLE_AUTO_MODE` | Wird aus Kompatibilitätsgründen mit älteren Versionen akzeptiert und hat keine Wirkung. Der Auto-Modus ist bei jedem Anbieter standardmäßig verfügbar, einschließlich Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry und angemeldeten Sitzungen über das [Claude apps gateway](https://code.claude.com/docs/de/claude-apps-gateway). In v2.1.158 bis v2.1.206 musste diese Variable auf `1` gesetzt werden, um den [Auto-Modus](https://code.claude.com/docs/de/permission-modes.md#eliminate-prompts-with-auto-mode) bei diesen Anbietern verfügbar zu machen |

282| `CLAUDE_CODE_ENABLE_AWAY_SUMMARY` | Überschreibt die Verfügbarkeit des [Sitzungsrückblicks](https://code.claude.com/docs/de/interactive-mode.md#session-recap). Auf `0` setzen, um Rückblicke unabhängig vom `/config`-Schalter auszuschalten. Auf `1` setzen, um Rückblicke zu erzwingen, wenn [`awaySummaryEnabled`](https://code.claude.com/docs/de/settings-reference#awaysummaryenabled) `false` ist. Hat Vorrang vor der Einstellung und dem `/config`-Schalter |282| `CLAUDE_CODE_ENABLE_AWAY_SUMMARY` | Überschreibt die Verfügbarkeit des [Sitzungsrückblicks](https://code.claude.com/docs/de/interactive-mode.md#session-recap). Auf `0` setzen, um Rückblicke unabhängig vom `/config`-Schalter auszuschalten. Auf `1` setzen, um Rückblicke zu erzwingen, wenn [`awaySummaryEnabled`](https://code.claude.com/docs/de/settings-reference#awaysummaryenabled) `false` ist. Hat Vorrang vor der Einstellung und dem `/config`-Schalter |


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

585* [Von Claude entworfenes Feedback](https://code.claude.com/docs/de/tools-reference.md#sendfeedback-tool-behavior) erhalten, das Claude Code über ein abgerufenes Flag aktiviert585* [Von Claude entworfenes Feedback](https://code.claude.com/docs/de/tools-reference.md#sendfeedback-tool-behavior) erhalten, das Claude Code über ein abgerufenes Flag aktiviert

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

587* Claude Code [MCP-Tools ausschließen lassen, deren Eingabeschema die API ablehnen würde](https://code.claude.com/docs/de/mcp.md#tools-with-invalid-input-schemas); es sendet das Schema trotzdem, und eine Anfrage, die es enthält, schlägt mit [einem 400-Fehler fehl, der das Tool anhand seiner Position benennt](https://code.claude.com/docs/de/errors.md#tool-input-schema-is-invalid)587* Claude Code [MCP-Tools ausschließen lassen, deren Eingabeschema die API ablehnen würde](https://code.claude.com/docs/de/mcp.md#tools-with-invalid-input-schemas)

588* Claude Code [eine lange Konversation komprimieren lassen, während Ihre Terminal-Sitzung inaktiv ist](https://code.claude.com/docs/de/settings-reference.md#idlecompaction), kurz bevor ein einstündiger Prompt-Cache abläuft588* Claude Code [eine lange Konversation komprimieren lassen, während Ihre Terminal-Sitzung inaktiv ist](https://code.claude.com/docs/de/settings-reference.md#idlecompaction), kurz bevor ein einstündiger Prompt-Cache abläuft

589 589 

590### Erste Sitzung nach einer Installation oder einem Upgrade590### Erste Sitzung nach einer Installation oder einem Upgrade

errors.md +45 −11

Details

219| `Cloud sessions use your claude.ai login`, am Ende einer Richtlinienablehnung, die Anmeldedaten nennt | [Befehlszeilenfehler](#cloud-sessions-use-your-claude-ai-login) |219| `Cloud sessions use your claude.ai login`, am Ende einer Richtlinienablehnung, die Anmeldedaten nennt | [Befehlszeilenfehler](#cloud-sessions-use-your-claude-ai-login) |

220| `Couldn't verify your organization's policy for cloud sessions` | [Befehlszeilenfehler](#couldnt-verify-your-organizations-policy-for-cloud-sessions) |220| `Couldn't verify your organization's policy for cloud sessions` | [Befehlszeilenfehler](#couldnt-verify-your-organizations-policy-for-cloud-sessions) |

221| `Cloud sessions aren't available:` gefolgt vom Grund, warum die Richtlinie Ihrer Organisation nicht geladen werden konnte | [Befehlszeilenfehler](#couldnt-verify-your-organizations-policy-for-cloud-sessions) |221| `Cloud sessions aren't available:` gefolgt vom Grund, warum die Richtlinie Ihrer Organisation nicht geladen werden konnte | [Befehlszeilenfehler](#couldnt-verify-your-organizations-policy-for-cloud-sessions) |

222| `Cloud sessions aren't available with this Console sign-in. They need a claude.ai sign-in.` | [Organisations-UUID kann nicht abgerufen werden](https://code.claude.com/docs/de/claude-code-on-the-web.md#unable-to-get-organization-uuid) |

222| `Cloud sessions need a claude.ai sign-in` | [Unable to get organization UUID](https://code.claude.com/docs/de/claude-code-on-the-web.md#unable-to-get-organization-uuid) |223| `Cloud sessions need a claude.ai sign-in` | [Unable to get organization UUID](https://code.claude.com/docs/de/claude-code-on-the-web.md#unable-to-get-organization-uuid) |

223| `Nothing was stashed: "<path>" is now a folder in place of a tracked file or link` / `are now folders in place of tracked files or links` | [Befehlszeilenfehler](#nothing-was-stashed-because-a-folder-replaced-a-tracked-file) |224| `Nothing was stashed: "<path>" is now a folder in place of a tracked file or link` / `are now folders in place of tracked files or links` | [Befehlszeilenfehler](#nothing-was-stashed-because-a-folder-replaced-a-tracked-file) |

224| `Error: --json-schema is not a valid JSON Schema` | [Befehlszeilenfehler](#the-json-schema-value-is-not-a-valid-json-schema) |225| `Error: --json-schema is not a valid JSON Schema` | [Befehlszeilenfehler](#the-json-schema-value-is-not-a-valid-json-schema) |


325| `File is covered by a Read deny rule in your permission settings` | [Werkzeugfehler](#file-is-covered-by-a-read-deny-rule) |326| `File is covered by a Read deny rule in your permission settings` | [Werkzeugfehler](#file-is-covered-by-a-read-deny-rule) |

326| `cannot contain null bytes (\0)` | [Werkzeugfehler](#path-cannot-contain-null-bytes) |327| `cannot contain null bytes (\0)` | [Werkzeugfehler](#path-cannot-contain-null-bytes) |

327| `Path contains null bytes` | [Werkzeugfehler](#path-cannot-contain-null-bytes) |328| `Path contains null bytes` | [Werkzeugfehler](#path-cannot-contain-null-bytes) |

329| `command contains the invisible character U+FEFF (byte order mark) or U+180E (Mongolian vowel separator), and was not run` | [Tool-Fehler](#command-contains-an-invisible-character) |

328| `File is too large to read as an image (the limit is 128MB)` | [Werkzeugfehler](#file-is-too-large-to-read-as-an-image) |330| `File is too large to read as an image (the limit is 128MB)` | [Werkzeugfehler](#file-is-too-large-to-read-as-an-image) |

329| `Cannot read this as an image: <path> is a pipe or a device` | [Werkzeugfehler](#file-is-too-large-to-read-as-an-image) |331| `Cannot read this as an image: <path> is a pipe or a device` | [Werkzeugfehler](#file-is-too-large-to-read-as-an-image) |

330| `subagent_type is required: the general-purpose agent is not available in this session` | [Werkzeugfehler](#subagent-type-is-required) |332| `subagent_type is required: the general-purpose agent is not available in this session` | [Werkzeugfehler](#subagent-type-is-required) |


397| `Claude Code process exited with code N` | [Wrapper- und IDE-Fehler](#claude-code-process-exited-with-code-n) |399| `Claude Code process exited with code N` | [Wrapper- und IDE-Fehler](#claude-code-process-exited-with-code-n) |

398| `The connection to Claude Code ended before this message completed` | [Wrapper- und IDE-Fehler](#the-connection-to-claude-code-ended-before-this-message-completed) |400| `The connection to Claude Code ended before this message completed` | [Wrapper- und IDE-Fehler](#the-connection-to-claude-code-ended-before-this-message-completed) |

399| `Could not locate the Claude CLI on PATH` | [Wrapper- und IDE-Fehler](#could-not-locate-the-claude-cli-on-path) |401| `Could not locate the Claude CLI on PATH` | [Wrapper- und IDE-Fehler](#could-not-locate-the-claude-cli-on-path) |

402| `The Claude Code program for this computer, the <build> build, could not be found` | [Wrapper- und IDE-Fehler](#the-claude-code-program-for-this-computer-could-not-be-found) |

400| `Restored the code, but skipped N files` | [Rewind-Warnungen und Fehler](#restored-the-code-but-skipped-files) |403| `Restored the code, but skipped N files` | [Rewind-Warnungen und Fehler](#restored-the-code-but-skipped-files) |

401| `No files were restored: N files failed (backup missing, or the file could not be updated)` | [Rewind-Warnungen und Fehler](#no-files-were-restored) |404| `No files were restored: N files failed (backup missing, or the file could not be updated)` | [Rewind-Warnungen und Fehler](#no-files-were-restored) |

402| `Transcript writes are failing (...)` | [Warnungen zum Speichern von Sitzungen](#transcript-writes-are-failing) |405| `Transcript writes are failing (...)` | [Warnungen zum Speichern von Sitzungen](#transcript-writes-are-failing) |


485 488 

486Ab v2.1.198 wird der übliche Spinner-Tipp während der Wiederholungsversuche ausgeblendet. Sobald der Fehlergrund angezeigt wird und es sich um eine 529-Überlastung handelt, nennt die Zeile unter dem Countdown außerdem, wo Sie den Dienststatus prüfen können: `status.claude.com` bei der Anthropic API oder bei anderen Konfigurationen den in der Meldung genannten Anbieter- oder Gateway-Host.489Ab v2.1.198 wird der übliche Spinner-Tipp während der Wiederholungsversuche ausgeblendet. Sobald der Fehlergrund angezeigt wird und es sich um eine 529-Überlastung handelt, nennt die Zeile unter dem Countdown außerdem, wo Sie den Dienststatus prüfen können: `status.claude.com` bei der Anthropic API oder bei anderen Konfigurationen den in der Meldung genannten Anbieter- oder Gateway-Host.

487 490 

488Wenn 20 Sekunden lang keine Daten im Antwort-Stream eintreffen, während eine Anfrage noch aussteht, zeigt der Spinner `Waiting for API response · will retry in … · check your network` an, bevor ein Wiederholungsversuch begonnen hat. Die Anfrage ist noch nicht fehlgeschlagen: Der Countdown läuft bis zu dem Zeitpunkt, an dem Claude Code die stockende Verbindung abbricht. Was Sie nach dem Abbruch sehen, hängt davon ab, wie weit die Antwort gekommen war:491#### Waiting for API response

492 

493Das Banner `Waiting for API response · will retry in … · check your network` bedeutet, dass Claude Code mindestens 20 Sekunden gewartet hat, ohne Daten für eine Anfrage zu empfangen. Die Anfrage ist noch nicht fehlgeschlagen: Der Countdown läuft bis zu dem Zeitpunkt, an dem Claude Code die stockende Verbindung abbricht. Erfolgt der Abbruch:

489 494 

490* Bevor Claude einen Textblock oder einen Tool-Aufruf abgeschlossen oder nach dem Nachdenken begonnen hat, versucht Claude Code die Anfrage erneut oder beendet den Turn mit einem Fehler. Unter [Automatische Wiederholungsversuche](#automatic-retries) steht, welche Stockungen erneut versucht werden und wie oft.495* Bevor Claude einen Textblock oder einen Tool-Aufruf abgeschlossen oder nach dem Nachdenken begonnen hat, versucht Claude Code die Anfrage erneut oder beendet den Turn mit einem Fehler. Unter [Automatische Wiederholungsversuche](#automatic-retries) steht, welche Stockungen erneut versucht werden und wie oft.

491* Nachdem Claude einen Textblock oder einen Tool-Aufruf abgeschlossen oder nach dem Nachdenken begonnen hat, aber bevor Claude die Antwort beendet hat, behält Claude Code bei, was Claude abgeschlossen hat, setzt den Turn mit allen Tool-Aufrufen fort, die Claude fertiggestellt hat, und zeigt [The response above may be incomplete](#the-response-above-may-be-incomplete) an. In einer nicht interaktiven Sitzung und bei der Antwort eines Subagenten in jeder Sitzung fordert Claude Code Claude möglicherweise zunächst auf, die Antwort fortzusetzen; dieser Eintrag erklärt, wann das geschieht und wann Sie den Hinweis dort trotzdem sehen.496* Nachdem Claude einen Textblock oder einen Tool-Aufruf abgeschlossen oder nach dem Nachdenken begonnen hat, aber bevor Claude die Antwort beendet hat, behält Claude Code bei, was Claude abgeschlossen hat, setzt den Turn mit allen Tool-Aufrufen fort, die Claude fertiggestellt hat, und zeigt [The response above may be incomplete](#the-response-above-may-be-incomplete) an. In einer nicht interaktiven Sitzung und bei der Antwort eines Subagenten in jeder Sitzung fordert Claude Code Claude möglicherweise zunächst auf, die Antwort fortzusetzen; dieser Eintrag erklärt, wann das geschieht und wann Sie den Hinweis dort trotzdem sehen.

492* Nachdem Claude die Antwort beendet hat, beendet Claude Code den Turn normal.497* Nachdem Claude die Antwort beendet hat, beendet Claude Code den Turn normal.

493 498 

494Das Banner verschwindet von selbst, sobald wieder Daten eintreffen oder ein Wiederholungsversuch erfolgreich ist. Erscheint es bei jedem Versuch erneut, behandeln Sie es als [Netzwerkproblem](#unable-to-connect-to-api). Vor v2.1.185 erschien das Banner nach 10 Sekunden mit anderem Wortlaut.499Das Banner verschwindet von selbst, sobald wieder Daten eintreffen oder ein Wiederholungsversuch erfolgreich ist. Erscheint es bei jedem Versuch erneut, behandeln Sie es als [Netzwerkproblem](#unable-to-connect-to-api). Wenn Sie sich über ein Gateway verbinden, siehe [Das Warte-Banner erscheint und verschwindet hinter einem Gateway](#waiting-banner-behind-a-gateway). Vor v2.1.185 erschien das Banner nach 10 Sekunden mit anderem Wortlaut.

495 

496Während Claude den [Advisor](https://code.claude.com/docs/de/advisor.md) konsultiert, erscheint das Banner erst nach 90 statt 20 Sekunden ohne Daten, da eine lange Advisor-Prüfung deutlich länger als 20 Sekunden nichts senden kann. Vor v2.1.214 galt der Schwellenwert von 20 Sekunden auch während Advisor-Aufrufen, sodass das Banner bei Advisor-Prüfungen erschien, obwohl kein Problem vorlag.

497 500 

498#### Das Warte-Banner erscheint und verschwindet hinter einem Gateway501#### Das Warte-Banner erscheint und verschwindet hinter einem Gateway

499 502 


2495 2498 

2496**Was zu tun ist:**2499**Was zu tun ist:**

2497 2500 

2498* Wenn Ihre Claude Code-Version älter als v2.1.216 ist, führen Sie `claude update` aus.2501* Wenn Ihre Claude-Code-Version älter als v2.1.300 ist, führen Sie [`claude update`](https://code.claude.com/docs/de/setup#update-claude-code) in Ihrer Shell aus. Vor v2.1.300 hat Claude Code [die Anfrage nicht ohne die Parameter des abgelehnten Tools erneut versucht](https://code.claude.com/docs/de/mcp.md#tools-whose-input-schema-the-api-refuses), sodass sich dieser Fehler bei jeder Anfrage wiederholte, die das Tool enthielt.

2499* Entfernen oder [deaktivieren](https://code.claude.com/docs/de/mcp.md#disable-a-server-without-removing-it) Sie den MCP-Server, der das ungültige Schema deklariert. Der Fehler benennt das Tool nur über seine Position. Prüfen Sie ab v2.1.216 das Log jedes Servers auf eine Zeile, die ein Tool benennt, dessen Eingabeschema abgelehnt würde. Wenn kein Log eines benennt, deaktivieren Sie die Server nacheinander.2502* Entfernen oder [deaktivieren](https://code.claude.com/docs/de/mcp.md#disable-a-server-without-removing-it) Sie den MCP-Server, der das ungültige Schema deklariert. Der Fehler benennt das Tool nur über seine Position. Prüfen Sie ab v2.1.216 das Log jedes Servers auf eine Zeile, die ein Tool benennt, dessen Eingabeschema abgelehnt würde. Wenn kein Log eines benennt, deaktivieren Sie die Server nacheinander.

2500* Wenn Sie den Server pflegen, korrigieren Sie das `input_schema` des Tools. Das Schema muss gültiges JSON Schema sein, und Top-Level-Eigenschaftsnamen müssen 1 bis 64 Zeichen lang sein und dürfen nur ASCII-Buchstaben und Ziffern, `_`, `.` und `-` verwenden. Siehe [Tools mit ungültigen Eingabeschemas](https://code.claude.com/docs/de/mcp.md#tools-with-invalid-input-schemas).2503* Wenn Sie den Server pflegen, korrigieren Sie das `input_schema` des Tools. Das Schema muss gültiges JSON Schema sein, und Top-Level-Eigenschaftsnamen müssen 1 bis 64 Zeichen lang sein und dürfen nur ASCII-Buchstaben und Ziffern, `_`, `.` und `-` verwenden. Siehe [Tools mit ungültigen Eingabeschemas](https://code.claude.com/docs/de/mcp.md#tools-with-invalid-input-schemas).

2501 2504 


3295* **`Error: Workspace not trusted. <folder> is your home directory`**: Da das Vertrauen für Ihr Home-Verzeichnis nie gespeichert wird, hilft es nicht, dort zuerst `claude` auszuführen. Führen Sie `claude ultrareview` stattdessen aus einem Projektverzeichnis aus, nachdem Sie dort einmal `claude` ausgeführt und den Vertrauensdialog akzeptiert haben, oder hängen Sie `--trust-workspace` an.3298* **`Error: Workspace not trusted. <folder> is your home directory`**: Da das Vertrauen für Ihr Home-Verzeichnis nie gespeichert wird, hilft es nicht, dort zuerst `claude` auszuführen. Führen Sie `claude ultrareview` stattdessen aus einem Projektverzeichnis aus, nachdem Sie dort einmal `claude` ausgeführt und den Vertrauensdialog akzeptiert haben, oder hängen Sie `--trust-workspace` an.

3296* **`No answer in time.` gefolgt von `Error: Workspace not trusted`**: Die Frage `Trust <folder>? [y/N]` blieb 5 Minuten lang unbeantwortet. Führen Sie `claude ultrareview` erneut aus und beantworten Sie sie.3299* **`No answer in time.` gefolgt von `Error: Workspace not trusted`**: Die Frage `Trust <folder>? [y/N]` blieb 5 Minuten lang unbeantwortet. Führen Sie `claude ultrareview` erneut aus und beantworten Sie sie.

3297* **`Ultrareview did not start: <folder> is not trusted`**: Sie haben bei der Frage `Trust <folder>? [y/N]` abgelehnt, zum Beispiel indem Sie `n` geantwortet oder Enter gedrückt haben. Um das Review zu starten, führen Sie `claude ultrareview` erneut aus und antworten Sie `y`.3300* **`Ultrareview did not start: <folder> is not trusted`**: Sie haben bei der Frage `Trust <folder>? [y/N]` abgelehnt, zum Beispiel indem Sie `n` geantwortet oder Enter gedrückt haben. Um das Review zu starten, führen Sie `claude ultrareview` erneut aus und antworten Sie `y`.

3298* **``Ultrareview did not start: `--trust-workspace` takes no value``**: Auf `--trust-workspace` folgt etwas anderes als ein Flag, etwa eine PR-Nummer oder `false`. Wenn Sie dem Ordner nicht vertrauen, lassen Sie das Flag weg. Um ihm für diese Ausführung zu vertrauen, setzen Sie die PR-Nummer oder den Basis-Branch vor das Flag: `claude ultrareview 1234 --trust-workspace`.3301* **``Ultrareview did not start: `--trust-workspace` takes no value``**: Auf `--trust-workspace` folgt etwas anderes als ein Flag, etwa eine PR-Nummer oder `false`. Wenn Sie dem Ordner nicht vertrauen, lassen Sie das Flag weg. Um ihm für diese Ausführung zu vertrauen, stellen Sie die PR-Nummer oder den Basis-Branch vor das Flag: `claude ultrareview 1234 --trust-workspace`.

3299 3302 

3300Vor v2.1.309 akzeptierte `claude ultrareview` kein `--trust-workspace`.3303Vor v2.1.309 akzeptierte `claude ultrareview` kein `--trust-workspace`.

3301 3304 


3588Verwandte Meldungen treten auf, bevor der Befehl überhaupt ausgeführt wird:3591Verwandte Meldungen treten auf, bevor der Befehl überhaupt ausgeführt wird:

3589 3592 

3590* `Shell command permission check failed for pattern "..."`: Die Berechtigungsprüfung des Befehls hat ihn nicht zugelassen. [Berechtigungsprüfungen für eingefügte Befehle](https://code.claude.com/docs/de/skills.md#permission-checks-on-injected-commands) beschreibt, welche Ergebnisse in jedem Berechtigungsmodus zum Abbruch führen und wie Sie einen Befehl mit `allowed-tools` vorab genehmigen3593* `Shell command permission check failed for pattern "..."`: Die Berechtigungsprüfung des Befehls hat ihn nicht zugelassen. [Berechtigungsprüfungen für eingefügte Befehle](https://code.claude.com/docs/de/skills.md#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

3591* ``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](https://code.claude.com/docs/de/skills.md#how-injected-commands-run)3594* ``Skill <name> requires bash (`shell: bash` in frontmatter) but Git Bash was not found``: Das Frontmatter des Skills verlangt bash auf einem Rechner ohne bash. Installieren Sie Git for Windows oder ändern Sie das Frontmatter zu `shell: powershell`. Siehe [Wie eingefügte Befehle ausgeführt werden](https://code.claude.com/docs/de/skills.md#how-injected-commands-run)

3592* `No shell command in <name> was run`: Einer der `!`-Befehle der Datei enthält ein rohes Steuerzeichen außer Tab oder Zeilenumbruch, daher wird keiner davon ausgeführt. Siehe [wie Sie das Zeichen finden und entfernen](#no-shell-command-was-run)

3593 3595 

3594**Vorgehensweise:**3596**Vorgehensweise:**

3595 3597 


3599 3601 

3600### No shell command in a skill or command was run3602### No shell command in a skill or command was run

3601 3603 

3602Einer der `` !`<command>` ``-[Befehle für dynamischen Kontext](https://code.claude.com/docs/de/skills.md#inject-dynamic-context) in einer Skill- oder benutzerdefinierten Befehlsdatei enthält ein rohes Steuerzeichen außer Tab oder Zeilenumbruch. Claude Code lehnt den gesamten Aufruf ab, bevor einer der Befehle der Datei ausgeführt wird.3604`No shell command in <name> was run` bedeutet, dass ein `` !`<command>` ``-[Befehl für dynamischen Kontext](https://code.claude.com/docs/de/skills.md#inject-dynamic-context) in dieser Skill- oder Befehlsdatei ein Zeichen enthält, das das Bash- oder PowerShell-Tool ablehnt:

3605 

3606* **Beide Tools**: ein rohes Steuerzeichen außer Tabulator oder Zeilenumbruch

3607* **PowerShell-Tool**: zusätzlich U+FEFF oder U+180E

3603 3608 

3604Die Meldung nennt das Shell-Tool, das die Befehle ausgeführt hätte, Bash oder PowerShell, und endet mit dem abgelehnten Befehl. Jedes solche Zeichen wird durch `�` ersetzt, damit Sie sehen können, wo es sich befindet:3609Die Meldung endet mit dem abgelehnten Befehl, wobei jedes abgelehnte Zeichen als `�` angezeigt wird, wie in diesem Beispiel für das Bash-Tool:

3605 3610 

3606```text theme={null}3611```text theme={null}

3607No shell command in /my-skill was run, because the Bash tool does not accept one of them: command contains control characters that would be hidden in the approval dialog. Unprintable characters are shown as � below: remove them from the skill or command file, or from the arguments or options substituted into it.3612No shell command in /my-skill was run, because the Bash tool does not accept one of them: command contains control characters that would be hidden in the approval dialog. Unprintable characters are shown as � below: remove them from the skill or command file, or from the arguments or options substituted into it.


3610 3615 

3611**Vorgehensweise:**3616**Vorgehensweise:**

3612 3617 

3613* Suchen Sie jedes `�` in dem am Ende der Meldung zitierten Befehl. Entfernen Sie das Zeichen, für das es steht, aus der Skill- oder Befehlsdatei oder aus den Argumenten oder Optionen, die in die Datei eingesetzt werden.3618* Suchen Sie jedes `�` im Befehl, der am Ende der Meldung zitiert wird. Entfernen Sie das Zeichen, für das es steht, aus der [Skill- oder Befehlsdatei](https://code.claude.com/docs/de/skills.md#where-skills-live) oder aus den Argumenten oder [Optionen](https://code.claude.com/docs/de/plugins/manifest-reference.md#user-configuration), die in die Datei eingesetzt werden.

3614 3619 

3615### Bei Verwendung von `--print` muss eine Eingabe angegeben werden3620### Bei Verwendung von `--print` muss eine Eingabe angegeben werden

3616 3621 


4568 4573 

4569Vor v2.1.281 beendete ein Null-Byte in einem Read-, Write-, Edit- oder NotebookEdit-Pfad den ganzen Turn mit einem Fehler, der `Path contains null bytes` nannte, und das Tool wurde nie ausgeführt.4574Vor v2.1.281 beendete ein Null-Byte in einem Read-, Write-, Edit- oder NotebookEdit-Pfad den ganzen Turn mit einem Fehler, der `Path contains null bytes` nannte, und das Tool wurde nie ausgeführt.

4570 4575 

4576### Befehl enthält ein unsichtbares Zeichen

4577 

4578Das [PowerShell-Tool](https://code.claude.com/docs/de/tools-reference.md#powershell-tool) hat sich geweigert, einen Befehl auszuführen, der U+FEFF oder U+180E enthält:

4579 

4580```text theme={null}

4581Error: command contains the invisible character U+FEFF (byte order mark) or U+180E (Mongolian vowel separator), and was not run. Remove the character, keep the text that needs it in a file that the command reads, or write it as $([char]0xFEFF) or $([char]0x180E) inside a double-quoted string

4582```

4583 

4584**Was zu tun ist:**

4585 

4586* **Für einen Befehl, den Claude geschrieben hat**: Sie müssen nichts beheben. Die Nachricht teilt Claude mit, wie der Befehl umzuschreiben ist.

4587* **Für eine Skill- oder Befehlsdatei**: Die Nachricht folgt auf `No shell command in <name> was run`. Siehe [wo Sie das Zeichen finden und wie Sie es entfernen](#no-shell-command-was-run).

4588 

4571### Datei ist zu groß, um als Bild gelesen zu werden4589### Datei ist zu groß, um als Bild gelesen zu werden

4572 4590 

4573Claude hat versucht, eine Datei mit dem [Read-Tool](https://code.claude.com/docs/de/tools-reference.md#read-tool-behavior) als Bild zu lesen, und die Datei ist größer als 128 MB, die maximale Größe, die Read aus einer Bilddatei lädt. Es wurde nichts gelesen, und Claude erhält diesen Fehler als Tool-Ergebnis:4591Claude hat versucht, eine Datei mit dem [Read-Tool](https://code.claude.com/docs/de/tools-reference.md#read-tool-behavior) als Bild zu lesen, und die Datei ist größer als 128 MB, die maximale Größe, die Read aus einer Bilddatei lädt. Es wurde nichts gelesen, und Claude erhält diesen Fehler als Tool-Ergebnis:


5431* Legen Sie den PATH-Eintrag als Benutzer- oder Systemumgebungsvariable fest, nicht in Ihrem PowerShell-Profil. Die Erweiterung führt Ihr Profil nicht aus, daher erreicht eine PATH-Bearbeitung, die nur dort vorhanden ist, sie nie.5449* Legen Sie den PATH-Eintrag als Benutzer- oder Systemumgebungsvariable fest, nicht in Ihrem PowerShell-Profil. Die Erweiterung führt Ihr Profil nicht aus, daher erreicht eine PATH-Bearbeitung, die nur dort vorhanden ist, sie nie.

5432* Starten Sie VS Code nach dem Ändern von PATH neu. Die Erweiterung überprüft den PATH, den VS Code beim Start erfasst hat, daher wird eine PATH-Änderung erst nach einem Neustart wirksam.5450* Starten Sie VS Code nach dem Ändern von PATH neu. Die Erweiterung überprüft den PATH, den VS Code beim Start erfasst hat, daher wird eine PATH-Änderung erst nach einem Neustart wirksam.

5433 5451 

5452### The Claude Code program for this computer could not be found

5453 

5454Die [VS Code-Erweiterung](https://code.claude.com/docs/de/vs-code.md) hat nach der in ihr gebündelten Kopie von Claude Code gesucht und keine gefunden, die für Ihren Computer gebaut wurde. Die Meldung nennt den Build, den Ihr Computer benötigt:

5455 

5456```text theme={null}

5457The Claude Code program for this computer, the Linux (linux-x64) build, could not be found.

5458```

5459 

5460**Was zu tun ist:**

5461 

5462* Wenn die Meldung angibt, welchen Build die Erweiterung enthält, haben Sie das Erweiterungspaket für eine andere Plattform: Installieren Sie das Paket, das für den in der Meldung genannten Build erstellt wurde

5463* Wenn die Meldung nicht angibt, welchen Build die Erweiterung enthält, installieren Sie die Claude Code-Erweiterung über die Erweiterungsansicht Ihres Editors neu

5464* Oder setzen Sie in beiden Fällen [`claudeCode.claudeProcessWrapper`](https://code.claude.com/docs/de/vs-code#extension-settings) auf eine separat installierte `claude`-Binärdatei

5465 

5466Vor v2.1.290 wurde dies als `Unsupported platform: <platform>-<arch>. No compatible Claude Code binary found.` angezeigt.

5467 

5434### Die Verbindung zu Claude Code wurde beendet, bevor diese Nachricht abgeschlossen wurde5468### Die Verbindung zu Claude Code wurde beendet, bevor diese Nachricht abgeschlossen wurde

5435 5469 

5436Die [VS Code-Erweiterung](https://code.claude.com/docs/de/vs-code.md) hat Ihre Nachricht an den `claude`-Prozess gesendet, und die Verbindung wurde ohne Fehler beendet, bevor der Prozess sie bestätigt oder abgeschlossen hat. Die Erweiterung kann nicht feststellen, ob die Nachricht verarbeitet wurde, daher fordert sie Sie auf, sie erneut zu senden:5470Die [VS Code-Erweiterung](https://code.claude.com/docs/de/vs-code.md) hat Ihre Nachricht an den `claude`-Prozess gesendet, und die Verbindung wurde ohne Fehler beendet, bevor der Prozess sie bestätigt oder abgeschlossen hat. Die Erweiterung kann nicht feststellen, ob die Nachricht verarbeitet wurde, daher fordert sie Sie auf, sie erneut zu senden:

fast-mode.md +34 −32

Details

8 8 

9> [!NOTE]9> [!NOTE]

10>10>

11> Der Schnellmodus befindet sich in [Forschungsvorschau](#research-preview). Die Funktion, Preisgestaltung und Verfügbarkeit können sich basierend auf Feedback ändern.11> Der Fast-Modus für Claude Opus 5.5 ist verfügbar, und der Fast-Modus für Claude Opus 5 und Claude Opus 4.8 befindet sich in der [Research Preview](#research-preview).

12 12 

13Der Schnellmodus ist eine Hochgeschwindigkeitskonfiguration für Claude Opus, die das Modell bis zu 2,5x schneller macht, allerdings zu höheren Kosten pro Token. Aktivieren Sie ihn mit `/fast`, wenn Sie Geschwindigkeit für interaktive Arbeiten wie schnelle Iteration oder Live-Debugging benötigen, und deaktivieren Sie ihn, wenn Kosten wichtiger sind als Latenz.13Der Schnellmodus ist eine Hochgeschwindigkeitskonfiguration für Claude Opus, die das Modell bis zu 2,5x schneller macht, allerdings zu höheren Kosten pro Token. Aktivieren Sie ihn mit `/fast`, wenn Sie Geschwindigkeit für interaktive Arbeiten wie schnelle Iteration oder Live-Debugging benötigen, und deaktivieren Sie ihn, wenn Kosten wichtiger sind als Latenz.

14 14 


20 20 

21* Verwenden Sie `/fast`, um den Schnellmodus in der Claude Code CLI ein- oder auszuschalten. Die [VS Code-Erweiterung](https://code.claude.com/docs/de/vs-code.md) bietet einen **Schnellmodus umschalten**-Befehl, wenn das ausgewählte Modell den Schnellmodus unterstützt. Claude Code speichert diese Einstellung in Ihrer [`fastMode`-Einstellung](#toggle-fast-mode).21* Verwenden Sie `/fast`, um den Schnellmodus in der Claude Code CLI ein- oder auszuschalten. Die [VS Code-Erweiterung](https://code.claude.com/docs/de/vs-code.md) bietet einen **Schnellmodus umschalten**-Befehl, wenn das ausgewählte Modell den Schnellmodus unterstützt. Claude Code speichert diese Einstellung in Ihrer [`fastMode`-Einstellung](#toggle-fast-mode).

22* Die Preisgestaltung für den Schnellmodus beträgt \$8/\$40 pro MTok Ein-/Ausgabe auf Opus 5.5 und \$10/\$50 auf Opus 5 und Opus 4.8.22* Die Preisgestaltung für den Schnellmodus beträgt \$8/\$40 pro MTok Ein-/Ausgabe auf Opus 5.5 und \$10/\$50 auf Opus 5 und Opus 4.8.

23* Verfügbar für Claude Code-Benutzer mit Abonnementplänen (Pro/Max/Team/Enterprise) und auf Claude Console. Team- und Enterprise-Organisationen benötigen zunächst einen Eigentümer, um dies zu aktivieren, und Console-Organisationen benötigen zunächst bereitgestellten Zugriff, beide beschrieben unter [Anforderungen](#requirements).23* Verfügbar für Claude Code-Benutzer mit Abonnementplänen (Pro/Max/Team/Enterprise) und auf Claude Console. Bei Team- und Enterprise-Organisationen muss zunächst ein Eigentümer den Fast-Modus aktivieren, und Console-Organisationen benötigen zunächst bereitgestellten Zugriff, um ihn mit Opus 5 oder Opus 4.8 zu verwenden. Unter [Anforderungen](#requirements) werden beide Fälle beschrieben.

24* Für Claude Code-Benutzer mit Abonnementplänen (Pro/Max/Team/Enterprise) ist der Schnellmodus nur über Nutzungsguthaben verfügbar und nicht in den Abonnement-Ratenlimits enthalten.24* Für Claude Code-Benutzer mit Abonnementplänen (Pro/Max/Team/Enterprise) ist der Schnellmodus nur über Nutzungsguthaben verfügbar und nicht in den Abonnement-Ratenlimits enthalten.

25 25 

26## Schnellmodus aktivieren26## Fast-Modus umschalten

27 27 

28Im CLI können Sie den Schnellmodus auf eine dieser Weisen aktivieren:28In der CLI schalten Sie den Fast-Modus auf eine der folgenden Arten um:

29 29 

30* Geben Sie `/fast` ein, drücken Sie Leertaste, um ihn ein- oder auszuschalten, und drücken Sie dann Enter, um zu bestätigen30* Führen Sie `/fast` aus, drücken Sie Space zum Ein- oder Ausschalten und anschließend Enter zum Bestätigen

31* Setzen Sie `"fastMode": true` in Ihrer [Benutzereinstellungsdatei](https://code.claude.com/docs/de/settings.md)31* Setzen Sie `"fastMode": true` in Ihrer [Benutzer-Einstellungsdatei](https://code.claude.com/docs/de/settings.md)

32 32 

33Standardmäßig bleibt der Schnellmodus, den Sie in einer interaktiven Sitzung aktivieren, über Sitzungen hinweg erhalten. Sie können den Schnellmodus so konfigurieren, dass er sich bei jeder Sitzung zurückgesetzt wird. Weitere Informationen finden Sie unter [Opt-in pro Sitzung erforderlich](#require-per-session-opt-in).33Standardmäßig bleibt der Fast-Modus, den Sie in einer interaktiven Sitzung einschalten, über Sitzungen hinweg erhalten. Sie können den Fast-Modus so konfigurieren, dass er bei jeder Sitzung zurückgesetzt wird. Details finden Sie unter [Aktivierung pro Sitzung erzwingen](#require-per-session-opt-in).

34 34 

35Außerhalb einer [Cloud-Sitzung](#use-fast-mode-in-cloud-sessions), im [nicht-interaktiven Modus](https://code.claude.com/docs/de/headless.md) mit dem `-p`-Flag funktioniert `/fast` nur in einer Sitzung, die mit dem Schnellmodus in ihrem [`--settings`](https://code.claude.com/docs/de/cli-reference#cli-flags)-Wert gestartet wurde, zum Beispiel `claude -p --settings '{"fastMode": true}'`; der Toggle gilt dann nur für diese Sitzung und wird nicht als Ihr Standard gespeichert. Das `-p`-Formular erfordert Claude Code v2.1.205 oder später. Anderswo im nicht-interaktiven Modus meldet der Befehl, dass der Schnellmodus nicht verfügbar ist.35Außerhalb einer [Cloud-Sitzung](#use-fast-mode-in-cloud-sessions) funktioniert `/fast` im [nicht interaktiven Modus](https://code.claude.com/docs/de/headless.md) mit dem Flag `-p` nur in einer Sitzung, die mit dem Fast-Modus in ihrem [`--settings`](https://code.claude.com/docs/de/cli-reference#cli-flags)-Wert gestartet wurde, zum Beispiel `claude -p --settings '{"fastMode": true}'`; das Umschalten gilt dann nur für diese Sitzung und wird nicht als Ihr Standard gespeichert. Die `-p`-Variante erfordert Claude Code v2.1.205 oder höher. Ansonsten meldet der Befehl im nicht interaktiven Modus, dass der Fast-Modus nicht verfügbar ist.

36 36 

37Sie können `/fast` ausführen, während Claude arbeitet, und Claude Code schaltet den Schnellmodus um, ohne auf das Ende des Zugs zu warten. Claude Code beendet den laufenden Zug mit seiner ursprünglichen Geschwindigkeit, sodass die Geschwindigkeitsänderung ab Ihrem nächsten Zug wirksam wird. Wenn Ihr aktuelles Modell den Schnellmodus nicht unterstützt, wird durch das Aktivieren auch Ihr Modell gewechselt, und Claude Code verwendet das neue Modell ab seiner nächsten Anfrage in diesem Zug.37Sie können `/fast` ausführen, während Claude arbeitet, und Claude Code schaltet den Fast-Modus um, ohne auf das Ende des Turns zu warten. Claude Code beendet den laufenden Turn mit seiner ursprünglichen Geschwindigkeit, sodass die Geschwindigkeitsänderung ab Ihrem nächsten Turn wirksam wird. Wenn Ihr aktuelles Modell den Fast-Modus nicht unterstützt, wechselt das Einschalten auch Ihr Modell, und Claude Code verwendet das neue Modell ab seiner nächsten Anfrage in diesem Turn.

38 38 

39Für die beste Kosteneffizienz aktivieren Sie den Schnellmodus am Anfang einer Sitzung, anstatt ihn mitten in einem Gespräch zu wechseln. Weitere Informationen finden Sie unter [Kostenabwägung verstehen](#understand-the-cost-tradeoff).39Für die beste Kosteneffizienz aktivieren Sie den Fast-Modus zu Beginn einer Sitzung, statt mitten in der Konversation umzuschalten. Details finden Sie unter [Den Kostenkompromiss verstehen](#understand-the-cost-tradeoff).

40 40 

41Wenn Sie den Schnellmodus aktivieren:41Wenn Sie den Fast-Modus aktivieren:

42 42 

43* Wenn Ihr aktuelles Modell den Schnellmodus nicht unterstützt, wechselt Claude Code zu Opus43* Wenn Ihr aktuelles Modell den Fast-Modus nicht unterstützt, wechselt Claude Code zu Opus

44* Sie sehen eine Bestätigungsmeldung: „Fast mode ON“44* Sie sehen eine Bestätigungsmeldung: „Fast mode ON“

45* Ein kleines `↯`-Symbol wird neben der Eingabeaufforderung angezeigt, während der Schnellmodus aktiv ist45* Ein kleines `↯`-Symbol erscheint neben dem Prompt, solange der Fast-Modus aktiv ist

46* Führen Sie `/fast` jederzeit erneut aus, um zu überprüfen, ob der Schnellmodus aktiviert oder deaktiviert ist46* Führen Sie `/fast` jederzeit erneut aus, um zu prüfen, ob der Fast-Modus ein- oder ausgeschaltet ist

47 47 

48Opus 5.5 ist der Standard für den Fast-Modus in Claude Code v2.1.280 und später. Vor v2.1.280 war der Fast-Modus ab v2.1.219 standardmäßig auf Opus 5 eingestellt.48Opus 5.5 ist der Standard für den Fast-Modus in Claude Code v2.1.280 und höher. Vor v2.1.280 war der Standard für den Fast-Modus ab v2.1.219 Opus 5.

49 49 

50Wenn Sie den Schnellmodus mit `/fast` erneut deaktivieren, bleiben Sie auf Opus. Um zu einem anderen Modell zu wechseln, verwenden Sie `/model`.50Wenn Sie den Fast-Modus mit `/fast` wieder deaktivieren, bleiben Sie bei Opus. Um zu einem anderen Modell zu wechseln, verwenden Sie `/model`.

51 51 

52### Modelle wechseln, während der Schnellmodus aktiviert ist52### Modelle wechseln, während der Fast-Modus eingeschaltet ist

53 53 

54Der Schnellmodus folgt Ihren Modellwechseln in beide Richtungen:54Der Fast-Modus folgt Ihren Modellwechseln in beide Richtungen:

55 55 

56* **Wechsel weg**: Wenn Sie zu einem Modell wechseln, das den Schnellmodus nicht unterstützt, schaltet Claude Code den Schnellmodus aus. Dies gilt auch für Opus 4.7; vor v2.1.221 blieb der Schnellmodus nach einem Wechsel zu Opus 4.7 aktiviert und die API lehnte die Anfragen ab.56* **Wegwechseln**: Wenn Sie zu einem Modell wechseln, das den Fast-Modus nicht unterstützt, schaltet Claude Code den Fast-Modus aus. Dies gilt auch für Opus 4.7; vor v2.1.221 blieb der Fast-Modus nach einem Wechsel zu Opus 4.7 eingeschaltet, und die API lehnte die Anfragen ab.

57* **Zurückwechsel**: Das Zurückwechseln zu einem unterstützten Opus-Modell aktiviert den Schnellmodus erneut, wenn Ihre gespeicherte Schnellmodus-Einstellung aktiviert ist, die gleiche Einstellung, mit der eine neue Sitzung standardmäßig beginnt. Ein Modellwechsel aktiviert den Schnellmodus niemals für eine Sitzung, deren gespeicherte Einstellung deaktiviert ist, und mit [Opt-in pro Sitzung](#require-per-session-opt-in) konfiguriert, wird er beim Zurückwechseln auch nicht aktiviert; führen Sie `/fast` aus, um ihn erneut zu aktivieren.57* **Zurückwechseln**: Ein Wechsel zurück zu einem unterstützten Opus-Modell schaltet den Fast-Modus wieder ein, wenn Ihre gespeicherte Fast-Modus-Präferenz eingeschaltet ist – dieselbe Präferenz, mit der eine neue Sitzung standardmäßig startet. Ein Modellwechsel schaltet den Fast-Modus niemals für eine Sitzung ein, deren gespeicherte Präferenz ausgeschaltet ist, und wenn [Aktivierung pro Sitzung](#require-per-session-opt-in) konfiguriert ist, schaltet ihn auch ein Zurückwechseln nicht ein; führen Sie `/fast` aus, um ihn wieder zu aktivieren.

58 58 

59Immer wenn ein Modellwechsel den Fast-Modus ein- oder ausschaltet, zeigt Claude Code eine Bestätigung `Fast mode ON` oder `Fast mode OFF` an, und das `↯`-Symbol wird angezeigt, während der Fast-Modus aktiviert ist. Dies gilt, ob Sie mit `/model`, mit [`/config model=<model>`](https://code.claude.com/docs/de/settings) oder von einem Gerät aus wechseln, das über [Remote Control](https://code.claude.com/docs/de/remote-control.md) verbunden ist.59Immer wenn ein Modellwechsel den Fast-Modus ein- oder ausschaltet, zeigt Claude Code eine Bestätigung `Fast mode ON` oder `Fast mode OFF` an, und das `↯`-Symbol erscheint, solange der Fast-Modus eingeschaltet ist. Dies gilt unabhängig davon, ob Sie mit `/model`, mit [`/config model=<model>`](https://code.claude.com/docs/de/settings) oder von einem über [Remote Control](https://code.claude.com/docs/de/remote-control.md) verbundenen Gerät aus wechseln.

60 60 

61Claude Code sendet den Fast-Modus-Status der Sitzung nach einem Modellwechsel, einer Wiederverbindung oder einer fehlgeschlagenen [Verfügbarkeitsprüfung](#use-fast-mode-behind-proxies-and-llm-gateways) erneut an Geräte, die über Remote Control verbunden sind.61Claude Code sendet den Fast-Modus-Status der Sitzung nach einem Modellwechsel, einer erneuten Verbindung oder einer fehlgeschlagenen [Verfügbarkeitsprüfung](#use-fast-mode-behind-proxies-and-llm-gateways) erneut an über Remote Control verbundene Geräte.

62 62 

63### Schnellmodus in Cloud-Sitzungen verwenden63### Fast-Modus in Cloud-Sitzungen verwenden

64 64 

65Der Schnellmodus funktioniert in [Cloud-Sitzungen](https://code.claude.com/docs/de/claude-code-on-the-web.md), wenn er auf Ihrem Konto verfügbar ist, unabhängig davon, ob die Sitzung auf von Anthropic verwalteter Infrastruktur oder einem [selbstgehosteten Runner](https://code.claude.com/docs/de/self-hosted-environments) ausgeführt wird. Erfordert Claude Code v2.1.271 oder später in der Umgebung der Sitzung.65Der Fast-Modus funktioniert in [Cloud-Sitzungen](https://code.claude.com/docs/de/claude-code-on-the-web.md), wenn er für Ihr Konto verfügbar ist, unabhängig davon, ob die Sitzung auf von Anthropic verwalteter Infrastruktur oder auf einem [selbst gehosteten Runner](https://code.claude.com/docs/de/self-hosted-environments) läuft. Erfordert Claude Code v2.1.271 oder höher in der Umgebung der Sitzung.

66 66 

67Geben Sie `/fast on` in der Sitzung ein, um den Schnellmodus zu aktivieren. Er bleibt nur für diese Sitzung aktiviert und wird nicht als Ihr Standard gespeichert. Die [Anforderungen](#requirements) gelten auch in Cloud-Sitzungen.67Geben Sie in der Sitzung `/fast on` ein, um den Fast-Modus einzuschalten. Er bleibt nur für diese Sitzung eingeschaltet und wird nicht als Ihr Standard gespeichert. Die [Voraussetzungen](#requirements) gelten auch in Cloud-Sitzungen.

68 68 

69Im Browser unter [claude.ai/code](https://claude.ai/code) können Sie den Schnellmodus auch über das Modellmenü in der Nachrichtenbox ein- und ausschalten. Das Menü zeigt den Schalter an, wenn Ihr Plan den Schnellmodus enthält und das ausgewählte Modell ihn unterstützt.69Im Browser unter [claude.ai/code](https://claude.ai/code) können Sie den Fast-Modus auch über das Modellmenü im Nachrichtenfeld ein- und ausschalten. Das Menü zeigt den Schalter an, wenn Ihr Plan den Fast-Modus enthält und das ausgewählte Modell ihn unterstützt.

70 70 

71## Kostenabwägung verstehen71## Kostenabwägung verstehen

72 72 


119 119 

120Der Schnellmodus erfordert alle folgenden Voraussetzungen:120Der Schnellmodus erfordert alle folgenden Voraussetzungen:

121 121 

122* **Nur Anthropic API oder Abonnement**: Der Schnellmodus ist über die Anthropic Console API und für Claude-Abonnementpläne mit Nutzungsguthaben verfügbar. Er ist nicht auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder Claude Platform auf AWS verfügbar. Console-Organisationen müssen auch [Schnellmodus-Zugriff bereitgestellt haben](#enable-fast-mode-for-your-organization).122* **Nur Anthropic API oder Abonnement**: Der Fast-Modus ist über die Anthropic Console API und für Claude-Abonnementpläne mit Nutzungsguthaben verfügbar. Er ist nicht auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder Claude Platform auf AWS verfügbar. Console-Organisationen müssen außerdem [Fast-Modus-Zugriff bereitgestellt haben](#enable-fast-mode-for-your-organization), um ihn mit Opus 5 oder Opus 4.8 zu verwenden.

123* **Nutzungsguthaben für Abonnementpläne aktiviert**: Bei einem Pro-, Max-, Team- oder Enterprise-Plan muss für Ihr Konto [Nutzungsguthaben](https://code.claude.com/docs/de/costs.md#add-usage-credits-to-your-subscription) aktiviert sein, was eine Abrechnung über die in Ihrem Plan enthaltene Nutzung hinaus ermöglicht. Solange es nicht aktiviert ist, meldet `/fast` „Fast mode requires usage credits“. Wie Sie es aktivieren, hängt von Ihrem Plan ab:123* **Nutzungsguthaben für Abonnementpläne aktiviert**: Bei einem Pro-, Max-, Team- oder Enterprise-Plan muss für Ihr Konto [Nutzungsguthaben](https://code.claude.com/docs/de/costs.md#add-usage-credits-to-your-subscription) aktiviert sein, was eine Abrechnung über die in Ihrem Plan enthaltene Nutzung hinaus ermöglicht. Solange es nicht aktiviert ist, meldet `/fast` „Fast mode requires usage credits“. Wie Sie es aktivieren, hängt von Ihrem Plan ab:

124 * Bei Pro und Max aktivieren Sie es im Abschnitt **Nutzungsguthaben** unter [**Einstellungen > Nutzung**](https://claude.ai/settings/usage) auf claude.ai, oder führen Sie `/usage-credits` aus, um diese Seite zu öffnen.124 * Bei Pro und Max aktivieren Sie es im Abschnitt **Nutzungsguthaben** unter [**Einstellungen > Nutzung**](https://claude.ai/settings/usage) auf claude.ai, oder führen Sie `/usage-credits` aus, um diese Seite zu öffnen.

125 * Bei Team und Enterprise aktiviert ein Mitglied mit Abrechnungszugriff es für die Organisation unter [**Organisationseinstellungen > Nutzung**](https://claude.ai/admin-settings/usage), und ein Mitglied ohne diesen Zugriff führt `/usage-credits` aus, um den Admins der Organisation eine Anfrage zu senden.125 * Bei Team und Enterprise aktiviert ein Mitglied mit Abrechnungszugriff es für die Organisation unter [**Organisationseinstellungen > Nutzung**](https://claude.ai/admin-settings/usage), und ein Mitglied ohne diesen Zugriff führt `/usage-credits` aus, um den Admins der Organisation eine Anfrage zu senden.


129> Die Nutzung des Schnellmodus wird direkt von Nutzungsguthaben abgerechnet, auch wenn Sie noch Nutzung in Ihrem Plan haben.129> Die Nutzung des Schnellmodus wird direkt von Nutzungsguthaben abgerechnet, auch wenn Sie noch Nutzung in Ihrem Plan haben.

130 130 

131* **Bezahlte Console-Organisation**: Claude Console-Konten verwenden keine Nutzungsguthaben, und Ihre Organisation zahlt für den Schnellmodus pro Token zusammen mit dem Rest ihrer API-Nutzung. Im kostenlosen Evaluierungsplan der Console zeigt `/fast` „Fast mode unavailable during evaluation. Please purchase credits.“ an. Um dies zu beheben, kaufen Sie Guthaben in Ihren [Console-Abrechnungseinstellungen](https://platform.claude.com/settings/billing).131* **Bezahlte Console-Organisation**: Claude Console-Konten verwenden keine Nutzungsguthaben, und Ihre Organisation zahlt für den Schnellmodus pro Token zusammen mit dem Rest ihrer API-Nutzung. Im kostenlosen Evaluierungsplan der Console zeigt `/fast` „Fast mode unavailable during evaluation. Please purchase credits.“ an. Um dies zu beheben, kaufen Sie Guthaben in Ihren [Console-Abrechnungseinstellungen](https://platform.claude.com/settings/billing).

132 

133 Der Fast-Modus mit Opus 5.5 hängt außerdem von der [Nutzungsstufe](https://platform.claude.com/docs/en/api/rate-limits) Ihrer Organisation ab.

132* **Owner-Aktivierung für Teams und Enterprise**: Der Schnellmodus ist standardmäßig für Teams- und Enterprise-Organisationen deaktiviert. Ein Owner muss den Schnellmodus explizit [aktivieren](#enable-fast-mode-for-your-organization), bevor Benutzer darauf zugreifen können.134* **Owner-Aktivierung für Teams und Enterprise**: Der Schnellmodus ist standardmäßig für Teams- und Enterprise-Organisationen deaktiviert. Ein Owner muss den Schnellmodus explizit [aktivieren](#enable-fast-mode-for-your-organization), bevor Benutzer darauf zugreifen können.

133 135 

134> [!NOTE]136> [!NOTE]


144 146 

145Wo Sie den Schnellmodus aktivieren, hängt davon ab, welches Produkt Ihre Organisation nutzt:147Wo Sie den Schnellmodus aktivieren, hängt davon ab, welches Produkt Ihre Organisation nutzt:

146 148 

147* **Console** (API-Kunden): Ein Administrator aktiviert ihn in [Claude Code-Einstellungen](https://platform.claude.com/claude-code/preferences). Der Schnellmodus befindet sich in [Forschungsvorschau](#research-preview), daher muss Ihre Organisation auch Schnellmodus-Zugriff bereitgestellt haben, bevor Schnellmodus-Anfragen erfolgreich sind. Um Zugriff zu erhalten, kontaktieren Sie Ihren Account Manager oder treten Sie der Warteliste bei, wie in [Schnellmodus auf der Claude API](https://platform.claude.com/docs/en/build-with-claude/fast-mode) beschrieben.149* **Console** (API-Kunden): Ein Admin aktiviert ihn in den [Claude Code-Einstellungen](https://platform.claude.com/claude-code/preferences)

148 

149 Ohne bereitgestellten Zugriff lehnt die API jede Schnellmodus-Anfrage mit einem 429 ab, und Claude Code behandelt jede Ablehnung als [Schnellmodus-Ratenlimit](#handle-rate-limits). Im Gegensatz zu einer Ratenlimit-Abkühlung werden die Ablehnungen fortgesetzt, bis der Zugriff bereitgestellt wird.

150* **Claude AI** (Team und Enterprise): Ein Owner aktiviert ihn unter [**Organisationseinstellungen > Claude Code**](https://claude.ai/admin-settings/claude-code)150* **Claude AI** (Team und Enterprise): Ein Owner aktiviert ihn unter [**Organisationseinstellungen > Claude Code**](https://claude.ai/admin-settings/claude-code)

151 151 

152Console-Organisationen, die Claude Opus 5 oder Claude Opus 4.8 verwenden, benötigen außerdem bereitgestellten Zugriff, wie in [Fast-Modus auf der Claude API](https://platform.claude.com/docs/en/build-with-claude/fast-mode) beschrieben. Ohne diesen Zugriff stoßen Fast-Modus-Anfragen auf diesen Modellen an das [Fast-Modus-Rate-Limit](#handle-rate-limits) und fallen auf Standardgeschwindigkeit zurück, bis der Zugriff bereitgestellt wird.

153 

152Eine weitere Option zum vollständigen Deaktivieren des Schnellmodus ist das Setzen von `CLAUDE_CODE_DISABLE_FAST_MODE=1`. Siehe [Umgebungsvariablen](https://code.claude.com/docs/de/env-vars.md).154Eine weitere Option zum vollständigen Deaktivieren des Schnellmodus ist das Setzen von `CLAUDE_CODE_DISABLE_FAST_MODE=1`. Siehe [Umgebungsvariablen](https://code.claude.com/docs/de/env-vars.md).

153 155 

154### Schnellmodus hinter Proxys und LLM-Gateways verwenden156### Schnellmodus hinter Proxys und LLM-Gateways verwenden


201 203 

202## Ratenlimits handhaben204## Ratenlimits handhaben

203 205 

204Der Schnellmodus hat separate Ratenlimits vom Standard-Opus. Alle unterstützten Opus-Modelle teilen sich einen Schnellmodus-Ratenlimit-Pool: Die Nutzung auf einem beliebigen dieser Modelle wird von den gleichen Limits abgezogen. Wenn Sie das Ratenlimit des Schnellmodus erreichen:206Der Fast-Modus hat vom Standard-Opus getrennte Rate-Limits; für Console-Organisationen werden diese auf der Seite [Rate-Limits](https://platform.claude.com/docs/en/api/rate-limits) der Claude Platform beschrieben. Wenn Sie das Rate-Limit des Fast-Modus erreichen:

205 207 

2061. Der Schnellmodus fällt automatisch auf Standard-Geschwindigkeit auf2081. Der Schnellmodus fällt automatisch auf Standard-Geschwindigkeit auf

2072. Das `↯`-Symbol wird grau, um die Abkühlung anzuzeigen2092. Das `↯`-Symbol wird grau, um die Abkühlung anzuzeigen


217 219 

218## Forschungsvorschau220## Forschungsvorschau

219 221 

220Der Schnellmodus ist eine Forschungsvorschau-Funktion. Dies bedeutet:222Der Fast-Modus für Claude Opus 5 und Claude Opus 4.8 ist eine Research-Preview-Funktion. Dies bedeutet:

221 223 

222* Die Funktion kann sich basierend auf Feedback ändern224* Die Funktion kann sich basierend auf Feedback ändern

223* Verfügbarkeit und Preisgestaltung können sich ändern225* Verfügbarkeit und Preisgestaltung können sich ändern

Details

90 <tr>90 <tr>

91 <td>[Fast mode](https://code.claude.com/docs/de/fast-mode.md)</td>91 <td>[Fast mode](https://code.claude.com/docs/de/fast-mode.md)</td>

92 <td>✓ ([Von Eigentümer aktiviert](https://code.claude.com/docs/de/fast-mode.md#enable-fast-mode-for-your-organization) auf Team und Enterprise)</td>92 <td>✓ ([Von Eigentümer aktiviert](https://code.claude.com/docs/de/fast-mode.md#enable-fast-mode-for-your-organization) auf Team und Enterprise)</td>

93 <td>✓ (bereitgestellte Organisationen)</td>93 <td>✓ (Opus 5 und 4.8 erfordern Bereitstellung)</td>

94 <td>✗</td>94 <td>✗</td>

95 <td>✗</td>95 <td>✗</td>

96 <td>✗</td>96 <td>✗</td>


285 285 

286**Nicht verfügbar:** alle [Funktionen, die ein Claude-Abonnement erfordern](#features-that-require-a-claude-subscription).286**Nicht verfügbar:** alle [Funktionen, die ein Claude-Abonnement erfordern](#features-that-require-a-claude-subscription).

287 287 

288Alles in [CLI-Funktionen, die je nach Anbieter unterschiedlich sind](#cli-capabilities-that-vary-by-provider) ist verfügbar, außer dass der [Fast-Modus](https://code.claude.com/docs/de/fast-mode.md) [bereitgestellten Zugriff](https://code.claude.com/docs/de/fast-mode.md#enable-fast-mode-for-your-organization) erfordert. [Serververwaltete Einstellungen](https://code.claude.com/docs/de/server-managed-settings.md), die Sie in einer claude.ai Team- oder Enterprise-Organisation konfigurieren, erreichen keine Sitzung, die sich mit einem Console-API-Schlüssel authentifiziert. Unter [Plattformverfügbarkeit](https://code.claude.com/docs/de/server-managed-settings.md#platform-availability) erfahren Sie, wie Sie diese Sitzungen abdecken.288Alles in [CLI-Funktionen, die je nach Anbieter unterschiedlich sind](#cli-capabilities-that-vary-by-provider) ist verfügbar, außer dass der [Fast-Modus](https://code.claude.com/docs/de/fast-mode.md) mit Claude Opus 5 oder Claude Opus 4.8 [bereitgestellten Zugriff](https://code.claude.com/docs/de/fast-mode.md#enable-fast-mode-for-your-organization) erfordert. [Serververwaltete Einstellungen](https://code.claude.com/docs/de/server-managed-settings.md), die Sie in einer claude.ai Team- oder Enterprise-Organisation konfigurieren, erreichen keine Sitzung, die sich mit einem Console-API-Schlüssel authentifiziert. Unter [Plattformverfügbarkeit](https://code.claude.com/docs/de/server-managed-settings.md#platform-availability) erfahren Sie, wie Sie diese Sitzungen abdecken.

289 289 

290**Teilweise Unterstützung:**290**Teilweise Unterstützung:**

291 291 

fullscreen.md +13 −13

Details

280 280 

281### Veralteter oder falsch platzierter Text auf dem Bildschirm281### Veralteter oder falsch platzierter Text auf dem Bildschirm

282 282 

283Das Vollbildrendering sendet nur die Zellen, die sich zwischen den Frames geändert haben. Einige Terminals, am häufigsten Windows Terminal und andere ConPTY-gestützte Hosts, führen diese positionierten Schreibvorgänge falsch zusammen und hinterlassen Fragmente der früheren Ausgabe auf dem Bildschirm, bis Sie das Fenster vergrößern.283Das Vollbild-Rendering sendet nur die Zellen, die sich zwischen zwei Frames geändert haben. Einige Terminals, am häufigsten Windows Terminal und andere auf ConPTY basierende Hosts, fassen diese positionierten Schreibvorgänge falsch zusammen und lassen Fragmente früherer Ausgabe auf dem Bildschirm stehen, bis Sie die Größe des Fensters ändern.

284 284 

285Setzen Sie [`CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT=1`](https://code.claude.com/docs/de/env-vars), um bei jedem Frame alle Zellen neu zu zeichnen, anstatt inkrementelle Updates zu senden.285Setzen Sie [`CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT=1`](https://code.claude.com/docs/de/env-vars), um bei jedem Frame jede Zelle neu zu zeichnen, anstatt inkrementelle Aktualisierungen zu senden.

286 286 

287Unter Windows PowerShell:287Unter Windows PowerShell:

288 288 


297CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT=1 claude297CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT=1 claude

298```298```

299 299 

300Unter Windows aktiviert Claude Code das vollständige Neuzeichnen bereits automatisch für Hintergrundsitzungen und [Agent-Ansicht](https://code.claude.com/docs/de/agent-view.md), daher müssen Sie die Variable nur für eine interaktive Vollbildsitzung setzen, die Sie direkt gestartet haben.300Unter Windows aktiviert Claude Code das vollständige Neuzeichnen für Hintergrundsitzungen und die [Agentenansicht](https://code.claude.com/docs/de/agent-view.md) bereits automatisch, sodass Sie die Variable nur für eine interaktive Vollbildsitzung setzen müssen, die Sie direkt gestartet haben.

301 301 

302### `Claude Code's fullscreen renderer didn't finish starting last time` wird beim Start angezeigt302### `Claude Code's fullscreen renderer didn't finish starting last time` appears at startup

303 303 

304Wenn eine Vollbildsitzung auf diesem Computer abstürzt, bevor sie erfolgreich gestartet wurde, startet Claude Code Ihre nächste Sitzung im klassischen Renderer und gibt eine von zwei Zeilen aus. Eine Sitzung hat erfolgreich gestartet, sobald sie ihren ersten Frame gezeichnet hat und dann entweder 10 Sekunden lang aktiv blieb oder Sie sie mit `/exit`, Strg+C oder Strg+D beendet haben. Die Zeile, die Sie sehen, teilt Ihnen mit, was Claude Code nach dieser Sitzung tut:304Wenn eine Vollbildsitzung auf diesem Rechner abstürzt, bevor sie erfolgreich gestartet ist, startet Claude Code Ihre nächste Sitzung im klassischen Renderer und gibt eine von zwei Zeilen aus. Eine Sitzung gilt als erfolgreich gestartet, sobald sie ihren ersten Frame gezeichnet hat und anschließend entweder 10 Sekunden lang gelaufen ist oder Sie sie mit `/exit`, Ctrl+C oder Ctrl+D beendet haben. Die angezeigte Zeile teilt Ihnen mit, was Claude Code nach dieser Sitzung tut:

305 305 

306* Nach einem fehlgeschlagenen Start sehen Sie `Claude Code's fullscreen renderer didn't finish starting last time on this machine`. Claude Code versucht das Vollbildrendering in der nächsten Sitzung, die Sie starten, erneut306* Nach einem fehlgeschlagenen Start sehen Sie `Claude Code's fullscreen renderer didn't finish starting last time on this machine`. Claude Code versucht das Vollbild-Rendering in der nächsten Sitzung, die Sie starten, erneut

307* Nach zwei fehlgeschlagenen Starts sehen Sie `Claude Code's fullscreen renderer has repeatedly failed to start on this machine`. Claude Code verwendet weiterhin den klassischen Renderer, bis Sie Claude Code aktualisieren oder `/tui fullscreen` ausführen, und gibt in diesen späteren Sitzungen nichts aus307* Nach zwei fehlgeschlagenen Starts sehen Sie `Claude Code's fullscreen renderer has repeatedly failed to start on this machine`. Claude Code verwendet weiterhin den klassischen Renderer, bis Sie Claude Code aktualisieren oder `/tui fullscreen` ausführen, und gibt in diesen späteren Sitzungen nichts aus

308 308 

309Um zu bestätigen, dass ein fehlgeschlagener Start der Grund ist, warum Sie sich im klassischen Renderer befinden, führen Sie `/tui` ohne Argument aus. Während ein fehlgeschlagener Start der Grund ist, sagt die Zeile `Current renderer` dies aus.309Um zu bestätigen, dass ein fehlgeschlagener Start der Grund dafür ist, dass Sie sich im klassischen Renderer befinden, führen Sie `/tui` ohne Argument aus. Solange ein fehlgeschlagener Start der Grund ist, gibt die Zeile `Current renderer` dies an.

310 310 

311Um den klassischen Renderer beizubehalten, führen Sie `/tui default` aus, wodurch die `tui`-Einstellung gespeichert wird, ohne neu zu starten. Um das Vollbildrendering erneut zu versuchen, führen Sie `/tui fullscreen` aus. Wenn diese Sitzung auch nicht erfolgreich startet, [melden Sie das Problem](#research-preview).311Um den klassischen Renderer beizubehalten, führen Sie `/tui default` aus, wodurch die Einstellung `tui` ohne Neustart gespeichert wird. Um das Vollbild-Rendering erneut zu versuchen, führen Sie `/tui fullscreen` aus. Wenn auch diese Sitzung nicht vollständig startet, [melden Sie das Problem](#research-preview).

312 312 

313Vor v2.1.236 startete Claude Code Sitzungen nach einem fehlgeschlagenen Start weiterhin im Vollbildrendering.313Vor v2.1.236 startete Claude Code Sitzungen auch nach einem fehlgeschlagenen Start weiterhin im Vollbild-Rendering.

314 314 

315#### Wie Claude Code fehlgeschlagene Starts zählt315#### Wie Claude Code fehlgeschlagene Starts zählt

316 316 

317* Sitzungen, die zählen: nur Sitzungen, die im Vollbildrendering gestartet wurden, weil Ihre `tui`-Einstellung dies vorsieht, weil Sie den [Startup-Dialog](#fullscreen-by-default) akzeptiert haben, oder weil Claude Code Sie standardmäßig im Vollbildmodus startet317* Gezählte Sitzungen: nur Sitzungen, die im Vollbild-Rendering gestartet sind, weil Ihre Einstellung `tui` dies vorgibt, weil Sie den [Startdialog](#fullscreen-by-default) akzeptiert haben oder weil Claude Code Sie standardmäßig im Vollbild startet

318* `CLAUDE_CODE_NO_FLICKER=1`: wenn Sie es setzen, rendert Claude Code diese Sitzung auch nach einem fehlgeschlagenen Start im Vollbildmodus und zählt ihn nicht318* `CLAUDE_CODE_NO_FLICKER=1`: Wenn Sie diese Variable setzen, rendert Claude Code diese Sitzung auch nach einem fehlgeschlagenen Start im Vollbild und zählt sie nicht

319* Zähler zurücksetzen: Claude Code zählt fehlgeschlagene Starts pro Claude Code-Version, und ein erfolgreicher Vollbildstart setzt den Zähler zurück319* Zurücksetzen der Zählung: Claude Code zählt fehlgeschlagene Starts pro Claude Code-Version, und ein erfolgreicher Vollbildstart setzt die Zählung zurück

320* Startup-Dialog: wenn Sie den Dialog akzeptiert haben und die neu gestartete Sitzung abstürzte, gibt Claude Code keine der beiden Zeilen aus und zeigt den Dialog auf dieser Claude Code-Version nicht erneut an320* Startdialog: Wenn Sie den Dialog akzeptiert haben und die neu gestartete Sitzung abgestürzt ist, gibt Claude Code keine der beiden Zeilen aus und zeigt den Dialog in dieser Claude Code-Version nicht erneut an

321 321 

322## Forschungsvorschau322## Forschungsvorschau

323 323 

github-actions.md +58 −58

Details

15* [Claude Agent SDK](https://code.claude.com/docs/de/agent-sdk/overview.md): benutzerdefinierte Automatisierung außerhalb von GitHub Actions. Die Claude Code GitHub Action basiert auf dem SDK15* [Claude Agent SDK](https://code.claude.com/docs/de/agent-sdk/overview.md): benutzerdefinierte Automatisierung außerhalb von GitHub Actions. Die Claude Code GitHub Action basiert auf dem SDK

16* [GitHub Enterprise Server](https://code.claude.com/docs/de/github-enterprise-server.md): Claude Code mit selbstgehostetem GitHub16* [GitHub Enterprise Server](https://code.claude.com/docs/de/github-enterprise-server.md): Claude Code mit selbstgehostetem GitHub

17 17 

18## Setup18## Einrichtung

19 19 

20Sie können die Claude Code GitHub Action auf eine von zwei Arten einrichten:20Sie können die Claude Code GitHub Action auf eine von zwei Arten einrichten:

21 21 

22* **Schnelles Setup**: Führen Sie `/install-github-app` aus Claude Code aus. Claude Code installiert die GitHub App, fügt Ihr Authentifizierungsgeheimnis hinzu und bereitet den Workflow-Pull-Request für Sie vor22* **Schnelleinrichtung**: Führen Sie `/install-github-app` in Claude Code aus. Claude Code installiert die GitHub App, fügt Ihr Authentifizierungs-Secret hinzu und bereitet den Workflow-Pull-Request für Sie vor

23* **Manuelles Setup**: Installieren Sie die App, fügen Sie das Geheimnis hinzu und kopieren Sie die Workflow-Datei selbst in Ihr Repository. Verwenden Sie diesen Weg, wenn Sie Claude Code nicht lokal ausführen, wenn der Befehl fehlschlägt oder wenn Sie vollständige Kontrolle über die Workflow-Dateien möchten23* **Manuelle Einrichtung**: Installieren Sie die App, fügen Sie das Secret hinzu und kopieren Sie die Workflow-Datei selbst in Ihr Repository. Verwenden Sie diesen Weg, wenn Sie Claude Code nicht lokal ausführen, wenn der Befehl fehlschlägt oder wenn Sie die volle Kontrolle über die Workflow-Dateien wünschen

24 24 

25Für beide Wege benötigen Sie Admin-Zugriff auf das Repository.25Für beide Wege benötigen Sie Admin-Zugriff auf das Repository.

26 26 

27### Schnelles Setup27### Schnelleinrichtung

28 28 

29`/install-github-app` funktioniert nur mit github.com-Repositories. Wenn sich das Git-Remote Ihres Repositories auf gitlab.com oder bitbucket.org befindet, druckt der Befehl eine Benachrichtigung aus und beendet sich, anstatt das Setup zu starten. Um Claude Code aus GitLab-Pipelines auszuführen, siehe [Claude Code GitLab CI/CD](https://code.claude.com/docs/de/gitlab-ci-cd.md).29`/install-github-app` funktioniert nur mit Repositorys auf github.com. Wenn das Git-Remote Ihres Repositorys auf gitlab.com oder bitbucket.org liegt, gibt der Befehl einen Hinweis aus und wird beendet, anstatt die Einrichtung zu starten. Informationen zum Ausführen von Claude Code aus GitLab-Pipelines finden Sie unter [Claude Code GitLab CI/CD](https://code.claude.com/docs/de/gitlab-ci-cd.md).

30 30 

31Bevor Sie beginnen, installieren Sie die [GitHub CLI](https://cli.github.com) und authentifizieren Sie sie mit `gh auth login`. Claude Code prüft darauf und warnt Sie, wenn sie fehlt.31Installieren Sie vor dem Start die [GitHub CLI](https://cli.github.com) und authentifizieren Sie sie mit `gh auth login`. Claude Code prüft, ob sie vorhanden ist, und warnt Sie, falls sie fehlt.

32 32 

33Öffnen Sie `claude` im Repository, das Sie verbinden möchten, führen Sie `/install-github-app` aus und folgen Sie den Aufforderungen. Claude Code installiert die Claude GitHub App und richtet dann ein Authentifizierungsgeheimnis für die Workflows ein:33Öffnen Sie `claude` in dem Repository, das Sie verbinden möchten, führen Sie `/install-github-app` aus und folgen Sie den Anweisungen. Claude Code installiert die Claude GitHub App und richtet anschließend ein Authentifizierungs-Secret für die Workflows ein:

34 34 

35* Wenn Claude Code bereits einen API-Schlüssel hat, verwendet es diesen Schlüssel wieder und bietet an, das vorhandene `ANTHROPIC_API_KEY`-Geheimnis des Repositories zu behalten, falls bereits eines gesetzt ist35* Wenn Claude Code bereits über einen API-Schlüssel verfügt, wird dieser Schlüssel wiederverwendet, und Claude Code bietet an, das vorhandene `ANTHROPIC_API_KEY`-Secret des Repositorys beizubehalten, falls bereits eines gesetzt ist

36* Andernfalls wählen Sie zwischen dem Erstellen eines langlebigen Tokens mit Ihrem Claude-Abonnement und dem Einfügen eines API-Schlüssels36* Andernfalls wählen Sie zwischen dem Erstellen eines langlebigen Tokens mit Ihrem Claude-Abonnement und dem Einfügen eines API-Schlüssels

37 37 

38Claude Code speichert die Anmeldedaten als Repository-Geheimnis, benannt `ANTHROPIC_API_KEY` für einen API-Schlüssel oder `CLAUDE_CODE_OAUTH_TOKEN` für ein Abonnement-Token.38Claude Code speichert die Anmeldedaten als Repository-Secret, mit dem Namen `ANTHROPIC_API_KEY` für einen API-Schlüssel oder `CLAUDE_CODE_OAUTH_TOKEN` für ein Abonnement-Token.

39 39 

40Claude Code pusht dann einen Branch mit den von Ihnen ausgewählten Workflow-Dateien, bereits so eingestellt, dass das Geheimnis verwendet wird, und öffnet GitHub in Ihrem Browser mit einem Pull Request, der bereit zum Erstellen ist. Erstellen und mergen Sie diesen Pull Request, und `@claude` funktioniert im Repository.40Claude Code pusht anschließend einen Branch mit den von Ihnen ausgewählten Workflow-Dateien, die bereits für die Verwendung dieses Secrets konfiguriert sind, und öffnet GitHub in Ihrem Browser mit einem Pull Request, der zum Erstellen bereit ist. Erstellen und mergen Sie diesen Pull Request, und `@claude` funktioniert im Repository.

41 41 

42Um das Setup auf halbem Weg zu stoppen, drücken Sie Esc. Ein bereits laufender Schritt wird abgeschlossen, und kein späterer Schritt wird gestartet. Die Abschlussmeldung listet auf, was bereits im Repository passiert ist, wie ein gepushter Branch oder ein gespeichertes Geheimnis.42Um die Einrichtung mittendrin abzubrechen, drücken Sie Esc. Ein bereits laufender Schritt wird abgeschlossen, und kein weiterer Schritt wird gestartet. Die abschließende Meldung listet auf, was bereits im Repository geschehen ist, etwa ein gepushter Branch oder ein gespeichertes Secret.

43 43 

44Wenn Sie den Review-Workflow auswählen, postet Claude jede Überprüfung auf dem Pull Request selbst, als Inline-Kommentar zu jedem gefundenen Problem oder als einen Zusammenfassungs-Kommentar, wenn keine gefunden werden. Claude überspringt einige Pull Requests, wie Entwürfe. Das [Review-Workflow-Beispiel](#run-a-skill) verwendet die gleiche Skill und listet sie auf. Vor v2.1.229 schrieb Claude seine Überprüfung nur in das Workflow-Run-Log.44Wenn Sie den Review-Workflow auswählen, veröffentlicht Claude jedes Review direkt im Pull Request, als Inline-Kommentar zu jedem gefundenen Problem oder als einen zusammenfassenden Kommentar, wenn keine Probleme gefunden werden. Claude überspringt einige Pull Requests, etwa Entwürfe. Das [Beispiel für den Review-Workflow](#run-a-skill) verwendet denselben Skill und listet diese auf. Vor v2.1.229 schrieb Claude sein Review nur in das Log des Workflow-Laufs.

45 45 

46Um einen Review-Workflow zu aktualisieren, den eine frühere Version generiert hat, führen Sie eines der folgenden Verfahren durch:46Um einen Review-Workflow zu aktualisieren, der von einer früheren Version erstellt wurde, gehen Sie auf eine der folgenden Arten vor:

47 47 

48* Führen Sie `/install-github-app` erneut aus. Wenn das Repository bereits eine `claude.yml` hat, wählen Sie **Workflow-Datei mit neuester Version aktualisieren**. Claude Code pusht frische Kopien der Workflow-Dateien zu einem neuen Branch und öffnet den Pull Request, genauso wie eine erste Installation.48* Führen Sie `/install-github-app` erneut aus. Wenn das Repository bereits eine `claude.yml` enthält, wählen Sie **Update workflow file with latest version**. Claude Code pusht neue Kopien der Workflow-Dateien in einen neuen Branch und öffnet den Pull Request, genau wie bei einer Erstinstallation.

49* Fügen Sie das `--comment`-Argument und die `claude_args`-Zeile aus dem [Review-Workflow-Beispiel](#run-a-skill) selbst zur eingecheckten Datei hinzu, was alle anderen Änderungen beibehält, die Sie daran vorgenommen haben.49* Fügen Sie das Argument `--comment` und die Zeile `claude_args` aus dem [Beispiel für den Review-Workflow](#run-a-skill) selbst in die eingecheckte Datei ein. Dadurch bleiben alle anderen Änderungen erhalten, die Sie daran vorgenommen haben.

50 50 

51Nach der Installation der GitHub App fragt Claude Code, ob Sie mit dem GitHub Actions-Setup fortfahren möchten. Wählen Sie **Jetzt überspringen**, um nur mit der installierten GitHub App zu stoppen. Führen Sie `/install-github-app` später erneut aus, um die Workflow- und Secret-Schritte abzuschließen.51Nach der Installation der GitHub App fragt Claude Code, ob mit der Einrichtung von GitHub Actions fortgefahren werden soll. Wählen Sie **Skip for now**, um mit nur installierter GitHub App aufzuhören. Führen Sie `/install-github-app` später erneut aus, um die Schritte für Workflow und Secret abzuschließen.

52 52 

53> [!NOTE]53> [!NOTE]

54>54>

55> * Wenn Sie die GitHub App installieren, gewähren Sie ihr mehrere Berechtigungen. Siehe [GitHub App-Berechtigungen](#github-app-permissions) für den vollständigen Satz55> * Wenn Sie die GitHub App installieren, erteilen Sie ihr mehrere Berechtigungen. Die vollständige Liste finden Sie unter [Berechtigungen der GitHub App](#github-app-permissions)

56> * Schnelles Setup funktioniert mit der Claude API und Claude-Abonnements. Wenn Sie Amazon Bedrock, Google Cloud's Agent Platform oder Microsoft Foundry verwenden, siehe [Claude Code GitHub Actions mit Cloud-Providern verwenden](https://code.claude.com/docs/de/github-actions-cloud-providers.md)56> * Die Schnelleinrichtung funktioniert mit der Claude API und Claude-Abonnements. Wenn Sie Amazon Bedrock, die Agent Platform von Google Cloud oder Microsoft Foundry verwenden, lesen Sie [Claude Code GitHub Actions mit Cloud-Anbietern verwenden](https://code.claude.com/docs/de/github-actions-cloud-providers.md)

57 57 

58### Manuelles Setup58### Manuelle Einrichtung

59 59 

60Um die Claude Code GitHub Action ohne Ausführung von `/install-github-app` zu konfigurieren, installieren Sie die App, fügen Sie ein Geheimnis hinzu und kopieren Sie selbst eine Workflow-Datei:60Um die Claude Code GitHub Action zu konfigurieren, ohne `/install-github-app` auszuführen, installieren Sie die App, fügen ein Secret hinzu und kopieren selbst eine Workflow-Datei:

61 61 

62**1. Installieren Sie die Claude GitHub App**62**1. Claude GitHub App installieren**

63 63 

64Installieren Sie die [Claude GitHub App](https://github.com/apps/claude) in Ihrem Repository. Die Claude Code GitHub Action basiert auf drei der App-Berechtigungen:64Installieren Sie die [Claude GitHub App](https://github.com/apps/claude) in Ihrem Repository. Die Claude Code GitHub Action ist auf drei Berechtigungen der App angewiesen:

65 65 

66* **Contents**: Lesen und Schreiben, damit Claude Repository-Dateien ändern kann66* **Contents**: Lesen und Schreiben, damit Claude Repository-Dateien ändern kann

67* **Issues**: Lesen und Schreiben, damit Claude auf Issues antworten kann67* **Issues**: Lesen und Schreiben, damit Claude auf Issues antworten kann

68* **Pull requests**: Lesen und Schreiben, damit Claude PRs erstellen und Änderungen pushen kann68* **Pull requests**: Lesen und Schreiben, damit Claude PRs erstellen und Änderungen pushen kann

69 69 

70Während der Installation gewähren Sie auch Berechtigungen, die andere Claude-Funktionen verwenden. Siehe [GitHub App-Berechtigungen](#github-app-permissions) für den vollständigen Satz.70Während der Installation erteilen Sie außerdem Berechtigungen, die von anderen Claude-Funktionen verwendet werden. Die vollständige Liste finden Sie unter [Berechtigungen der GitHub App](#github-app-permissions).

71 71 

72**2. Fügen Sie ein Authentifizierungsgeheimnis hinzu**72**2. Authentifizierungs-Secret hinzufügen**

73 73 

74Fügen Sie eines der folgenden Geheimnisse zu Ihrem Repository hinzu, je nachdem, wie Sie sich authentifizieren. Siehe Githubs Anleitung zum [Verwenden von Geheimnissen in GitHub Actions](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions).74Fügen Sie Ihrem Repository je nach Authentifizierungsmethode eines der folgenden Secrets hinzu. Siehe die GitHub-Anleitung zur [Verwendung von Secrets in GitHub Actions](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions).

75 75 

76* `ANTHROPIC_API_KEY`: ein Claude API-Schlüssel aus der [Claude Console](https://platform.claude.com)76* `ANTHROPIC_API_KEY`: ein Claude-API-Schlüssel aus der [Claude Console](https://platform.claude.com)

77* `CLAUDE_CODE_OAUTH_TOKEN`: ein OAuth-Token, das sich mit Ihrem Claude-Abonnement authentifiziert, verfügbar in Pro-, Max-, Team- und Enterprise-Plänen. Generieren Sie einen, indem Sie lokal `claude setup-token` ausführen. Siehe [Generieren Sie ein langlebiges Token](https://code.claude.com/docs/de/authentication.md#generate-a-long-lived-token)77* `CLAUDE_CODE_OAUTH_TOKEN`: ein OAuth-Token, das sich mit Ihrem Claude-Abonnement authentifiziert, verfügbar in den Plänen Pro, Max, Team und Enterprise. Erzeugen Sie eines, indem Sie `claude setup-token` lokal ausführen. Siehe [Langlebiges Token erzeugen](https://code.claude.com/docs/de/authentication.md#generate-a-long-lived-token)

78 78 

79Übergeben Sie in Workflow-Dateien das Geheimnis an die entsprechende Eingabe: `anthropic_api_key` für einen API-Schlüssel oder `claude_code_oauth_token` für ein OAuth-Token.79Übergeben Sie das Secret in Workflow-Dateien an die passende Eingabe: `anthropic_api_key` für einen API-Schlüssel oder `claude_code_oauth_token` für ein OAuth-Token.

80 80 

81**3. Kopieren Sie die Workflow-Datei**81**3. Workflow-Datei kopieren**

82 82 

83Kopieren Sie [examples/claude.yml](https://github.com/anthropics/claude-code-action/blob/main/examples/claude.yml) in das Verzeichnis `.github/workflows/` Ihres Repositories. Die Datei ist ein funktionierender Workflow, nicht nur ein Beispiel. Wie eingecheckt, antwortet Claude, wenn jemand `@claude` in einem Issue oder Pull Request erwähnt, authentifiziert mit dem `ANTHROPIC_API_KEY`-Geheimnis. Wenn Sie stattdessen `CLAUDE_CODE_OAUTH_TOKEN` hinzugefügt haben, ändern Sie die `anthropic_api_key`-Zeile des Workflows zu `claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}`.83Kopieren Sie [examples/claude.yml](https://github.com/anthropics/claude-code-action/blob/main/examples/claude.yml) in das Verzeichnis `.github/workflows/` Ihres Repositorys. Die Datei ist ein funktionsfähiger Workflow, nicht nur ein Beispiel. Im eingecheckten Zustand antwortet Claude, sobald jemand `@claude` in einem Issue oder Pull Request erwähnt, und authentifiziert sich dabei mit dem Secret `ANTHROPIC_API_KEY`. Wenn Sie stattdessen `CLAUDE_CODE_OAUTH_TOKEN` hinzugefügt haben, ändern Sie die Zeile `anthropic_api_key` des Workflows in `claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}`.

84 84 

85> [!TIP]85> [!TIP]

86>86>

87> Nach dem Setup testen Sie die Claude Code GitHub Action, indem Sie `@claude` in einem Issue- oder PR-Kommentar markieren.87> Testen Sie die Claude Code GitHub Action nach der Einrichtung, indem Sie `@claude` in einem Issue- oder PR-Kommentar erwähnen.

88 88 

89### Setup für eine Organisation89### Einrichtung für eine Organisation

90 90 

91Mit schnellem Setup oder manuellem Setup konfigurieren Sie jeweils ein Repository. Um die Claude Code GitHub Action in einer Organisation auszurollen:91Mit der Schnelleinrichtung oder der manuellen Einrichtung konfigurieren Sie jeweils ein Repository. So führen Sie die Claude Code GitHub Action in einer ganzen Organisation ein:

92 92 

93* Installieren Sie die [Claude GitHub App](https://github.com/apps/claude) einmal auf Organisationsebene und wählen Sie alle Repositories oder eine ausgewählte Liste93* Installieren Sie die [Claude GitHub App](https://github.com/apps/claude) einmalig auf Organisationsebene und wählen Sie alle Repositorys oder eine ausgewählte Liste

94* Speichern Sie das Authentifizierungsgeheimnis als Geheimnis auf Organisationsebene für Actions, damit jedes Repository nicht seine eigene Kopie benötigt94* Speichern Sie das Authentifizierungs-Secret als Actions-Secret auf Organisationsebene, damit nicht jedes Repository eine eigene Kopie benötigt

95* Fügen Sie die Workflow-Datei zu jedem Repository hinzu, das die Claude Code GitHub Action ausführen soll, oder definieren Sie den Job einmal als [wiederverwendbaren Workflow](https://docs.github.com/en/actions/using-workflows/reusing-workflows), den jedes Repository aufruft95* Fügen Sie die Workflow-Datei jedem Repository hinzu, das die Claude Code GitHub Action ausführen soll, oder definieren Sie den Job einmalig als [wiederverwendbaren Workflow](https://docs.github.com/en/actions/using-workflows/reusing-workflows), den jedes Repository aufruft

96 96 

97Für ein Geheimnis, das über Repositories hinweg geteilt wird, authentifizieren Sie sich mit einem API-Schlüssel aus der [Claude Console](https://platform.claude.com) statt mit einem OAuth-Token, da ein OAuth-Token an das Abonnement der Person gebunden ist, die `claude setup-token` ausgeführt hat.97Für ein über mehrere Repositorys geteiltes Secret sollten Sie sich mit einem API-Schlüssel aus der [Claude Console](https://platform.claude.com) statt mit einem OAuth-Token authentifizieren, da ein OAuth-Token an das Abonnement der Person gebunden ist, die `claude setup-token` ausgeführt hat.

98 98 

99Um ein langlebiges Geheimnis ganz zu vermeiden, authentifizieren Sie sich durch Workload Identity Federation, wobei die Claude Code GitHub Action das GitHub OpenID Connect (OIDC) Token des Workflows gegen Claude API-Zugriff durch ein Claude Console-Dienstkonto austauscht. Legen Sie diese Eingaben fest:99Um das Speichern eines langlebigen Secrets vollständig zu vermeiden, authentifizieren Sie sich über Workload Identity Federation. Dabei tauscht die Claude Code GitHub Action das GitHub-OpenID-Connect-Token (OIDC) des Workflows über ein Dienstkonto der Claude Console gegen Zugriff auf die Claude API ein. Setzen Sie diese Eingaben:

100 100 

101* `anthropic_federation_rule_id`: die Verbund-Regel-ID, `fdrl_...`101* `anthropic_federation_rule_id`: die ID der Federation-Regel, `fdrl_...`

102* `anthropic_organization_id`: Ihre Anthropic-Organisations-ID102* `anthropic_organization_id`: die ID Ihrer Anthropic-Organisation

103* `anthropic_service_account_id`: die Dienstkonto-ID, `svac_...`. Optional, da die Verbund-Regel, die Sie in der Console erstellen, bereits ein Dienstkonto anvisiert103* `anthropic_service_account_id`: die ID des Dienstkontos, `svac_...`. Optional, da die Federation-Regel, die Sie in der Console erstellen, bereits auf ein Dienstkonto verweist

104* `anthropic_workspace_id`: die Workspace-ID, `wrkspc_...`. Optional, wenn die Verbund-Regel ein einzelnes Workspace anvisiert104* `anthropic_workspace_id`: die Workspace-ID, `wrkspc_...`. Optional, wenn die Federation-Regel auf einen einzelnen Workspace verweist

105 105 

106Gewähren Sie dem Workflow die Berechtigung `id-token: write`, die die Claude Code GitHub Action für den Verbund-Austausch benötigt, auch wenn Sie Ihr eigenes `github_token` übergeben. Siehe die [Claude Code GitHub Action-Setup-Anleitung](https://github.com/anthropics/claude-code-action/blob/main/docs/setup.md) für die Console-seitige Konfiguration.106Erteilen Sie dem Workflow die Berechtigung `id-token: write`, die die Claude Code GitHub Action für den Federation-Austausch benötigt, selbst wenn Sie Ihr eigenes `github_token` übergeben. Die Konfiguration auf Seiten der Console finden Sie in der [Einrichtungsanleitung der Claude Code GitHub Action](https://github.com/anthropics/claude-code-action/blob/main/docs/setup.md).

107 107 

108Für Fragen zur Datenbehandlung und -aufbewahrung in einer Sicherheitsüberprüfung siehe [Datennutzung](https://code.claude.com/docs/de/data-usage.md) und [Sicherheit](https://code.claude.com/docs/de/security.md).108Für Fragen zur Datenverarbeitung und -aufbewahrung im Rahmen einer Sicherheitsprüfung siehe [Datennutzung](https://code.claude.com/docs/de/data-usage.md) und [Sicherheit](https://code.claude.com/docs/de/security.md).

109 109 

110### Deinstallieren110### Deinstallation

111 111 

112Um die Claude Code GitHub Action zu entfernen, machen Sie jeden Teil des Setups rückgängig, der auf Ihre Installation zutrifft:112Um die Claude Code GitHub Action zu entfernen, machen Sie jeden Teil der Einrichtung rückgängig, der auf Ihre Installation zutrifft:

113 113 

114* **Workflow-Dateien**: Löschen Sie die Workflows, die `anthropics/claude-code-action` aus `.github/workflows/` verwenden. Wenn Sie schnelles Setup verwendet haben, suchen Sie nach `claude.yml` und, wenn Sie den Review-Workflow ausgewählt haben, `claude-code-review.yml`. Mit den gelöschten Workflows wird die Claude Code GitHub Action nicht mehr ausgeführt114* **Workflow-Dateien**: Löschen Sie die Workflows, die `anthropics/claude-code-action` verwenden, aus `.github/workflows/`. Wenn Sie die Schnelleinrichtung verwendet haben, suchen Sie nach `claude.yml` und, falls Sie den Review-Workflow ausgewählt haben, nach `claude-code-review.yml`. Sobald die Workflows gelöscht sind, wird die Claude Code GitHub Action nicht mehr ausgeführt

115* **Geheimnisse**: Löschen Sie das `ANTHROPIC_API_KEY`- oder `CLAUDE_CODE_OAUTH_TOKEN`-Geheimnis aus dem Repository und aus Geheimnissen auf Organisationsebene für Actions, wenn Sie es [über Repositories hinweg geteilt haben](#set-up-for-an-organization). Wenn Sie ein Geheimnis löschen, bleibt die Anmeldedaten, die es hielt, gültig. Um einen API-Schlüssel vollständig zu deaktivieren, löschen Sie auch den Schlüssel in der [Claude Console](https://platform.claude.com)115* **Secrets**: Löschen Sie das Secret `ANTHROPIC_API_KEY` oder `CLAUDE_CODE_OAUTH_TOKEN` aus dem Repository und aus den Actions-Secrets auf Organisationsebene, falls Sie es [über mehrere Repositorys geteilt](#set-up-for-an-organization) haben. Wenn Sie ein Secret löschen, bleiben die darin gespeicherten Anmeldedaten gültig. Um einen API-Schlüssel vollständig außer Betrieb zu nehmen, löschen Sie den Schlüssel zusätzlich in der [Claude Console](https://platform.claude.com)

116* **GitHub App**: Deinstallieren Sie die Claude GitHub App in Ihren Repository- oder Organisationseinstellungen unter GitHub Apps, aber nur, wenn Sie sie nicht für eine andere Claude-Funktion verwenden, wie Code Review oder Web-Auto-Fix116* **GitHub App**: Deinstallieren Sie die Claude GitHub App in den Einstellungen Ihres Repositorys oder Ihrer Organisation unter GitHub Apps, jedoch nur, wenn Sie sie nicht für eine andere Claude-Funktion wie Code Review oder die automatische Korrektur im Web verwenden

117 117 

118Wenn Sie einen [Cloud-Provider](https://code.claude.com/docs/de/github-actions-cloud-providers.md) konfiguriert haben, löschen Sie auch die Provider-Geheimnisse, wie `AWS_ROLE_TO_ASSUME`, die `GCP_*`-Geheimnisse oder die `AZURE_*`-Geheimnisse, und deinstallieren Sie die benutzerdefinierte GitHub App zusammen mit ihren `APP_ID`- und `APP_PRIVATE_KEY`-Geheimnissen.118Wenn Sie einen [Cloud-Anbieter](https://code.claude.com/docs/de/github-actions-cloud-providers.md) konfiguriert haben, löschen Sie außerdem die Secrets des Anbieters, etwa `AWS_ROLE_TO_ASSUME`, die `GCP_*`-Secrets oder die `AZURE_*`-Secrets, und deinstallieren Sie die benutzerdefinierte GitHub App zusammen mit ihren Secrets `APP_ID` und `APP_PRIVATE_KEY`.

119 119 

120### GitHub App-Berechtigungen120### Berechtigungen der GitHub App

121 121 

122Die [Claude GitHub App](https://github.com/apps/claude) wird von jeder Claude-Funktion geteilt, die sich mit GitHub integriert, einschließlich der Claude Code GitHub Action, [Code Review](https://code.claude.com/docs/de/code-review.md) und [Auto-Fix für Pull Requests](https://code.claude.com/docs/de/claude-code-on-the-web.md#auto-fix-pull-requests) in Cloud-Sitzungen. Eine GitHub App hat einen einzelnen Berechtigungssatz, der alle ihre Funktionen abdeckt, daher enthält der Satz einige Berechtigungen, die die Claude Code GitHub Action nicht verwendet.122Die [Claude GitHub App](https://github.com/apps/claude) wird von allen Claude-Funktionen gemeinsam genutzt, die mit GitHub integriert sind, darunter die Claude Code GitHub Action, [Code Review](https://code.claude.com/docs/de/code-review.md) und die [automatische Korrektur für Pull Requests](https://code.claude.com/docs/de/claude-code-on-the-web.md#auto-fix-pull-requests) in Cloud-Sitzungen. Eine GitHub App hat einen einzigen Berechtigungssatz, der alle ihre Funktionen abdeckt. Daher enthält der Satz einige Berechtigungen, die die Claude Code GitHub Action nicht verwendet.

123 123 

124Wenn Sie die App installieren, gewähren Sie die folgenden Berechtigungen:124Wenn Sie die App installieren, erteilen Sie die folgenden Berechtigungen:

125 125 

126| Berechtigung | Zugriff |126| Berechtigung | Zugriff |

127| - | - |127| - | - |


139| Statuses | Lesen |139| Statuses | Lesen |

140| Workflows | Lesen und Schreiben |140| Workflows | Lesen und Schreiben |

141 141 

142Der Berechtigungssatz kann sich auch vor den Funktionen ändern, die ihn verwenden. Wenn die App eine Berechtigung anfordert, die sie vorher nicht hatte, fordert GitHub den Kontoinhaber auf, sie zu genehmigen, einen Organisationsinhaber für eine Organisationsinstallation, und die Installation behält ihre alten Berechtigungen, bis sie dies tun. Wenn beispielsweise der Actions-Zugriff von Lesen zu Schreiben wechselt, kann die App Workflows erneut ausführen, anstatt nur Läufe und Logs anzuzeigen, daher fragt GitHub den Inhaber, die Änderung zu genehmigen.142Der Berechtigungssatz kann sich auch ändern, bevor die Funktionen, die ihn nutzen, verfügbar sind. Wenn die App eine Berechtigung anfordert, die sie zuvor nicht hatte, fordert GitHub den Kontoinhaber zur Bestätigung auf, bei einer Installation für eine Organisation einen Organisationsinhaber, und die Installation behält ihre bisherigen Berechtigungen, bis diese Bestätigung erfolgt. Wenn sich beispielsweise der Actions-Zugriff von Lesen auf Schreiben ändert, kann die App Workflows erneut ausführen, statt nur Läufe und Logs anzuzeigen. Daher bittet GitHub den Inhaber, die Änderung zu bestätigen.

143 143 

144Wenn Sie die App installieren, akzeptieren Sie ihren vollständigen Berechtigungssatz. GitHub lässt Sie nicht, eine Teilmenge zu akzeptieren. Wenn Ihre Organisation nur die Berechtigungen benötigt, die die Claude Code GitHub Action verwendet, erstellen Sie eine benutzerdefinierte GitHub App mit Contents, Issues und Pull Requests statt, indem Sie die [Claude Code GitHub Action-Setup-Anleitung](https://github.com/anthropics/claude-code-action/blob/main/docs/setup.md) befolgen. Eine benutzerdefinierte App deckt nur die Claude Code GitHub Action ab. Code Review und Web-Auto-Fix erfordern immer noch die offizielle App.144Wenn Sie die App installieren, akzeptieren Sie ihren vollständigen Berechtigungssatz. GitHub erlaubt es nicht, nur einen Teil davon zu akzeptieren. Wenn Ihre Organisation nur die Berechtigungen zulassen möchte, die die Claude Code GitHub Action verwendet, erstellen Sie stattdessen eine benutzerdefinierte GitHub App mit Contents, Issues und Pull requests und folgen Sie dabei der [Einrichtungsanleitung der Claude Code GitHub Action](https://github.com/anthropics/claude-code-action/blob/main/docs/setup.md). Eine benutzerdefinierte App deckt nur die Claude Code GitHub Action ab. Code Review und die automatische Korrektur im Web erfordern weiterhin die offizielle App.

145 145 

146Für Details, wie die Claude Code GitHub Action einschränkt, was Claude mit diesen Berechtigungen tun kann, siehe die [Sicherheitsdokumentation](https://github.com/anthropics/claude-code-action/blob/main/docs/security.md).146Details dazu, wie die Claude Code GitHub Action einschränkt, was Claude mit diesen Berechtigungen tun kann, finden Sie in der [Sicherheitsdokumentation](https://github.com/anthropics/claude-code-action/blob/main/docs/security.md).

147 147 

148## Interaktive und Automatisierungsmodi148## Interaktive und Automatisierungsmodi

149 149 


241 - uses: anthropics/claude-code-action@v1241 - uses: anthropics/claude-code-action@v1

242 with:242 with:

243 anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}243 anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}

244 plugin_marketplaces: "https://github.com/anthropics/claude-code.git"244 plugin_marketplaces: "https://github.com/anthropics/claude-plugins-official.git"

245 plugins: "code-review@claude-code-plugins"245 plugins: "code-review@claude-plugins-official"

246 prompt: "/code-review:code-review --comment ${{ github.repository }}/pull/${{ github.event.pull_request.number }}"246 prompt: "/code-review:code-review --comment ${{ github.repository }}/pull/${{ github.event.pull_request.number }}"

247 claude_args: '--allowedTools "mcp__github_inline_comment__create_inline_comment"'247 claude_args: '--allowedTools "mcp__github_inline_comment__create_inline_comment"'

248```248```

Details

221 221 

222Wenn Reviews oder von Anthropic gehostete Cloud-Sitzungen zeitüberschritten werden, ist Ihre GHES-Instanz möglicherweise nicht von der Anthropic-Infrastruktur erreichbar. Bestätigen Sie, dass Ihre Firewall eingehende Verbindungen von Anthropics [ausgehenden IP-Adressen](https://platform.claude.com/docs/en/api/ip-addresses#outbound-ip-addresses) zulässt. Sitzungen in einer [selbstgehosteten Umgebung](https://code.claude.com/docs/de/self-hosted-environments) erreichen GHES von innerhalb Ihres Netzwerks, überprüfen Sie daher für diese den eigenen Netzwerkpfad des Runners stattdessen. Für die Repository-Auswahl und andere gehostete Pre-Session-Flows siehe [Netzwerkanforderungen](#network-requirements).222Wenn Reviews oder von Anthropic gehostete Cloud-Sitzungen zeitüberschritten werden, ist Ihre GHES-Instanz möglicherweise nicht von der Anthropic-Infrastruktur erreichbar. Bestätigen Sie, dass Ihre Firewall eingehende Verbindungen von Anthropics [ausgehenden IP-Adressen](https://platform.claude.com/docs/en/api/ip-addresses#outbound-ip-addresses) zulässt. Sitzungen in einer [selbstgehosteten Umgebung](https://code.claude.com/docs/de/self-hosted-environments) erreichen GHES von innerhalb Ihres Netzwerks, überprüfen Sie daher für diese den eigenen Netzwerkpfad des Runners stattdessen. Für die Repository-Auswahl und andere gehostete Pre-Session-Flows siehe [Netzwerkanforderungen](#network-requirements).

223 223 

224### Verbindungstest erfolgreich, aber ein zweiter Test schlägt fehl

225 

226Der zweite Test verbindet sich auf dieselbe Weise mit Ihrer GHES-Instanz wie von Anthropic gehostete Cloud-Sitzungen. Suchen Sie Ihre Meldung, um zu erfahren, ob Sie Ihre Firewall überprüfen oder es erneut versuchen sollten:

227 

228* **`Connection test passed, but a second test failed.`**: Wenn sich Ihre Instanz hinter einer Firewall befindet, lassen Sie alle [ausgehenden IP-Adressen](https://platform.claude.com/docs/en/api/ip-addresses#outbound-ip-addresses) von Anthropic zu, da ein Verbindungstest auch dann erfolgreich sein kann, wenn Ihre Firewall einige davon blockiert. Sie können es auch in einigen Minuten erneut versuchen.

229* **`Connection test passed, but a second test could not run.`**: Versuchen Sie es in einigen Minuten erneut.

230 

231Um erneut zu testen, öffnen Sie das Menü **More options** der Verbindung unter [**Organization settings > Git providers**](https://claude.ai/admin-settings/source-control#github-enterprise) und wählen Sie **Test connection** aus.

232 

224### Sitzungsstart schlägt mit `Unable to get organization UUID` fehl233### Sitzungsstart schlägt mit `Unable to get organization UUID` fehl

225 234 

226Claude Code konnte keine claude.ai-Organisation aus Ihren Anmeldedaten lesen. Melden Sie sich mit `/login` mit einem Konto in Ihrer Team- oder Enterprise-Organisation an, da die GitHub Enterprise Server-Unterstützung auf diese Pläne beschränkt ist. Siehe [Unable to get organization UUID](https://code.claude.com/docs/de/claude-code-on-the-web.md#unable-to-get-organization-uuid) für die Ursachen und die anderen Meldungen, die dieser Zustand erzeugt.235Claude Code konnte keine claude.ai-Organisation aus Ihren Anmeldedaten lesen. Melden Sie sich mit `/login` mit einem Konto in Ihrer Team- oder Enterprise-Organisation an, da die GitHub Enterprise Server-Unterstützung auf diese Pläne beschränkt ist. Siehe [Unable to get organization UUID](https://code.claude.com/docs/de/claude-code-on-the-web.md#unable-to-get-organization-uuid) für die Ursachen und die anderen Meldungen, die dieser Zustand erzeugt.

hooks-guide.md +74 −74

Details

75 75 

76## Was Sie automatisieren können76## Was Sie automatisieren können

77 77 

78Hooks ermöglichen es Ihnen, Code an Schlüsselpunkten im Lebenszyklus von Claude Code auszuführen: Dateien nach Bearbeitungen formatieren, Befehle vor der Ausführung blockieren, Benachrichtigungen senden, wenn Claude Eingaben benötigt, Kontext beim Sitzungsstart injizieren und vieles mehr. Für die vollständige Liste der Hook-Events siehe die [Hooks-Referenz](https://code.claude.com/docs/de/hooks.md#hook-lifecycle).78Mit Hooks können Sie an wichtigen Punkten im Lebenszyklus von Claude Code Code ausführen: Dateien nach Bearbeitungen formatieren, Befehle vor ihrer Ausführung blockieren, Benachrichtigungen senden, wenn Claude eine Eingabe benötigt, Kontext beim Sitzungsstart einfügen und mehr. Die vollständige Liste der Hook-Events finden Sie in der [Hooks-Referenz](https://code.claude.com/docs/de/hooks.md#hook-lifecycle).

79 79 

80Jedes Beispiel enthält einen einsatzbereiten Konfigurationsblock, den Sie einer [Einstellungsdatei](#configure-hook-location) hinzufügen.80Jedes Beispiel enthält einen sofort einsetzbaren Konfigurationsblock, den Sie zu einer [Einstellungsdatei](#configure-hook-location) hinzufügen.

81 81 

82Ein Produktionsbeispiel von Hooks, die eine separate Modellüberprüfung ausführen und Erkenntnisse zurück in die Sitzung einspeisen, finden Sie unter [wie das `security-guidance`-Plugin mit Claude Code integriert wird](https://code.claude.com/docs/de/security-guidance#how-the-plugin-integrates-with-claude-code).82Ein Produktionsbeispiel für Hooks, die eine separate Modellprüfung ausführen und die Ergebnisse in die Sitzung zurückspielen, finden Sie unter [Wie sich das Plugin `security-guidance` in Claude Code integriert](https://code.claude.com/docs/de/security-guidance#how-the-plugin-integrates-with-claude-code).

83 83 

84### Benachrichtigung erhalten, wenn Claude Eingaben benötigt84### Benachrichtigung erhalten, wenn Claude eine Eingabe benötigt

85 85 

86Erhalten 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.86Erhalten Sie eine Desktop-Benachrichtigung, sobald Claude die Arbeit beendet hat und Ihre Eingabe benötigt, damit Sie sich anderen Aufgaben widmen können, ohne das Terminal im Auge behalten zu müssen.

87 87 

88Dieser Hook verwendet das `Notification`-Event, das Claude Code auslöst, wenn Claude auf Eingaben oder Berechtigungen wartet. Siehe [wann jeder Benachrichtigungstyp ausgelöst wird](https://code.claude.com/docs/de/hooks.md#notification) für den genauen Zeitpunkt.88Dieser Hook verwendet das Event `Notification`, das Claude Code auslöst, wenn Claude auf eine Eingabe oder eine Berechtigung wartet. Den genauen Zeitpunkt finden Sie unter [Wann jeder Benachrichtigungstyp ausgelöst wird](https://code.claude.com/docs/de/hooks.md#notification).

89 89 

90Jede Registerkarte unten verwendet den nativen Benachrichtigungsbefehl der Plattform. Fügen Sie dies zu `~/.claude/settings.json` hinzu:90Jeder der folgenden Tabs verwendet den nativen Benachrichtigungsbefehl der jeweiligen Plattform. Fügen Sie Folgendes zu `~/.claude/settings.json` hinzu:

91 91 

92**macOS**92**macOS**

93 93 


109}109}

110```110```

111 111 

112> **Wenn keine Benachrichtigung angezeigt wird**112> **Wenn keine Benachrichtigung erscheint**

113>113>

114> `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.114> `osascript` leitet Benachrichtigungen über die integrierte App Skripteditor weiter. Wenn der Skripteditor keine Berechtigung für Benachrichtigungen hat, schlägt der Befehl stillschweigend fehl, und macOS fordert Sie nicht auf, diese Berechtigung zu erteilen.

115>115>

116> Führen Sie dies einmal im Terminal aus, um Script Editor in Ihren Benachrichtigungseinstellungen angezeigt zu bekommen:116> Führen Sie dies einmal im Terminal aus, damit der Skripteditor in Ihren Benachrichtigungseinstellungen erscheint:

117>117>

118> ```bash theme={null}118> ```bash theme={null}

119> osascript -e 'display notification "test"'119> osascript -e 'display notification "test"'

120> ```120> ```

121>121>

122> Es wird noch nichts angezeigt. Öffnen Sie **Systemeinstellungen > Benachrichtigungen**, suchen Sie **Script Editor** in der Liste und aktivieren Sie **Benachrichtigungen zulassen**. Führen Sie den Befehl erneut aus, um zu bestätigen, dass die Test-Benachrichtigung angezeigt wird.122> Es wird noch nichts angezeigt. Öffnen Sie **Systemeinstellungen > Mitteilungen**, suchen Sie **Skripteditor** in der Liste und aktivieren Sie **Mitteilungen erlauben**. Führen Sie den Befehl erneut aus, um zu bestätigen, dass die Testbenachrichtigung erscheint.

123 123 

124**Linux**124**Linux**

125 125 


141}141}

142```142```

143 143 

144> **Wenn keine Benachrichtigung angezeigt wird**144> **Wenn keine Benachrichtigung erscheint**

145>145>

146> `notify-send` benötigt einen Desktop-Benachrichtigungsdaemon, den Headless-Server, SSH-Sitzungen und die meisten Container nicht haben. Testen Sie den Befehl zunächst direkt:146> `notify-send` benötigt einen Desktop-Benachrichtigungsdaemon, den Headless-Server, SSH-Sitzungen und die meisten Container nicht haben. Testen Sie den Befehl zuerst direkt:

147>147>

148> ```bash theme={null}148> ```bash theme={null}

149> notify-send 'Claude Code' 'test'149> notify-send 'Claude Code' 'test'

150> ```150> ```

151>151>

152> Wenn der Befehl nicht gefunden wird, installieren Sie das Paket `libnotify-bin` auf Debian und Ubuntu oder das Äquivalent Ihrer Distribution.152> Wenn der Befehl nicht gefunden wird, installieren Sie unter Debian und Ubuntu das Paket `libnotify-bin` oder das Äquivalent Ihrer Distribution.

153 153 

154**Windows (PowerShell)**154**Windows (PowerShell)**

155 155 


171}171}

172```172```

173 173 

174> **Wenn kein Dialog angezeigt wird**174> **Wenn kein Dialog erscheint**

175>175>

176> 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.176> Dieser Befehl öffnet ein Dialogfeld statt einer Benachrichtigung in der Ecke Ihres Bildschirms, sodass sich der Dialog hinter Ihrem Terminalfenster öffnen kann. Testen Sie den Befehl zuerst direkt in PowerShell.

177>177>

178> Wenn Sie Claude Code in WSL ausführen, muss `powershell.exe` über Windows-Interop auf Ihrem `PATH` verfügbar sein.178> Wenn Sie Claude Code in WSL ausführen, muss `powershell.exe` über die Windows-Interoperabilität in Ihrem `PATH` verfügbar sein.

179 179 

180Der leere `matcher` wird bei allen Benachrichtigungstypen ausgelöst. Um nur bei bestimmten Events ausgelöst zu werden, setzen Sie ihn auf einen dieser Werte:180Der leere `matcher` wird bei allen Benachrichtigungstypen ausgelöst. Um nur bei bestimmten Events auszulösen, setzen Sie ihn auf einen dieser Werte:

181 181 

182| Matcher | Wird ausgelöst, wenn |182| Matcher | Wird ausgelöst, wenn |

183| :- | :- |183| :- | :- |

184| `permission_prompt` | Claude benötigt Ihre Genehmigung für einen Tool-Einsatz oder eine Sandbox-Befehl-[Netzwerkanfrage](https://code.claude.com/docs/de/sandboxing.md#network-isolation), und die Aufforderung hat etwa sechs Sekunden gewartet |184| `permission_prompt` | Claude Ihre Genehmigung für eine Tool-Nutzung oder die [Netzwerkanfrage](https://code.claude.com/docs/de/sandboxing.md#network-isolation) eines Befehls in der Sandbox benötigt und die Abfrage etwa sechs Sekunden gewartet hat |

185| `idle_prompt` | Claude ist vor etwa 60 Sekunden fertig und Sie haben seitdem nicht getippt |185| `idle_prompt` | Claude vor etwa 60 Sekunden mit der Antwort fertig war und Sie seitdem nichts eingegeben haben |

186| `auth_success` | Authentifizierung ist abgeschlossen |186| `auth_success` | Die Authentifizierung abgeschlossen ist |

187| `elicitation_dialog` | Ein MCP-Server öffnet ein Elicitation-Formular und Sie haben etwa sechs Sekunden nicht getippt |187| `elicitation_dialog` | Ein MCP-Server ein Elicitation-Formular öffnet und Sie etwa sechs Sekunden lang nichts eingegeben haben |

188| `elicitation_url_dialog` | Ein MCP-Server fordert Sie auf, eine Browser-URL zu öffnen und Sie haben etwa sechs Sekunden nicht getippt |188| `elicitation_url_dialog` | Ein MCP-Server Sie auffordert, eine URL im Browser zu öffnen, und Sie etwa sechs Sekunden lang nichts eingegeben haben |

189| `elicitation_complete` | Ein MCP-Server meldet, dass eine [URL-Modus-Elicitation](https://code.claude.com/docs/de/hooks.md#elicitation-input) abgeschlossen ist |189| `elicitation_complete` | Ein MCP-Server meldet, dass eine [Elicitation im URL-Modus](https://code.claude.com/docs/de/hooks.md#elicitation-input) abgeschlossen ist |

190| `elicitation_response` | Eine MCP-Elicitation-Antwort wird an den Server zurückgesendet |190| `elicitation_response` | Eine MCP-Elicitation-Antwort an den Server zurückgesendet wird |

191| `agent_needs_input` | Eine Hintergrund-Sitzung wartet auf Ihre Eingabe, während [Agent-Ansicht](https://code.claude.com/docs/de/agent-view.md) offen ist. Wird auch ausgelöst, wenn eine Terminal-Sitzung Ihnen eine [Agent-Team-Teamkollegen-Terminal-Setup-Frage](https://code.claude.com/docs/de/agent-teams.md#choose-a-display-mode) oder eine Benachrichtigung des Auto-Modus über [Klassifizierer-Anfrageguthaben](https://code.claude.com/docs/de/auto-mode-classifier-billing.md) anzeigt und Sie etwa sechs Sekunden nicht getippt haben |191| `agent_needs_input` | Eine Hintergrundsitzung beginnt, auf Ihre Eingabe zu warten, während die [Agentenansicht](https://code.claude.com/docs/de/agent-view.md) geöffnet ist. Wird auch ausgelöst, wenn eine Terminalsitzung Ihnen die [Frage eines Agent-Team-Mitglieds zur Terminal-Einrichtung](https://code.claude.com/docs/de/agent-teams.md#choose-a-display-mode) oder den Hinweis des Auto-Modus zu [Gebühren für Klassifikator-Anfragen](https://code.claude.com/docs/de/auto-mode-classifier-billing.md) anzeigt und Sie etwa sechs Sekunden lang nichts eingegeben haben |

192| `agent_completed` | Eine Hintergrund-Sitzung wird beendet oder schlägt fehl. Wird nur ausgelöst, während [Agent-Ansicht](https://code.claude.com/docs/de/agent-view.md) offen ist |192| `agent_completed` | Eine Hintergrundsitzung abgeschlossen wird oder fehlschlägt. Wird nur ausgelöst, während die [Agentenansicht](https://code.claude.com/docs/de/agent-view.md) geöffnet ist |

193| `quota_auto_resume_fired` | Claude Code setzt Ihre Aufgabe fort, nachdem ein claude.ai-Nutzungslimit sie unterbrochen hat: beim Zurücksetzen oder früher, wenn etwas, das Sie in Claude Code während des Wartens tun, wie das Hinzufügen von Nutzungsguthaben, das Upgrade Ihres Plans oder das Wechseln von Modellen, die Nutzung wieder verfügbar macht, mit der [Modelleinstellungsausnahme](https://code.claude.com/docs/de/interactive-mode.md#wait-for-a-usage-limit-to-reset) |193| `quota_auto_resume_fired` | Claude Code Ihre Aufgabe fortsetzt, nachdem ein claude.ai-Nutzungslimit sie pausiert hat: beim Zurücksetzen oder früher, wenn etwas, das Sie während der Wartezeit in Claude Code tun, etwa Nutzungsguthaben hinzufügen, Ihren Plan upgraden oder das Modell wechseln, die Nutzung wieder verfügbar macht, mit der [Ausnahme für die Modelleinstellung](https://code.claude.com/docs/de/interactive-mode.md#wait-for-a-usage-limit-to-reset) |

194| `quota_auto_resume_stale` | Ein claude.ai-Nutzungslimit wurde zurückgesetzt, während Ihr Computer länger als etwa 30 Minuten geschlafen hat. Claude Code wartet darauf, dass Sie `Enter` drücken, anstatt fortzufahren. Nach einem kürzeren Schlaf wird fortgesetzt und stattdessen `quota_auto_resume_fired` ausgelöst |194| `quota_auto_resume_stale` | Ein claude.ai-Nutzungslimit zurückgesetzt wurde, während Ihr Computer länger als etwa 30 Minuten im Ruhezustand war. Claude Code wartet, bis Sie `Enter` drücken, statt fortzufahren. Nach einem kürzeren Ruhezustand fährt es fort und löst stattdessen `quota_auto_resume_fired` aus |

195| `quota_auto_resume_disabled` | Claude Code beendet sein Warten auf ein claude.ai-Nutzungslimit, ohne Ihre Aufgabe fortzusetzen: [`autoContinueAtUsageLimit`](https://code.claude.com/docs/de/settings-reference#autocontinueatusagelimit) ist ausgeschaltet oder das Zurücksetzen hat sich während eines Wartens, das Claude Code selbst gestartet hat, um mehr als 24 Stunden verschoben, die fortgesetzte Aufgabe traf weiterhin das Limit, oder die Fortsetzung wurde blockiert, bevor sie das Modell erreichte. Wird nicht ausgelöst, wenn Sie `Esc` oder `Ctrl+C` drücken oder **Nicht automatisch fortfahren** wählen |195| `quota_auto_resume_disabled` | Claude Code das Warten auf ein claude.ai-Nutzungslimit beendet, ohne Ihre Aufgabe fortzusetzen: [`autoContinueAtUsageLimit`](https://code.claude.com/docs/de/settings-reference#autocontinueatusagelimit) wurde ausgeschaltet oder das Zurücksetzen hat sich während einer Wartezeit, die Claude Code selbst gestartet hat, um mehr als 24 Stunden verschoben, die fortgesetzte Aufgabe stieß wiederholt an das Limit, oder die Fortsetzung wurde blockiert, bevor sie das Modell erreichte. Wird nicht ausgelöst, wenn Sie `Esc` oder `Ctrl+C` drücken oder **Don't continue automatically** auswählen |

196| `plugin_notification` | Ein [Mod](https://code.claude.com/docs/de/plugins/mods/api.md#show-something-without-starting-a-turn) löst mit `$.ui.notify` eine Benachrichtigung aus. Der `title` des Hooks ist der Name des Mods, sofern der Mod keinen eigenen festgelegt hat |196| `plugin_notification` | Ein [Mod](https://code.claude.com/docs/de/plugins/mods/api.md#show-something-without-starting-a-turn) mit `$.ui.notify` eine Benachrichtigung auslöst. Der `title` des Hooks ist der Name des Mods, sofern der Mod keinen festgelegt hat |

197 197 

198Claude Code zeitlich `permission_prompt` unterschiedlich in einem Terminal und in Claude Desktop, der VS Code-Erweiterung und anderen Hosts, die Berechtigungsanfragen über das Agent SDK beantworten. Siehe [wann jeder Benachrichtigungstyp ausgelöst wird](https://code.claude.com/docs/de/hooks.md#notification) für beide Zeitpunkte.198Claude Code legt den Zeitpunkt von `permission_prompt` in einem Terminal anders fest als in Claude Desktop, der VS Code-Erweiterung und anderen Hosts, die Berechtigungsanfragen über das Agent SDK beantworten. Beide Zeitpunkte finden Sie unter [Wann jeder Benachrichtigungstyp ausgelöst wird](https://code.claude.com/docs/de/hooks.md#notification).

199 199 

200Die Matcher `quota_auto_resume_fired`, `quota_auto_resume_stale` und `quota_auto_resume_disabled` erfordern Claude Code v2.1.234 oder später.200Die Matcher `quota_auto_resume_fired`, `quota_auto_resume_stale` und `quota_auto_resume_disabled` erfordern Claude Code v2.1.234 oder höher.

201 201 

202In Terminal-Sitzungen erfordert `permission_prompt` für eine Sandbox-Befehl-Netzwerkanfrage Claude Code v2.1.246 oder später.202In Terminalsitzungen erfordert `permission_prompt` für die Netzwerkanfrage eines Befehls in der Sandbox Claude Code v2.1.246 oder höher.

203 203 

204`agent_needs_input` für eine Teamkollegen-Terminal-Setup-Frage erfordert Claude Code v2.1.248 oder später.204`agent_needs_input` für die Frage eines Teammitglieds zur Terminal-Einrichtung erfordert Claude Code v2.1.248 oder höher.

205 205 

206Geben Sie `/hooks` im Eingabefeld von Claude Code ein und bestätigen Sie, dass der Hook unter `Notification` angezeigt wird.206Geben Sie `/hooks` am Claude Code-Prompt ein und prüfen Sie, ob der Hook unter `Notification` erscheint.

207 207 

208### Code nach Bearbeitungen automatisch formatieren208### Code nach Bearbeitungen automatisch formatieren

209 209 

210Führen Sie [Prettier](https://prettier.io/) automatisch auf jeder Datei aus, die Claude bearbeitet, damit die Formatierung konsistent bleibt, ohne manuelle Eingriffe.210Führen Sie [Prettier](https://prettier.io/) automatisch für jede Datei aus, die Claude bearbeitet, damit die Formatierung ohne manuelles Eingreifen einheitlich bleibt.

211 211 

212Dieser Hook verwendet das `PostToolUse`-Event mit einem `Edit|Write`-Matcher, sodass er nur nach Datei-Bearbeitungs-Tools ausgeführt wird. Der Befehl extrahiert den bearbeiteten Dateipfad mit [`jq`](https://jqlang.org/) und übergibt ihn an Prettier. Fügen Sie dies zu `.claude/settings.json` in Ihrem Projektverzeichnis hinzu:212Dieser Hook verwendet das Event `PostToolUse` mit einem `Edit|Write`-Matcher, sodass er nur nach Tools zur Dateibearbeitung ausgeführt wird. Der Befehl extrahiert den Pfad der bearbeiteten Datei mit [`jq`](https://jqlang.org/) und übergibt ihn an Prettier. Fügen Sie Folgendes zu `.claude/settings.json` im Stammverzeichnis Ihres Projekts hinzu:

213 213 

214```json theme={null}214```json theme={null}

215{215{


229}229}

230```230```

231 231 

232Um den Hook zu testen, bitten Sie Claude, eine Zeile mit einfach angeführten Strings zu einer JavaScript-Datei hinzuzufügen, und öffnen Sie dann die Datei: Mit den Standardeinstellungen von Prettier schreibt der Hook sie in doppelte Anführungszeichen um.232Um den Hook zu testen, bitten Sie Claude, einer JavaScript-Datei eine Zeile mit Strings in einfachen Anführungszeichen hinzuzufügen, und öffnen Sie dann die Datei: Mit den Standardeinstellungen von Prettier schreibt der Hook sie in doppelte Anführungszeichen um.

233 233 

234Wenn der Hook erfolgreich ist, zeigt Claude Code nichts in der Konversation an. Um zu bestätigen, dass der Hook ausgeführt wurde, überprüfen Sie, dass die bearbeitete Datei neu formatiert ist, oder siehe [Prüfen, was ein Hook getan hat](#check-what-a-hook-did).234Wenn der Hook erfolgreich ist, zeigt Claude Code in der Konversation nichts an. Um zu bestätigen, dass der Hook ausgeführt wurde, prüfen Sie, ob die bearbeitete Datei neu formatiert wurde, oder lesen Sie [Prüfen, was ein Hook getan hat](#check-what-a-hook-did).

235 235 

236Um eine bestimmte Datei unabhängig davon, wie sie sich ändert, neu zu formatieren, einschließlich wenn ein `Bash`-Befehl sie umschreibt, verwenden Sie stattdessen einen [FileChanged](https://code.claude.com/docs/de/hooks.md#filechanged)-Hook.236Um eine bestimmte Datei unabhängig davon neu zu formatieren, wie sie sich ändert, auch wenn ein `Bash`-Befehl sie umschreibt, verwenden Sie stattdessen einen [FileChanged](https://code.claude.com/docs/de/hooks.md#filechanged)-Hook.

237 237 

238> [!NOTE]238> [!NOTE]

239>239>

240> Die Bash-Beispiele auf dieser Seite verwenden `jq` zum Parsen von JSON. Installieren Sie es mit `brew install jq` auf macOS, `apt-get install jq` auf Debian und Ubuntu, oder siehe [`jq`-Downloads](https://jqlang.org/download/).240> Die Bash-Beispiele auf dieser Seite verwenden `jq` zum Parsen von JSON. Installieren Sie es unter macOS mit `brew install jq`, unter Debian und Ubuntu mit `apt-get install jq`, oder siehe [`jq`-Downloads](https://jqlang.org/download/).

241 241 

242### Bearbeitungen geschützter Dateien blockieren242### Bearbeitungen an geschützten Dateien blockieren

243 243 

244Verhindern Sie, dass Claude sensible Dateien wie `.env`, `package-lock.json` oder alles in `.git/` ändert. Claude erhält Feedback, das erklärt, warum die Bearbeitung blockiert wurde, sodass es seinen Ansatz anpassen kann.244Verhindern Sie, dass Claude sensible Dateien wie `.env`, `package-lock.json` oder alles in `.git/` ändert. Claude erhält Feedback, das erklärt, warum die Bearbeitung blockiert wurde, sodass es seine Vorgehensweise anpassen kann.

245 245 

246Dieses Beispiel verwendet eine separate Skriptdatei, die der Hook aufruft. Das Skript überprüft den Zieldateipfad gegen eine Liste geschützter Muster und beendet sich mit Code 2, um die Bearbeitung zu blockieren.246Dieses Beispiel verwendet eine separate Skriptdatei, die der Hook aufruft. Das Skript prüft den Zieldateipfad anhand einer Liste geschützter Muster und beendet sich mit Exit-Code 2, um die Bearbeitung zu blockieren.

247 247 

248**1. Erstellen Sie das Hook-Skript**248**1. Hook-Skript erstellen**

249 249 

250Speichern Sie dies unter `.claude/hooks/protect-files.sh`:250Speichern Sie dies unter `.claude/hooks/protect-files.sh`:

251 251 


271exit 0271exit 0

272```272```

273 273 

274**2. Machen Sie das Skript ausführbar auf macOS und Linux**274**2. Skript unter macOS und Linux ausführbar machen**

275 275 

276Hook-Skripte müssen ausführbar sein, damit Claude Code sie ausführen kann:276Hook-Skripte müssen ausführbar sein, damit Claude Code sie ausführen kann:

277 277 


279chmod +x .claude/hooks/protect-files.sh279chmod +x .claude/hooks/protect-files.sh

280```280```

281 281 

282**3. Registrieren Sie den Hook**282**3. Hook registrieren**

283 283 

284Fügen Sie einen `PreToolUse`-Hook zu `.claude/settings.json` hinzu, der das Skript vor jedem `Edit`- oder `Write`-Tool-Aufruf ausführt:284Fügen Sie `.claude/settings.json` einen `PreToolUse`-Hook hinzu, der das Skript vor jedem `Edit`- oder `Write`-Tool-Aufruf ausführt:

285 285 

286```json theme={null}286```json theme={null}

287{287{


301}301}

302```302```

303 303 

304**4. Testen Sie den Hook**304**4. Hook testen**

305 305 

306Bitten Sie Claude, einen Kommentar zu Ihrer `.env`-Datei hinzuzufügen. Claude Code blockiert die Bearbeitung, bevor sie ausgeführt wird, und übergibt die `Blocked:`-Nachricht des Skripts an Claude als Feedback.306Bitten Sie Claude, Ihrer `.env`-Datei einen Kommentar hinzuzufügen. Claude Code blockiert die Bearbeitung, bevor sie ausgeführt wird, und übergibt die `Blocked:`-Meldung des Skripts als Feedback an Claude.

307 307 

308### Kontext nach Komprimierung erneut injizieren308### Kontext nach der Komprimierung erneut einfügen

309 309 

310Wenn Claudes Kontextfenster voll wird, fasst die Komprimierung das Gespräch zusammen, um Platz freizugeben. Dies kann wichtige Details verlieren. Verwenden Sie einen `SessionStart`-Hook mit einem `compact`-Matcher, um nach jeder Komprimierung kritischen Kontext erneut zu injizieren.310Wenn sich das Kontextfenster von Claude füllt, fasst die Komprimierung die Konversation zusammen, um Platz zu schaffen. Dabei können wichtige Details verloren gehen. Verwenden Sie einen `SessionStart`-Hook mit einem `compact`-Matcher, um nach jeder Komprimierung wichtigen Kontext erneut einzufügen.

311 311 

312Claude Code fügt Claudes Kontext den einfachen Text hinzu, den Ihr Befehl auf stdout schreibt. Dieses Beispiel erinnert Claude an Projektkonventionen und aktuelle Arbeiten. Fügen Sie dies zu `.claude/settings.json` in Ihrem Projektverzeichnis hinzu:312Claude Code fügt einfachen Text, den Ihr Befehl auf stdout schreibt, dem Kontext von Claude hinzu. Dieses Beispiel erinnert Claude an Projektkonventionen und die jüngste Arbeit. Fügen Sie Folgendes zu `.claude/settings.json` im Stammverzeichnis Ihres Projekts hinzu:

313 313 

314```json theme={null}314```json theme={null}

315{315{


329}329}

330```330```

331 331 

332Sie können das `echo` durch jeden Befehl ersetzen, der dynamische Ausgabe erzeugt, wie `git log --oneline -5`, um aktuelle Commits anzuzeigen. Zum Injizieren von Kontext bei jedem Sitzungsstart sollten Sie stattdessen [CLAUDE.md](https://code.claude.com/docs/de/memory.md) verwenden. Für Umgebungsvariablen siehe [`CLAUDE_ENV_FILE`](https://code.claude.com/docs/de/hooks#persist-environment-variables) in der Referenz.332Sie können `echo` durch einen beliebigen Befehl ersetzen, der dynamische Ausgabe erzeugt, etwa `git log --oneline -5`, um die letzten Commits anzuzeigen. Um Kontext bei jedem Sitzungsstart einzufügen, sollten Sie stattdessen [CLAUDE.md](https://code.claude.com/docs/de/memory.md) verwenden. Informationen zu Umgebungsvariablen finden Sie unter [`CLAUDE_ENV_FILE`](https://code.claude.com/docs/de/hooks#persist-environment-variables) in der Referenz.

333 333 

334### Konfigurationsänderungen prüfen334### Konfigurationsänderungen prüfen

335 335 

336Verfolgen Sie, wenn sich Einstellungs- oder Skills-Dateien während einer Sitzung ändern. Das `ConfigChange`-Event wird ausgelöst, wenn ein externer Prozess oder Editor eine Konfigurationsdatei ändert, sodass Sie Änderungen für Compliance protokollieren oder nicht autorisierte Änderungen blockieren können.336Verfolgen Sie, wann sich Einstellungs- oder Skill-Dateien während einer Sitzung ändern. Das Event `ConfigChange` wird ausgelöst, wenn ein externer Prozess oder Editor eine Konfigurationsdatei ändert, sodass Sie Änderungen für Compliance-Zwecke protokollieren oder nicht autorisierte Änderungen blockieren können.

337 337 

338Dieses Beispiel hängt jede Änderung an ein Audit-Protokoll an. Fügen Sie dies zu `~/.claude/settings.json` hinzu:338Dieses Beispiel hängt jede Änderung an ein Audit-Log an. Fügen Sie Folgendes zu `~/.claude/settings.json` hinzu:

339 339 

340```json theme={null}340```json theme={null}

341{341{


355}355}

356```356```

357 357 

358Der Matcher filtert nach Konfigurationstyp: `user_settings`, `project_settings`, `local_settings`, `policy_settings` oder `skills`. Um eine Änderung zu blockieren, beenden Sie mit Code 2 oder geben Sie `{"decision": "block"}` zurück. Siehe die [ConfigChange-Referenz](https://code.claude.com/docs/de/hooks.md#configchange) für das vollständige Eingabe-Schema.358Der Matcher filtert nach Konfigurationstyp: `user_settings`, `project_settings`, `local_settings`, `policy_settings` oder `skills`. Um zu verhindern, dass eine Änderung wirksam wird, beenden Sie mit Exit-Code 2 oder geben Sie `{"decision": "block"}` zurück. Das vollständige Eingabeschema finden Sie in der [ConfigChange-Referenz](https://code.claude.com/docs/de/hooks.md#configchange).

359 359 

360Um zu bestätigen, dass der Hook Änderungen aufzeichnet, bearbeiten Sie eine Einstellungsdatei in einem anderen Editor, während eine Sitzung läuft, und öffnen Sie dann `~/claude-config-audit.log`: Der Hook hängt eine JSON-Zeile pro Änderung mit dem Zeitstempel, der Quelle und dem Dateipfad an.360Um zu bestätigen, dass der Hook Änderungen aufzeichnet, bearbeiten Sie eine Einstellungsdatei in einem anderen Editor, während eine Sitzung läuft, und öffnen Sie dann `~/claude-config-audit.log`: Der Hook hängt pro Änderung eine JSON-Zeile mit Zeitstempel, Quelle und Dateipfad an.

361 361 

362### Umgebung neu laden, wenn sich Verzeichnis oder Dateien ändern362### Umgebung neu laden, wenn sich Verzeichnis oder Dateien ändern

363 363 

364Einige Projekte setzen unterschiedliche Umgebungsvariablen je nachdem, in welchem Verzeichnis Sie sich befinden. Tools wie [direnv](https://direnv.net/) tun dies automatisch in Ihrer Shell, aber Claudes Bash-Tool übernimmt diese Änderungen nicht automatisch.364Manche Projekte setzen je nach Verzeichnis, in dem Sie sich befinden, unterschiedliche Umgebungsvariablen. Tools wie [direnv](https://direnv.net/) erledigen das in Ihrer Shell automatisch, aber das Bash-Tool von Claude übernimmt diese Änderungen nicht von selbst.

365 365 

366Das Pairing eines `SessionStart`-Hooks mit einem `CwdChanged`-Hook behebt dies. `SessionStart` lädt die Variablen für das Verzeichnis, in dem Sie starten, und `CwdChanged` lädt sie jedes Mal neu, wenn Claude das Verzeichnis wechselt. Beide schreiben in `CLAUDE_ENV_FILE`, die Claude Code vor jedem Bash-Befehl als Skript-Präambel ausführt. Fügen Sie dies zu `~/.claude/settings.json` hinzu:366Die Kombination eines `SessionStart`-Hooks mit einem `CwdChanged`-Hook löst dieses Problem. `SessionStart` lädt die Variablen für das Verzeichnis, in dem Sie starten, und `CwdChanged` lädt sie jedes Mal neu, wenn Claude das Verzeichnis wechselt. Beide schreiben in `CLAUDE_ENV_FILE`, das Claude Code vor jedem Bash-Befehl als Skript-Präambel ausführt. Fügen Sie Folgendes zu `~/.claude/settings.json` hinzu:

367 367 

368```json theme={null}368```json theme={null}

369{369{


392}392}

393```393```

394 394 

395Führen Sie `direnv allow` einmal in jedem Verzeichnis aus, das eine `.envrc` hat, damit direnv berechtigt ist, sie zu laden. Wenn Sie devbox oder nix statt direnv verwenden, funktioniert das gleiche Muster mit `devbox shellenv` oder `devbox global shellenv` anstelle von `direnv export bash`.395Führen Sie `direnv allow` einmal in jedem Verzeichnis aus, das eine `.envrc` enthält, damit direnv sie laden darf. Wenn Sie devbox oder nix statt direnv verwenden, funktioniert dasselbe Muster mit `devbox shellenv` oder `devbox global shellenv` anstelle von `direnv export bash`.

396 396 

397Um auf bestimmte Dateien statt auf jeden Verzeichniswechsel zu reagieren, verwenden Sie `FileChanged` mit einem `matcher`, der die zu überwachenden Dateinamen auflistet, getrennt durch `|`. Beim Erstellen der Überwachungsliste wird dieser Wert in Dateinamen aufgeteilt, anstatt als Regex ausgewertet zu werden. Siehe [FileChanged](https://code.claude.com/docs/de/hooks.md#filechanged) für die Funktionsweise desselben Werts, der auch filtert, welche Hook-Gruppen ausgeführt werden, wenn sich eine Datei ändert. Dieses Beispiel überwacht `.envrc` und `.env` im Arbeitsverzeichnis:397Um auf bestimmte Dateien statt auf jeden Verzeichniswechsel zu reagieren, verwenden Sie `FileChanged` mit einem `matcher`, der die zu überwachenden Dateinamen durch `|` getrennt auflistet. Beim Erstellen der Überwachungsliste teilt Claude Code diesen Wert in literale Dateinamen auf, statt ihn als Regex auszuwerten. Unter [FileChanged](https://code.claude.com/docs/de/hooks.md#filechanged) erfahren Sie, wie derselbe Wert auch filtert, welche Hook-Gruppen bei einer Dateiänderung ausgeführt werden. Dieses Beispiel überwacht `.envrc` und `.env` im Arbeitsverzeichnis:

398 398 

399```json theme={null}399```json theme={null}

400{400{


414}414}

415```415```

416 416 

417Siehe die [CwdChanged](https://code.claude.com/docs/de/hooks.md#cwdchanged)- und [FileChanged](https://code.claude.com/docs/de/hooks.md#filechanged)-Referenzeinträge für Eingabe-Schemas, `watchPaths`-Ausgabe und `CLAUDE_ENV_FILE`-Details.417Eingabeschemas, die `watchPaths`-Ausgabe und Details zu `CLAUDE_ENV_FILE` finden Sie in den Referenzeinträgen zu [CwdChanged](https://code.claude.com/docs/de/hooks.md#cwdchanged) und [FileChanged](https://code.claude.com/docs/de/hooks.md#filechanged).

418 418 

419### Bestimmte Berechtigungsaufforderungen automatisch genehmigen419### Bestimmte Berechtigungsabfragen automatisch genehmigen

420 420 

421Überspringen Sie den Genehmigungsdialog für Tool-Aufrufe, die Sie immer zulassen. Dieses Beispiel genehmigt automatisch `ExitPlanMode`, das Tool, das Claude aufruft, wenn es fertig ist, einen Plan zu präsentieren und fragt, ob es fortfahren soll, sodass Sie nicht jedes Mal aufgefordert werden, wenn ein Plan bereit ist.421Überspringen Sie den Genehmigungsdialog für Tool-Aufrufe, die Sie immer erlauben. Dieses Beispiel genehmigt automatisch `ExitPlanMode`, das Tool, das Claude aufruft, wenn es die Präsentation eines Plans abgeschlossen hat und fragt, ob es fortfahren soll, sodass Sie nicht jedes Mal gefragt werden, wenn ein Plan fertig ist.

422 422 

423Im Gegensatz zu den Exit-Code-Beispielen oben erfordert die automatische Genehmigung, dass Ihr Hook eine JSON-Entscheidung auf stdout schreibt. Claude Code führt `PermissionRequest`-Hooks aus, wenn es Sie um Genehmigung fragen wird, und wenn Ihr Hook `"behavior": "allow"` zurückgibt, beantwortet Claude Code die Anfrage in Ihrem Namen.423Anders als bei den obigen Exit-Code-Beispielen muss Ihr Hook für die automatische Genehmigung eine JSON-Entscheidung auf stdout schreiben. Claude Code führt `PermissionRequest`-Hooks aus, wenn es Sie gleich um eine Berechtigung bitten würde, und wenn Ihr Hook `"behavior": "allow"` zurückgibt, beantwortet Claude Code die Anfrage in Ihrem Namen.

424 424 

425Der Matcher beschränkt den Hook nur auf `ExitPlanMode`, sodass keine anderen Aufforderungen betroffen sind. Fügen Sie dies zu `~/.claude/settings.json` hinzu:425Der Matcher beschränkt den Hook ausschließlich auf `ExitPlanMode`, sodass keine anderen Abfragen betroffen sind. Fügen Sie Folgendes zu `~/.claude/settings.json` hinzu:

426 426 

427```json theme={null}427```json theme={null}

428{428{


442}442}

443```443```

444 444 

445Wenn der Hook genehmigt, beendet Claude Code den Plan-Modus und stellt den Berechtigungsmodus wieder her, der vor dem Eintritt in den Plan-Modus aktiv war. Das Transkript zeigt „Allowed by PermissionRequest hook“ an der Stelle, an der der Dialog angezeigt worden wäre. Der Hook-Pfad behält immer das aktuelle Gespräch: Er kann den Kontext nicht löschen und eine neue Implementierungssitzung auf die Weise starten, wie der Dialog es kann.445Wenn der Hook genehmigt, verlässt Claude Code den Plan-Modus und stellt den Berechtigungsmodus wieder her, der aktiv war, bevor Sie den Plan-Modus aufgerufen haben. Das Transkript zeigt „Allowed by PermissionRequest hook“ an der Stelle, an der der Dialog erschienen wäre. Über den Hook wird immer die aktuelle Konversation beibehalten: Er kann den Kontext nicht löschen und keine neue Implementierungssitzung starten, wie es der Dialog kann.

446 446 

447Um stattdessen einen bestimmten Berechtigungsmodus festzulegen, kann die Ausgabe Ihres Hooks ein Array `updatedPermissions` mit einem `setMode`-Eintrag enthalten. Der Wert `mode` ist ein beliebiger Berechtigungsmodus wie `default`, `acceptEdits` oder `bypassPermissions`, und `destination: "session"` wendet ihn nur für die aktuelle Sitzung an.447Um stattdessen einen bestimmten Berechtigungsmodus festzulegen, kann die Ausgabe Ihres Hooks ein `updatedPermissions`-Array mit einem `setMode`-Eintrag enthalten. Der Wert `mode` ist ein beliebiger Berechtigungsmodus wie `default`, `acceptEdits` oder `bypassPermissions`, und `destination: "session"` wendet ihn nur für die aktuelle Sitzung an.

448 448 

449> [!NOTE]449> [!NOTE]

450>450>

451> `bypassPermissions` gilt nur, wenn die Sitzung mit bereits verfügbarem Bypass-Modus gestartet wurde: `--dangerously-skip-permissions`, `--permission-mode bypassPermissions`, `--allow-dangerously-skip-permissions` oder `permissions.defaultMode: "bypassPermissions"` in [Benutzer-, `--settings`- oder verwalteten Einstellungen](https://code.claude.com/docs/de/settings-reference#permissions-defaultmode). Es gilt nicht, wenn der Bypass-Modus durch [`permissions.disableBypassPermissionsMode`](https://code.claude.com/docs/de/permissions#managed-settings) deaktiviert ist, oder wenn Sie die Sitzung im [eingeschränkten Modus](https://code.claude.com/docs/de/cli-reference.md#cli-flags) gestartet haben.451> `bypassPermissions` gilt nur, wenn Sie die Sitzung mit bereits verfügbarem Bypass-Modus gestartet haben: `--dangerously-skip-permissions`, `--permission-mode bypassPermissions`, `--allow-dangerously-skip-permissions` oder `permissions.defaultMode: "bypassPermissions"` in [Benutzer-, `--settings`- oder verwalteten Einstellungen](https://code.claude.com/docs/de/settings-reference#permissions-defaultmode). Es gilt nicht, wenn der Bypass-Modus durch [`permissions.disableBypassPermissionsMode`](https://code.claude.com/docs/de/permissions#managed-settings) deaktiviert ist oder wenn Sie die Sitzung im [eingeschränkten Modus](https://code.claude.com/docs/de/cli-reference.md#cli-flags) gestartet haben.

452>452>

453> Claude Code speichert es niemals als `defaultMode`.453> Claude Code speichert ihn nie als `defaultMode`.

454 454 

455Um die Sitzung zu `acceptEdits` zu wechseln, schreibt Ihr Hook dieses JSON auf stdout:455Um die Sitzung auf `acceptEdits` umzuschalten, schreibt Ihr Hook dieses JSON auf stdout:

456 456 

457```json theme={null}457```json theme={null}

458{458{


468}468}

469```469```

470 470 

471Halten Sie den Matcher so eng wie möglich. Das Abgleichen von `.*` oder das Lassen des Matchers leer würde jede Tool-Berechtigungsaufforderung automatisch genehmigen, einschließlich Dateischreibvorgänge und Shell-Befehle. Siehe die [PermissionRequest-Referenz](https://code.claude.com/docs/de/hooks.md#permissionrequest-decision-control) für den vollständigen Satz von Entscheidungsfeldern.471Halten Sie den Matcher so eng wie möglich. Ein Matching auf `.*` oder ein leerer Matcher würde jede Berechtigungsabfrage für Tools automatisch genehmigen, einschließlich Dateischreibvorgängen und Shell-Befehlen. Den vollständigen Satz an Entscheidungsfeldern finden Sie in der [PermissionRequest-Referenz](https://code.claude.com/docs/de/hooks.md#permissionrequest-decision-control).

472 472 

473## Wie Hooks funktionieren473## Wie Hooks funktionieren

474 474 

Details

270 270 

271## Befehlsverlauf271## Befehlsverlauf

272 272 

273Claude Code speichert einen Verlauf der Eingabeaufforderungen, die Sie eingeben, und die Pfeiltaste-nach-oben-Funktion ruft Eingabeaufforderungen aus früheren Sitzungen desselben Projekts ab:273Claude Code speichert einen Verlauf der Prompts, die Sie eingeben, und über die Pfeiltaste nach oben können Sie auch Prompts aus früheren Sitzungen desselben Projekts abrufen:

274 274 

275* Der Eingabeverlauf wird pro Arbeitsverzeichnis gespeichert275* Der Eingabeverlauf wird pro Arbeitsverzeichnis gespeichert

276* Das Ausführen von `/clear` startet eine neue Sitzung: Die Rückruffunktion listet dann die Eingabeaufforderungen der neuen Sitzung zuerst auf, gefolgt von den Eingabeaufforderungen früherer Sitzungen. Das Gespräch der vorherigen Sitzung wird beibehalten und kann fortgesetzt werden.276* Mit `/clear` starten Sie eine neue Sitzung: Beim Abrufen werden dann zuerst die Prompts der neuen Sitzung aufgelistet, danach die Prompts früherer Sitzungen. Die Konversation der vorherigen Sitzung bleibt erhalten und kann fortgesetzt werden.

277* Das zweimalige Absenden derselben Eingabeaufforderung hintereinander zeichnet einen Verlaufseintrag auf, sodass das Drücken der Pfeiltaste nach oben zur vorherigen unterschiedlichen Eingabeaufforderung führt277* Wenn Sie denselben Prompt zweimal hintereinander absenden, wird nur ein Verlaufseintrag gespeichert, sodass Sie mit `Up` zum vorherigen unterschiedlichen Prompt springen

278* Wenn Sie eine Eingabeaufforderung abrufen, die eingefügten Text enthielt, sendet Claude Code den vollständigen eingefügten Inhalt erneut, wenn Sie sie erneut absenden. Wenn der Inhalt inzwischen [bereinigt](https://code.claude.com/docs/de/claude-directory.md#cleaned-up-automatically) wurde, sendet Claude Code nicht die wörtliche Zeichenkette `[Pasted text #N]`; siehe [Großen Inhalt einfügen](https://code.claude.com/docs/de/terminal-config.md#paste-large-content) für Details, was mit der Eingabeaufforderung geschieht278* Wenn Sie einen Prompt abrufen, der eingefügten Text enthielt, sendet Claude Code beim erneuten Absenden den vollständigen eingefügten Inhalt erneut. Wurde der Inhalt inzwischen [bereinigt](https://code.claude.com/docs/de/claude-directory.md#cleaned-up-automatically), sendet Claude Code nicht die wörtliche Zeichenfolge `[Pasted text #N]`; unter [Große Inhalte einfügen](https://code.claude.com/docs/de/terminal-config.md#paste-large-content) erfahren Sie, was mit dem Prompt geschieht

279* Die Verlaufserweiterung mit `!` ist standardmäßig deaktiviert279* Die Verlaufserweiterung mit `!` ist standardmäßig deaktiviert

280 280 

281### Einen gelöschten Entwurf zurückholen281### Einen gelöschten Entwurf wiederherstellen

282 282 

283Um einen Entwurf zurückzuholen, den Sie mit `Strg+C` gelöscht haben, drücken Sie `Pfeiltaste nach oben`, entweder sofort oder nachdem Sie eine Nachricht oder einen Befehl gesendet haben:283Um einen Entwurf wiederherzustellen, den Sie mit `Ctrl+C` gelöscht haben, drücken Sie `Up`, entweder sofort oder nachdem Sie eine Nachricht oder einen Befehl gesendet haben:

284 284 

285* **Direkt nach dem Löschen des Entwurfs**: Drücken Sie einmal `Pfeiltaste nach oben`, solange das Eingabefeld noch leer ist. Erfordert Claude Code v2.1.288 oder höher.285* **Direkt nach dem Löschen des Entwurfs**: Drücken Sie einmal `Up`, solange das Eingabefeld noch leer ist. Erfordert Claude Code v2.1.288 oder höher.

286* **Nach dem Senden einer Nachricht oder eines Befehls**: Drücken Sie `Pfeiltaste nach oben`, um zum Entwurf zurückzugehen. Claude Code speichert die zehn zuletzt gelöschten Entwürfe der aktuellen Sitzung mitsamt ihrem eingefügten Text und ihren Bildern und verwirft sie, wenn Sie die Sitzung beenden. Erfordert Claude Code v2.1.292 oder höher.286* **Nach dem Senden einer Nachricht oder eines Befehls**: Drücken Sie `Up`, um zum Entwurf zurückzugehen. Claude Code speichert die zehn zuletzt gelöschten Entwürfe der aktuellen Sitzung samt eingefügtem Text und Bildern und verwirft sie, wenn Sie die Sitzung beenden. Erfordert Claude Code v2.1.292 oder höher.

287 287 

288### Rückwärtssuche mit Strg+R288### Rückwärtssuche mit Ctrl+R

289 289 

290Drücken Sie `Strg+R`, um interaktiv durch Ihren Befehlsverlauf zu suchen. Bei [Vollbilddarstellung](https://code.claude.com/docs/de/fullscreen.md) öffnet `Strg+R` stattdessen einen Suchdialog: Geben Sie Text ein, um zu filtern, drücken Sie `Pfeiltaste nach oben` und `Pfeiltaste nach unten`, um sich durch Treffer zu bewegen, und drücken Sie `Strg+S`, um den Bereich durch diese Sitzung, dieses Projekt und alle Projekte zu durchlaufen. Drücken Sie `Eingabe` oder `Tab`, um einen Treffer in die Eingabeaufforderung einzufügen, oder `Esc`, um abzubrechen. Die folgenden Schritte beschreiben die Inline-Suche des klassischen Renderers:290Drücken Sie `Ctrl+R`, um Ihren Befehlsverlauf interaktiv zu durchsuchen. Im [Vollbild-Rendering](https://code.claude.com/docs/de/fullscreen.md) öffnet `Ctrl+R` stattdessen einen Suchdialog: Tippen Sie zum Filtern, drücken Sie `Up` und `Down`, um zwischen Treffern zu wechseln, und drücken Sie `Ctrl+S`, um den Geltungsbereich zwischen dieser Sitzung, diesem Projekt und allen Projekten zu wechseln. Drücken Sie `Enter` oder `Tab`, um einen Treffer in das Eingabefeld zu übernehmen, oder `Esc` zum Abbrechen. Die folgenden Schritte beschreiben die Inline-Suche des klassischen Renderers:

291 291 

2921. **Suche starten**: Drücken Sie `Strg+R`, um die Rückwärtssuche im Verlauf zu aktivieren2921. **Suche starten**: Drücken Sie `Ctrl+R`, um die Rückwärtssuche im Verlauf zu aktivieren

2932. **Abfrage eingeben**: Geben Sie Text ein, um in vorherigen Befehlen zu suchen. Der Suchbegriff wird in übereinstimmenden Ergebnissen hervorgehoben2932. **Suchbegriff eingeben**: Geben Sie Text ein, nach dem in früheren Befehlen gesucht werden soll. Der Suchbegriff wird in passenden Ergebnissen hervorgehoben

2943. **Treffer navigieren**: Drücken Sie `Strg+R` erneut, um durch ältere Treffer zu durchlaufen2943. **Zwischen Treffern navigieren**: Drücken Sie erneut `Ctrl+R`, um durch ältere Treffer zu blättern

2954. **Suchbereich**: Die Inline-Suche durchsucht immer Eingabeaufforderungen aus allen Projekten2954. **Suchbereich**: Die Inline-Suche durchsucht immer Prompts aus allen Projekten

2965. **Treffer akzeptieren**:2965. **Treffer übernehmen**:

297 * Drücken Sie `Tab` oder `Esc`, um den aktuellen Treffer zu akzeptieren und die Bearbeitung fortzusetzen297 * Drücken Sie `Tab` oder `Esc`, um den aktuellen Treffer zu übernehmen und weiter zu bearbeiten

298 * Drücken Sie `Eingabe`, um den Befehl zu akzeptieren und sofort auszuführen298 * Drücken Sie `Enter`, um den Befehl zu übernehmen und sofort auszuführen

2996. **Suche abbrechen**:2996. **Suche abbrechen**:

300 * Drücken Sie `Strg+C`, um abzubrechen und Ihre ursprüngliche Eingabe wiederherzustellen300 * Drücken Sie `Ctrl+C`, um abzubrechen und Ihre ursprüngliche Eingabe wiederherzustellen

301 * Drücken Sie `Rücktaste` bei leerer Suche, um abzubrechen301 * Drücken Sie `Backspace` bei leerer Suche, um abzubrechen

302 302 

303Die Inline-Suche durchsucht Ihren vollständigen Eingabeverlauf, neueste zuerst, mit Duplikaten, die auf das neueste Vorkommen reduziert sind. Der Vollbilddialog durchsucht Ihren gesamten Eingabeverlauf im ausgewählten Bereich, neueste zuerst, mit Duplikaten, die auf das neueste Vorkommen reduziert sind: Die neuesten Eingabeaufforderungen werden sofort angezeigt, und Treffer aus älteren Eingabeaufforderungen werden angezeigt, während Claude Code den Rest des Verlaufs lädt. Übereinstimmende Eingabeaufforderungen werden mit dem hervorgehobenen Suchbegriff angezeigt, sodass Sie vorherige Eingaben finden und wiederverwenden können.303Die Inline-Suche durchsucht Ihren gesamten Prompt-Verlauf, die neuesten Einträge zuerst, wobei Duplikate auf das neueste Vorkommen zusammengefasst werden. Der Vollbild-Dialog durchsucht Ihren gesamten Prompt-Verlauf im ausgewählten Geltungsbereich, die neuesten Einträge zuerst, wobei Duplikate auf das neueste Vorkommen zusammengefasst werden: Die neuesten Prompts erscheinen sofort, und Treffer aus älteren Prompts werden ergänzt, während Claude Code den Rest lädt. Passende Prompts werden mit hervorgehobenem Suchbegriff angezeigt, sodass Sie frühere Eingaben finden und wiederverwenden können.

304 304 

305Das Akzeptieren eines Treffers oder das Abbrechen der Suche wird sofort wirksam, auch während Claude Code den Verlauf noch lädt.305Das Übernehmen eines Treffers oder das Abbrechen der Suche wird sofort wirksam, auch wenn Claude Code den Verlauf noch lädt.

306 306 

307## Bash-Befehle im Hintergrund307## Bash-Befehle im Hintergrund

308 308 


332* Hintergrund-Befehle in einer lokalen Sitzung, in der Sie über ein Terminal, die Desktop-App oder die VS Code-Erweiterung arbeiten, haben kein Zeitlimit. In einer Sitzung, die unbeaufsichtigt läuft, etwa bei einem `-p`-Aufruf oder in einer Cloud-Sitzung, stoppt Claude Code einen Hintergrund-Befehl bei seinem [Zeitlimit](https://code.claude.com/docs/de/tools-reference.md#time-limit-for-background-commands)332* Hintergrund-Befehle in einer lokalen Sitzung, in der Sie über ein Terminal, die Desktop-App oder die VS Code-Erweiterung arbeiten, haben kein Zeitlimit. In einer Sitzung, die unbeaufsichtigt läuft, etwa bei einem `-p`-Aufruf oder in einer Cloud-Sitzung, stoppt Claude Code einen Hintergrund-Befehl bei seinem [Zeitlimit](https://code.claude.com/docs/de/tools-reference.md#time-limit-for-background-commands)

333* Ein Hintergrund-Befehl, den ein Vordergrund-[Subagent](https://code.claude.com/docs/de/sub-agents.md#run-subagents-in-foreground-or-background) gestartet hat, endet, wenn die Ausführung dieses Subagenten endet, unabhängig davon, ob sie abgeschlossen, fehlgeschlagen oder unterbrochen wurde; siehe [Wenn ein Hintergrund-Befehl stoppt](https://code.claude.com/docs/de/tools-reference.md#when-a-background-command-stops) in der Tools-Referenz333* Ein Hintergrund-Befehl, den ein Vordergrund-[Subagent](https://code.claude.com/docs/de/sub-agents.md#run-subagents-in-foreground-or-background) gestartet hat, endet, wenn die Ausführung dieses Subagenten endet, unabhängig davon, ob sie abgeschlossen, fehlgeschlagen oder unterbrochen wurde; siehe [Wenn ein Hintergrund-Befehl stoppt](https://code.claude.com/docs/de/tools-reference.md#when-a-background-command-stops) in der Tools-Referenz

334 334 

335Um Hintergrund-Befehle auszuschalten, setzen Sie die Umgebungsvariable [`CLAUDE_CODE_DISABLE_BACKGROUND_TASKS`](https://code.claude.com/docs/de/env-vars#variables) auf `1`. Wenn sie gesetzt ist, verlieren Sie außerdem Hintergrund-Subagenten, geforkte Skills im Hintergrund und `Ctrl+B`. Das Starten im [Bare-Modus](https://code.claude.com/docs/de/headless.md#start-faster-with-bare-mode) hat dieselbe Wirkung.335Um Hintergrund-Befehle auszuschalten, setzen Sie die Umgebungsvariable [`CLAUDE_CODE_DISABLE_BACKGROUND_TASKS`](https://code.claude.com/docs/de/env-vars#variables) auf `1`. Wenn sie gesetzt ist, verlieren Sie außerdem das Tastenkürzel `Ctrl+B` und [weitere Hintergrundfunktionen](https://code.claude.com/docs/de/env-vars.md#variables), etwa das [Ausführen von Skills im Hintergrund](https://code.claude.com/docs/de/skills.md#run-skills-in-a-subagent). Das Starten im [Bare-Modus](https://code.claude.com/docs/de/headless.md#start-faster-with-bare-mode) hat dieselbe Wirkung.

336 336 

337**Häufig in den Hintergrund verschobene Befehle:**337**Häufig in den Hintergrund verschobene Befehle:**

338 338 


416 416 

417Wenn Sie eingereihten Text zurücknehmen, während `←` [darauf wartet, die Sitzung in den Hintergrund zu verschieben](https://code.claude.com/docs/de/agent-view.md#switch-sessions-without-leaving-the-terminal), bleibt der Text im Eingabefeld und Claude Code bricht den Wechsel ab. Wenn Sie ihn genau in dem Moment zurücknehmen, in dem die Sitzung verschoben wird, verschwindet der Text mit dem Vordergrundbildschirm: Er wurde nicht gesendet. Jede Nachricht, die Sie zurückgenommen haben, wird als eigener Eintrag im [Befehlsverlauf](#command-history) gespeichert. Um eine davon wiederherzustellen, öffnen Sie die Sitzung erneut und drücken Sie `Up` bei einem leeren Prompt, während nichts eingereiht ist.417Wenn Sie eingereihten Text zurücknehmen, während `←` [darauf wartet, die Sitzung in den Hintergrund zu verschieben](https://code.claude.com/docs/de/agent-view.md#switch-sessions-without-leaving-the-terminal), bleibt der Text im Eingabefeld und Claude Code bricht den Wechsel ab. Wenn Sie ihn genau in dem Moment zurücknehmen, in dem die Sitzung verschoben wird, verschwindet der Text mit dem Vordergrundbildschirm: Er wurde nicht gesendet. Jede Nachricht, die Sie zurückgenommen haben, wird als eigener Eintrag im [Befehlsverlauf](#command-history) gespeichert. Um eine davon wiederherzustellen, öffnen Sie die Sitzung erneut und drücken Sie `Up` bei einem leeren Prompt, während nichts eingereiht ist.

418 418 

419## Eingabeaufforderungsvorschläge419## Prompt-Vorschläge

420 420 

421Wenn Sie eine Sitzung zum ersten Mal öffnen, zeigt Claude Code einen ausgegrauten Beispielbefehl in der Eingabeaufforderung an, um Ihnen den Einstieg zu erleichtern. Dieser wird aus dem Git-Verlauf Ihres Projekts ausgewählt, sodass das Beispiel Dateien widerspiegelt, an denen Sie kürzlich gearbeitet haben.421Wenn Sie eine Sitzung zum ersten Mal öffnen, zeigt Claude Code im Prompt-Eingabefeld einen ausgegrauten Beispielbefehl an, um Ihnen den Einstieg zu erleichtern. Dieser wird aus dem Git-Verlauf Ihres Projekts ausgewählt, sodass das Beispiel Dateien widerspiegelt, an denen Sie zuletzt gearbeitet haben.

422 422 

423Nachdem Claude antwortet, kann Claude Code basierend auf Ihrem Gesprächsverlauf einen Vorschlag für Ihre nächste Eingabeaufforderung machen, z. B. einen Folgenschritt aus einer mehrteiligen Anfrage oder eine natürliche Fortsetzung Ihres Arbeitsablaufs.423Nachdem Claude geantwortet hat, kann Claude Code Ihren nächsten Prompt basierend auf Ihrem Konversationsverlauf vorschlagen, etwa einen Folgeschritt aus einer mehrteiligen Anfrage oder eine natürliche Fortsetzung Ihres Workflows.

424 424 

425* Drücken Sie `Tab` oder `Pfeil nach rechts`, um den Vorschlag in die Eingabeaufforderung einzufügen, und dann `Eingabe`, um ihn abzusenden425* Drücken Sie `Tab` oder `Right arrow`, um den Vorschlag in das Prompt-Eingabefeld zu übernehmen, und dann `Enter`, um ihn abzusenden

426* Beginnen Sie zu tippen, um ihn zu verwerfen426* Beginnen Sie mit der Eingabe, um ihn zu verwerfen

427 427 

428Claude Code generiert jeden dieser Vorschläge für die nächste Eingabeaufforderung mit einer Hintergrundanfrage an das gleiche Modell, das Ihre Sitzung verwendet. Die Anfrage wird auf die Nutzungslimits Ihres Plans oder Ihre API-Kosten angerechnet. Da sie den Prompt-Cache des Gesprächs wiederverwendet, besteht sie hauptsächlich aus Cache-Lesevorgängen plus einigen Ausgabe-Token, sodass die zusätzlichen Kosten minimal sind.428Claude Code erzeugt jeden dieser Vorschläge für den nächsten Prompt mit einer kurzen Hintergrundanfrage an dasselbe Modell, das Ihre Sitzung verwendet. Die Anfrage wird auf die Nutzungslimits Ihres Plans bzw. Ihre API-Kosten angerechnet. Da sie den Prompt-Cache der Konversation wiederverwendet, besteht sie größtenteils aus Cache-Lesevorgängen plus einigen Ausgabe-Token, sodass die zusätzlichen Kosten gering sind.

429 429 

430### Wenn Claude Code Vorschläge überspringt430### Wann Claude Code Vorschläge überspringt

431 431 

432Im interaktiven Modus deaktiviert Claude Code Eingabeaufforderungsvorschläge standardmäßig und verbirgt den Umschalter **Eingabeaufforderungsvorschläge** in `/config` in einer [Sitzung, die keine Feature-Flags abruft](https://code.claude.com/docs/de/env-vars.md#features-that-need-feature-flag-fetching), z. B. eine bei einem Drittanbieter oder über ein Claude-Apps-Gateway, und in einer [ersten Sitzung nach einer Installation oder einem Upgrade](https://code.claude.com/docs/de/env-vars.md#first-session-after-an-install-or-upgrade), deren Flags noch nicht angekommen sind.432Im interaktiven Modus lässt Claude Code Prompt-Vorschläge standardmäßig ausgeschaltet und blendet den Schalter **Prompt suggestions** in `/config` aus, und zwar in einer [Sitzung, die keine Feature-Flags abruft](https://code.claude.com/docs/de/env-vars.md#features-that-need-feature-flag-fetching), etwa einer Sitzung bei einem Drittanbieter oder über ein Claude-Apps-Gateway, sowie in einer [ersten Sitzung nach einer Installation oder einem Upgrade](https://code.claude.com/docs/de/env-vars.md#first-session-after-an-install-or-upgrade), deren Flags noch nicht eingetroffen sind.

433 433 

434Claude Code überspringt auch einzelne Vorschläge in mehreren Situationen, einschließlich:434Claude Code überspringt einzelne Vorschläge außerdem in verschiedenen Situationen, darunter:

435 435 

436* Der Prompt-Cache ist kalt, um unnötige Kosten zu vermeiden436* Der Prompt-Cache ist kalt, um unnötige Kosten zu vermeiden

437* Nach dem ersten Zug eines Gesprächs in einigen Sitzungen437* Nach dem ersten Turn einer Konversation, in manchen Sitzungen

438* Die vorherige Antwort endete mit einem Fehler438* Die vorherige Antwort endete mit einem Fehler

439* Während Sie sich im Plan Mode befinden439* Während Sie sich im Plan-Modus befinden

440* Ihr Konto ist nahe an seinem Nutzungslimit oder hat es erreicht. Damit dieses Überspringen erst beim Erreichen des Limits greift, setzen Sie [`CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION`](https://code.claude.com/docs/de/env-vars) auf `true`. Vor v2.1.238 übersprang Claude Code Vorschläge in der Nähe des Limits auch mit der auf `true` gesetzten Variablen440* Ihr Konto hat sein Nutzungslimit fast oder ganz erreicht. Damit dieses Überspringen erst greift, wenn Sie das Limit erreichen, setzen Sie [`CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION`](https://code.claude.com/docs/de/env-vars) auf `true`. Vor v2.1.238 hat Claude Code Vorschläge nahe dem Limit auch dann übersprungen, wenn die Variable auf `true` gesetzt war

441* In einem [Agent-Team](https://code.claude.com/docs/de/agent-teams.md), standardmäßig in den Sitzungen von Teamkollegen. Die Sitzung des Leiters zeigt Vorschläge441* In einem [Agent-Team](https://code.claude.com/docs/de/agent-teams.md) standardmäßig in den Sitzungen der Teammitglieder. Die Sitzung des Leiters zeigt Vorschläge an

442 442 

443Der Hinweis `Showing fewer prompt suggestions · use one to bring them back` bedeutet, dass Claude Code Vorschläge seltener anzeigt, weil Sie viele nacheinander ungenutzt gelassen haben. Um zur üblichen Häufigkeit zurückzukehren, verwenden Sie einen Vorschlag oder setzen Sie [`CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION`](https://code.claude.com/docs/de/env-vars) auf `true`.443Der Hinweis `Showing fewer prompt suggestions · use one to bring them back` bedeutet, dass Claude Code Vorschläge seltener anzeigt, weil Sie viele hintereinander ungenutzt gelassen haben. Um zur üblichen Häufigkeit zurückzukehren, verwenden Sie einen Vorschlag oder setzen Sie [`CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION`](https://code.claude.com/docs/de/env-vars) auf `true`.

444 444 

445Im Druckmodus generiert Claude Code standardmäßig keine Vorschläge. Übergeben Sie [`--prompt-suggestions`](https://code.claude.com/docs/de/cli-reference#cli-flags) mit `-p "<prompt>" --output-format stream-json --verbose`, damit Claude Code nach jedem Zug, der einen generiert, eine `prompt_suggestion`-Nachricht ausgibt. Der Generator überspringt auch hier sehr kurze Gespräche und kalte Prompt-Caches, sodass eine einzelne kurze `-p`-Abfrage keine ausgeben kann.445Im Print-Modus erzeugt Claude Code standardmäßig keine Vorschläge. Übergeben Sie [`--prompt-suggestions`](https://code.claude.com/docs/de/cli-reference#cli-flags) zusammen mit `-p "<prompt>" --output-format stream-json --verbose`, damit Claude Code nach jedem Turn, der einen Vorschlag erzeugt, eine `prompt_suggestion`-Nachricht ausgibt. Der Generator überspringt auch hier sehr kurze Konversationen und kalte Prompt-Caches, sodass eine einzelne kurze `-p`-Abfrage möglicherweise keinen Vorschlag ausgibt.

446 446 

447### Eingabeaufforderungsvorschläge ausschalten447### Prompt-Vorschläge ausschalten

448 448 

449Um Eingabeaufforderungsvorschläge vollständig zu deaktivieren, verwenden Sie eine der folgenden Optionen:449Um Prompt-Vorschläge vollständig zu deaktivieren, verwenden Sie eine der folgenden Möglichkeiten:

450 450 

451* Schalten Sie **Eingabeaufforderungsvorschläge** in `/config` aus451* Schalten Sie **Prompt suggestions** in `/config` aus

452* Setzen Sie [`promptSuggestionEnabled`](https://code.claude.com/docs/de/settings-reference#promptsuggestionenabled) in Ihrer Einstellungsdatei auf `false`452* Setzen Sie [`promptSuggestionEnabled`](https://code.claude.com/docs/de/settings-reference#promptsuggestionenabled) in Ihrer Einstellungsdatei auf `false`

453* Setzen Sie die Umgebungsvariable [`CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION`](https://code.claude.com/docs/de/env-vars) auf `false`, die Vorrang vor der Einstellung hat:453* Setzen Sie die Umgebungsvariable [`CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION`](https://code.claude.com/docs/de/env-vars) auf `false`; sie hat Vorrang vor der Einstellung:

454 ```bash theme={null}454 ```bash theme={null}

455 export CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION=false455 export CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION=false

456 ```456 ```

457 457 

458Um Eingabeaufforderungsvorschläge organisationsweit auszuschalten, setzen Sie `promptSuggestionEnabled` in [verwalteten Einstellungen](https://code.claude.com/docs/de/managed-settings.md) auf `false`. Setzen Sie auch `CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION` auf `false` unter dem verwalteten Schlüssel [`env`](https://code.claude.com/docs/de/settings-reference#env), damit Benutzer diese nicht mit ihrer eigenen Umgebungsvariablen erneut aktivieren können.458Um Prompt-Vorschläge für eine gesamte Organisation auszuschalten, setzen Sie `promptSuggestionEnabled` in den [verwalteten Einstellungen](https://code.claude.com/docs/de/managed-settings.md) auf `false`. Setzen Sie außerdem `CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION` unter dem verwalteten Schlüssel [`env`](https://code.claude.com/docs/de/settings-reference#env) auf `false`, damit Benutzer sie nicht mit ihrer eigenen Umgebungsvariable wieder aktivieren können.

459 459 

460## „You should know“-Vorschläge460## „You should know“-Vorschläge

461 461 


619 619 

620## Unsichtbare Zeichen in Prompts620## Unsichtbare Zeichen in Prompts

621 621 

622Eingefügter Text kann Unicode-Zeichen enthalten, die ein Terminal überhaupt nicht anzeigt, wie Tag-Zeichen, bidirektionale Steuerzeichen und Leerzeichen mit Nullbreite, sodass ein Prompt Text enthalten kann, den Sie nie sehen. Um zu verhindern, dass kopierter Text Anweisungen enthält, die Ihr Terminal nicht anzeigt, entfernt Claude Code diese Zeichen, wenn Sie die Eingabetaste drücken, bevor etwas gesendet wird. Es bereinigt sowohl den Prompt als auch den Inhalt aller eingeklappten [Verweise auf eingefügten Text](https://code.claude.com/docs/de/terminal-config.md#paste-large-content), die der Prompt enthält. Claude Code behält die Verbinder bei, die persische und indische Schriften schreiben, sowie die Selektoren in Emoji-Sequenzen.622Eingefügter Text kann Unicode-Zeichen enthalten, die ein Terminal überhaupt nicht darstellt, etwa Tag-Zeichen, bidirektionale Steuerzeichen und Leerzeichen ohne Breite. Ein Prompt kann also Text enthalten, den Sie nie sehen. Damit kopierter Text keine Anweisungen einschleust, die Ihr Terminal nicht anzeigt, entfernt Claude Code diese Zeichen, wenn Sie Enter drücken, bevor irgendetwas gesendet wird. Bereinigt werden sowohl der Prompt als auch der Inhalt jeder eingeklappten [Referenz auf eingefügten Text](https://code.claude.com/docs/de/terminal-config.md#paste-large-content), die der Prompt enthält. Claude Code behält die Verbindungszeichen bei, die in persischen und indischen Schriften verwendet werden, sowie die Selektoren innerhalb von Emoji-Sequenzen.

623 623 

624Wenn Claude Code etwas entfernt hat, sendet diese Eingabetaste nichts. Der bereinigte Prompt wird mit einer Meldung wie `Removed 3 invisible characters · review and press Enter to send` in das Eingabefeld zurückgesetzt, und das erneute Drücken der Eingabetaste sendet den Text wie angezeigt.624Wenn Claude Code etwas entfernt hat, sendet dieses Drücken von Enter nichts. Der bereinigte Prompt wird zurück in das Eingabefeld gesetzt, zusammen mit einem Hinweis wie `Removed 3 invisible characters · review and press Enter to send`. Wenn Sie erneut Enter drücken, wird der Text so gesendet, wie er angezeigt wird.

625 625 

626Wenn Sie einen Prompt in der Befehlszeile übergeben, wie in `claude "fix the login bug"`, wartet Claude Code nicht auf eine zweite Eingabetaste. Es entfernt die Zeichen, zeigt eine Meldung an und sendet den bereinigten Prompt. Wenn der bereinigte Prompt mit `/` beginnen würde, setzt Claude Code ihn stattdessen in das Eingabefeld, damit Sie ihn überprüfen und senden können.626Wenn Sie einen Prompt über die Befehlszeile übergeben, etwa mit `claude "fix the login bug"`, wartet Claude Code nicht auf ein zweites Enter. Es entfernt die Zeichen, zeigt einen Hinweis an und sendet den bereinigten Prompt. Würde der bereinigte Prompt mit `/` beginnen, setzt Claude Code ihn stattdessen in das Eingabefeld, damit Sie ihn prüfen und senden können.

627 627 

628## Änderungen mit /diff überprüfen628## Änderungen mit /diff überprüfen

629 629 


738 738 

739```text theme={null}739```text theme={null}

740Usage limit reached · limit resets 3:45pm740Usage limit reached · limit resets 3:45pm

741Continuing automatically at 3:45pm · esc to cancel741Continuing automatically at 3:45pm · Esc to cancel

742```742```

743 743 

744Beide Zeilen können nach diesen Worten weitere Angaben enthalten, etwa einen Hilfelink in der ersten oder `/usage-credits to continue now` in der zweiten. Wenn das Warten von selbst beginnt, wird dies auch in der Konversation mit einer Zeile vermerkt, die `Usage limit reached · continuing automatically at 3:45pm · esc to cancel` lautet.744Beide Zeilen können nach diesen Worten weitere Angaben enthalten, etwa einen Hilfelink in der ersten oder `/usage-credits to continue now` in der zweiten. Wenn das Warten von selbst beginnt, wird dies auch in der Konversation mit einer Zeile vermerkt, die `Usage limit reached · continuing automatically at 3:45pm · esc to cancel` lautet.

745 745 

746Halten Sie die Sitzung offen. Was als Nächstes geschieht, hängt davon ab, wie das Warten endet:746Halten Sie die Sitzung offen. Was als Nächstes geschieht, hängt davon ab, wie das Warten endet:

747 747 

748* **Beim Zurücksetzen**: Die zweite Zeile ändert sich zu `Continuing shortly · esc to cancel`. Anschließend erscheint `Usage limit reset · continuing automatically` in der Konversation, und Claude Code fordert Claude auf, die Aufgabe dort fortzusetzen, wo sie unterbrochen wurde. Es sendet Ihre letzte Nachricht nicht erneut.748* **Beim Zurücksetzen**: Die zweite Zeile ändert sich zu `Continuing shortly · Esc to cancel`. Anschließend erscheint `Usage limit reset · Continuing automatically` in der Konversation, und Claude Code fordert Claude auf, die Aufgabe dort fortzusetzen, wo sie unterbrochen wurde. Es sendet Ihre letzte Nachricht nicht erneut.

749* **Nach dem Ruhezustand Ihres Computers**: Wenn dieser länger als etwa 30 Minuten im Ruhezustand war und das Limit während des Ruhezustands zurückgesetzt wurde, lautet die erste Zeile `Your usage limit has reset` und die zweite `Press enter to continue`. Drücken Sie `Enter`, um fortzufahren. Nach einem kürzeren Ruhezustand oder einem, der vor dem Zurücksetzen endete, setzt Claude Code automatisch fort.749* **Nach dem Ruhezustand Ihres Computers**: Wenn dieser länger als etwa 30 Minuten im Ruhezustand war und das Limit während des Ruhezustands zurückgesetzt wurde, lautet die erste Zeile `Your usage limit has reset` und die zweite `Press enter to continue`. Drücken Sie `Enter`, um fortzufahren. Nach einem kürzeren Ruhezustand oder einem, der vor dem Zurücksetzen endete, setzt Claude Code automatisch fort.

750* **Früher**: Wenn Sie während des Wartens [Nutzungsguthaben](https://code.claude.com/docs/de/costs.md#add-usage-credits-to-your-subscription) mit `/usage-credits` hinzufügen, sich nach `/upgrade` erneut anmelden oder Modelle mit `/model` wechseln, prüft Claude Code, ob die Nutzung wieder verfügbar ist, und setzt sofort fort, falls dies der Fall ist. Es prüft nicht nach einem Upgrade oder Kauf, den Sie selbst in einem Browser durchführen. Unter [`opusplan`](https://code.claude.com/docs/de/model-config#opusplan-model-setting) und anderen Modelleinstellungen, die den Plan Mode auf einem anderen Modell ausführen, wartet Claude Code stattdessen auf das Zurücksetzen.750* **Früher**: Wenn Sie während des Wartens [Nutzungsguthaben](https://code.claude.com/docs/de/costs.md#add-usage-credits-to-your-subscription) mit `/usage-credits` hinzufügen, sich nach `/upgrade` erneut anmelden oder Modelle mit `/model` wechseln, prüft Claude Code, ob die Nutzung wieder verfügbar ist, und setzt sofort fort, falls dies der Fall ist. Es prüft nicht nach einem Upgrade oder Kauf, den Sie selbst in einem Browser durchführen. Unter [`opusplan`](https://code.claude.com/docs/de/model-config#opusplan-model-setting) und anderen Modelleinstellungen, die den Plan Mode auf einem anderen Modell ausführen, wartet Claude Code stattdessen auf das Zurücksetzen.

751 751 


787 787 

788## PR-Review-Status788## PR-Review-Status

789 789 

790Wenn Sie an einem Branch mit einem offenen Pull Request arbeiten, zeigt Claude Code einen anklickbaren PR-Link in der Fußzeile an, z. B. „PR #446“. Der Link hat eine farbige Unterlinie, die den Review-Status anzeigt:790Wenn Sie an einem Branch mit einem offenen Pull Request arbeiten, zeigt Claude Code in der Fußzeile einen anklickbaren PR-Link an, z. B. „PR #446“. Der Link hat eine farbige Unterstreichung, die den Review-Status angibt:

791 791 

792* Grün: genehmigt792* Grün: genehmigt

793* Gelb: Review ausstehend793* Gelb: Review ausstehend

794* Rot: Änderungen angefordert794* Rot: Änderungen angefordert

795* Grau: Entwurf795* Grau: Entwurf

796 796 

797Das Badge verschwindet, sobald der Pull Request zusammengeführt oder geschlossen wird.797Das Badge verschwindet, sobald der Pull Request gemergt oder geschlossen wird.

798 798 

799`Cmd+Klick` (macOS) oder `Strg+Klick` (Windows/Linux) auf den Link, um den Pull Request in Ihrem Browser zu öffnen.799Klicken Sie mit `Cmd+click` (macOS) oder `Ctrl+click` (Windows/Linux) auf den Link, um den Pull Request in Ihrem Browser zu öffnen.

800 800 

801Der Status wird aktualisiert, sobald ein `git push` oder ein `gh pr`-Befehl, der den Pull Request ändert, wie `gh pr create` oder `gh pr merge`, in der Sitzung erfolgreich ist.801Der Status wird aktualisiert, sobald in der Sitzung ein `git push` oder ein `gh pr`-Befehl, der den Pull Request ändert, wie z. B. `gh pr create` oder `gh pr merge`, erfolgreich ausgeführt wird.

802 802 

803Claude Code rendert das Badge als Hyperlink, auch wenn es keine Hyperlink-Unterstützung in Ihrem Terminal erkennen kann, was häufig über SSH oder in tmux vorkommt. Setzen Sie [`FORCE_HYPERLINK=0`](https://code.claude.com/docs/de/env-vars), um das Badge als Klartext zu rendern.803Claude Code stellt das Badge auch dann als Hyperlink dar, wenn es keine Hyperlink-Unterstützung in Ihrem Terminal erkennen kann, was häufig über SSH oder in tmux der Fall ist. Setzen Sie [`FORCE_HYPERLINK=0`](https://code.claude.com/docs/de/env-vars), um das Badge als reinen Text darzustellen.

804 804 

805Wenn Sie [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](https://code.claude.com/docs/de/env-vars) setzen, prüft Claude Code den Pull Request- oder Merge Request-Status nicht.805Wenn Sie [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](https://code.claude.com/docs/de/env-vars) setzen, prüft Claude Code den Status von Pull Requests und Merge Requests nicht.

806 806 

807> [!NOTE]807> [!NOTE]

808>808>

809> Der PR-Status für GitHub-Repositorys benötigt ein GitHub-Token. Claude Code findet eines basierend auf dem Host des Remote:809> Der PR-Status für GitHub-Repositorys benötigt ein GitHub-Token. Claude Code ermittelt eines anhand des Hosts des Remotes:

810>810>

811> * **github.com**: `GH_TOKEN` oder `GITHUB_TOKEN`, oder das Token, das von `gh auth login` gespeichert wurde. Ohne eines zeigt die Fußzeile `install gh for PR status` an, wenn die `gh` CLI nicht installiert ist, oder `gh auth login for PR status`, wenn sie installiert ist811> * **github.com**: `GH_TOKEN` oder `GITHUB_TOKEN` oder das von `gh auth login` gespeicherte Token. Ohne Token zeigt die Fußzeile `install gh for PR status` an, wenn die `gh` CLI nicht installiert ist, oder `gh auth login for PR status`, wenn sie installiert ist

812> * **Ein GitHub Enterprise-Host, der als `GH_HOST` gesetzt ist**: `GH_ENTERPRISE_TOKEN` oder `GITHUB_ENTERPRISE_TOKEN`, oder das Token, das von `gh auth login --hostname <host>` gespeichert wurde. Ohne eines zeigt die Fußzeile die gleichen Hinweise812> * **Ein als `GH_HOST` festgelegter GitHub-Enterprise-Host**: `GH_ENTERPRISE_TOKEN` oder `GITHUB_ENTERPRISE_TOKEN` oder das von `gh auth login --hostname <host>` gespeicherte Token. Ohne Token zeigt die Fußzeile dieselben Hinweise an

813> * **Jeder andere GitHub-Host**: das Token, das von `gh auth login --hostname <host>` gespeichert wurde. Ohne eines zeigt Claude Code kein Badge und keinen Hinweis813> * **Jeder andere GitHub-Host**: das von `gh auth login --hostname <host>` gespeicherte Token. Ohne Token zeigt Claude Code weder ein Badge noch einen Hinweis an

814 814 

815### GitLab Merge Requests815### GitLab Merge Requests

816 816 

817Wenn Sie an einem Branch mit einem offenen GitLab Merge Request arbeiten, zeigt Claude Code ein anklickbares `MR !N`-Badge in der Fußzeile an, das ansonsten den GitHub PR-Link enthält. `!N` ist GitLabs eigene Referenzsyntax für Merge Request Nummer N. Die farbige Unterlinie zeigt den Status des Merge Request:817Wenn Sie an einem Branch mit einem offenen GitLab Merge Request arbeiten, zeigt Claude Code ein anklickbares `MR !N`-Badge in dem Bereich der Fußzeile an, der sonst den GitHub-PR-Link enthält. `!N` ist GitLabs eigene Referenzsyntax für Merge Request Nummer N. Die farbige Unterstreichung zeigt den Status des Merge Requests an:

818 818 

819* Grün: GitLab meldet, dass der Merge Request zusammenführbar ist819* Grün: GitLab meldet den Merge Request als mergebar

820* Gelb: jeder andere offene Status820* Gelb: jeder andere offene Status

821* Grau: Entwurf821* Grau: Entwurf

822 822 

823Das Badge verschwindet, sobald der Merge Request zusammengeführt oder geschlossen wird.823Das Badge verschwindet, sobald der Merge Request gemergt oder geschlossen wird.

824 824 

825Es wird aktualisiert, sobald ein `git push` oder ein `glab mr`-Befehl, der den Merge Request ändert, wie `glab mr create` oder `glab mr merge`, in der Sitzung erfolgreich ist.825Es wird aktualisiert, sobald in der Sitzung ein `git push` oder ein `glab mr`-Befehl, der den Merge Request ändert, wie z. B. `glab mr create` oder `glab mr merge`, erfolgreich ausgeführt wird.

826 826 

827Um das Badge zu erhalten, benötigen Sie:827Für das Badge benötigen Sie:

828 828 

829* Claude Code v2.1.234 oder später829* Claude Code v2.1.234 oder höher

830* Ein Repository-Remote, das auf Ihren GitLab-Host verweist, entweder gitlab.com oder eine selbstverwaltete Instanz830* Ein Repository-Remote, das auf Ihren GitLab-Host verweist, entweder gitlab.com oder eine selbstverwaltete Instanz

831* Die [`glab` CLI](https://gitlab.com/gitlab-org/cli) auf Ihrem `PATH`, authentifiziert mit `glab auth login`831* Die [`glab` CLI](https://gitlab.com/gitlab-org/cli) in Ihrem `PATH`, authentifiziert mit `glab auth login`

832 832 

833Claude Code ignoriert `glab`s Token-Umgebungsvariablen, wie `GITLAB_TOKEN`, wenn es den Status prüft, sodass Sie kein Badge von einem exportierten Token allein erhalten. Claude Code sucht auch nach `glab` und nach seinem Login einmal pro Sitzung, daher starten Sie Claude Code neu, nachdem Sie `glab` installiert haben oder `glab auth login` ausgeführt haben.833Claude Code ignoriert bei der Statusprüfung die Token-Umgebungsvariablen von `glab`, wie z. B. `GITLAB_TOKEN`, sodass Sie allein durch ein exportiertes Token kein Badge erhalten. Claude Code sucht außerdem nur einmal pro Sitzung nach `glab` und dessen Anmeldung. Starten Sie Claude Code daher neu, nachdem Sie `glab` installiert oder `glab auth login` ausgeführt haben.

834 834 

835## Verweislinks für Probleme835## Verweislinks für Probleme

836 836 

keybindings.md +249 −249

Details

47| Kontext | Beschreibung |47| Kontext | Beschreibung |

48| :- | :- |48| :- | :- |

49| `Global` | Gilt überall in der App |49| `Global` | Gilt überall in der App |

50| `Chat` | Haupteingabebereich für Chat |50| `Chat` | Haupteingabebereich des Chats |

51| `Autocomplete` | Autocomplete-Menü ist offen |51| `Autocomplete` | Das Menü für die automatische Vervollständigung ist geöffnet |

52| `Settings` | Einstellungsmenü |52| `Settings` | Einstellungsmenü |

53| `Confirmation` | Berechtigungs- und Bestätigungsdialoge |53| `Confirmation` | Berechtigungs- und Bestätigungsdialoge |

54| `Tabs` | Tab-Navigationskomponenten |54| `Tabs` | Komponenten für die Tab-Navigation |

55| `Help` | Hilfemenü ist sichtbar |55| `Help` | Das Hilfemenü ist sichtbar |

56| `Transcript` | Transkript-Viewer |56| `Transcript` | Transkript-Ansicht |

57| `HistorySearch` | Verlaufssuchmodus (Strg+R) |57| `HistorySearch` | Modus für die Verlaufssuche (Ctrl+R) |

58| `Task` | Eine Aufgabe wird im Vordergrund ausgeführt |58| `Task` | Eine Aufgabe wird im Vordergrund ausgeführt |

59| `ThemePicker` | Design-Auswahldialog |59| `ThemePicker` | Dialog zur Theme-Auswahl |

60| `Attachments` | Bildanhang-Navigation in Auswahldialogen |60| `Attachments` | Navigation durch Bildanhänge in Auswahldialogen |

61| `Footer` | Fußzeilenindikator-Navigation (Aufgaben, Teams, Diff, Artefakte) |61| `Footer` | Navigation durch Indikatoren in der Fußzeile (Aufgaben, Teams, Diff, Artefakte) |

62| `MessageSelector` | Zurückspulen und Zusammenfassungsdialog-Nachrichtenauswahl |62| `MessageSelector` | Nachrichtenauswahl im Dialog zum Zurückspulen und Zusammenfassen |

63| `DiffDialog` | [Diff-Viewer](#diff-actions)-Navigation |63| `DiffDialog` | Navigation in der [Diff-Ansicht](#diff-actions) |

64| `DiffPanel` | Das [Diff-Panel](https://code.claude.com/docs/de/interactive-mode.md#diff-panel) ist offen |64| `DiffPanel` | Das [Diff-Panel](https://code.claude.com/docs/de/interactive-mode.md#diff-panel) ist geöffnet |

65| `ModelPicker` | Modellauswahl-Aufwandsstufe |65| `ModelPicker` | Effort-Stufe in der Modellauswahl |

66| `EffortSlider` | Aufwandsregler, geöffnet durch `/effort` |66| `EffortSlider` | Effort-Schieberegler, der mit `/effort` geöffnet wird |

67| `Select` | Generische Auswahl-/Listenkomponenten |67| `Select` | Generische Auswahl-/Listenkomponenten |

68| `Plugin` | Plugin-Dialog (durchsuchen, entdecken, verwalten) |68| `Plugin` | Plugin-Dialog (durchsuchen, entdecken, verwalten) |

69| `AbovePrompt` | Die [Leiste über dem Prompt](#above-prompt-actions) oder eine Schaltfläche darin hat den Tastaturfokus |69| `AbovePrompt` | Der [Bereich über dem Prompt](#above-prompt-actions) oder eine Schaltfläche darin hat den Tastaturfokus |

70| `AbovePromptInput` | Ein Eingabefeld in der Leiste über dem Prompt oder im Bereich eines Mods hat den Tastaturfokus |70| `AbovePromptInput` | Ein Eingabefeld im Bereich über dem Prompt oder im Bereich eines Mods hat den Tastaturfokus |

71| `AbovePromptSelect` | Eine Auswahl in der Leiste über dem Prompt oder im Bereich eines Mods hat den Tastaturfokus |71| `AbovePromptSelect` | Eine Auswahl im Bereich über dem Prompt oder im Bereich eines Mods hat den Tastaturfokus |

72| `Pane` | Ein von einem [Mod](https://code.claude.com/docs/de/plugins/mods/interface.md#know-which-keys-your-mod-can-receive) gezeichneter Bereich hat den Tastaturfokus |72| `Pane` | Ein von einem [Mod](https://code.claude.com/docs/de/plugins/mods/interface.md#know-which-keys-your-mod-can-receive) gezeichneter Bereich hat den Tastaturfokus |

73| `PaneField` | Ein Eingabefeld oder eine Auswahl im Bereich eines Mods hat den Tastaturfokus |73| `PaneField` | Ein Eingabefeld oder eine Auswahl im Bereich eines Mods hat den Tastaturfokus |

74| `Agents` | [Agent-Ansicht](https://code.claude.com/docs/de/agent-view.md) (`claude agents`) |74| `Agents` | [Agentenansicht](https://code.claude.com/docs/de/agent-view.md) (`claude agents`) |

75| `Scroll` | Konversations-Scrolling und Textauswahl im Vollbildmodus |75| `Scroll` | Scrollen in der Konversation und Textauswahl im Vollbildmodus |

76 76 

77Vor v2.1.205 existierten ein `Doctor`-Kontext und eine `doctor:fix`-Aktion für den `/doctor`-Diagnosebildschirm.77Vor v2.1.205 gab es für den Diagnosebildschirm von `/doctor` einen `Doctor`-Kontext und eine `doctor:fix`-Aktion.

78 78 

79## Verfügbare Aktionen79## Verfügbare Aktionen

80 80 

81Aktionen folgen einem `namespace:action`-Format, wie `chat:submit` zum Senden einer Nachricht oder `app:toggleTodos` zum Anzeigen der Aufgabenliste. Jeder Kontext hat spezifische verfügbare Aktionen.81Aktionen folgen dem Format `namespace:action`, beispielsweise `chat:submit` zum Senden einer Nachricht oder `app:toggleTodos` zum Anzeigen der Aufgabenliste. Jeder Kontext verfügt über spezifische verfügbare Aktionen.

82 82 

83### App-Aktionen83### App-Aktionen

84 84 

85Aktionen verfügbar im `Global`-Kontext:85Im Kontext `Global` verfügbare Aktionen:

86 86 

87| Aktion | Standard | Beschreibung |87| Aktion | Standard | Beschreibung |

88| :- | :- | :- |88| :- | :- | :- |

89| `app:interrupt` | Ctrl+C | Aktuelle Operation abbrechen |89| `app:interrupt` | Ctrl+C | Aktuellen Vorgang abbrechen |

90| `app:exit` | Ctrl+D | Claude Code beenden. Zweimal innerhalb von 800 ms drücken, um zu bestätigen |90| `app:exit` | Ctrl+D | Claude Code beenden. Zum Bestätigen innerhalb von 800 ms zweimal drücken |

91| `app:redraw` | (nicht gebunden) | Bildschirm neu zeichnen erzwingen |91| `app:redraw` | (nicht belegt) | Neuzeichnen des Terminals erzwingen |

92| `app:toggleTodos` | Ctrl+T | Sichtbarkeit der Aufgabenliste von Claude umschalten. Dies ist nicht die [`/tasks`](https://code.claude.com/docs/de/commands) Hintergrund-Aufgabenansicht |92| `app:toggleTodos` | Ctrl+T | Sichtbarkeit von Claudes To-do-Checkliste umschalten. Dies ist nicht die Ansicht für Hintergrundaufgaben von [`/tasks`](https://code.claude.com/docs/de/commands) |

93| `app:toggleTranscript` | Ctrl+O | Ausführliches Transkript umschalten |93| `app:toggleTranscript` | Ctrl+O | Ausführliches Transkript umschalten |

94 94 

95### Verlaufsaktionen95### Verlaufsaktionen


99| Aktion | Standard | Beschreibung |99| Aktion | Standard | Beschreibung |

100| :- | :- | :- |100| :- | :- | :- |

101| `history:search` | Ctrl+R | Verlaufssuche öffnen |101| `history:search` | Ctrl+R | Verlaufssuche öffnen |

102| `history:previous` | Oben | Vorheriges Verlaufselement |102| `history:previous` | Up | Vorheriger Verlaufseintrag |

103| `history:next` | Unten | Nächstes Verlaufselement |103| `history:next` | Down | Nächster Verlaufseintrag |

104 104 

105### Chat-Aktionen105### Chat-Aktionen

106 106 

107Aktionen verfügbar im `Chat`-Kontext:107Im Kontext `Chat` verfügbare Aktionen:

108 108 

109| Aktion | Standard | Beschreibung |109| Aktion | Standard | Beschreibung |

110| :- | :- | :- |110| :- | :- | :- |

111| `chat:cancel` | Escape | Aktuelle Eingabe abbrechen |111| `chat:cancel` | Escape | Aktuelle Eingabe abbrechen |

112| `chat:clearInput` | Ctrl+L | Vollständiges Bildschirm-Neuzeichnen erzwingen, Eingabe und Konversation beibehalten |112| `chat:clearInput` | Ctrl+L | Vollständiges Neuzeichnen des Bildschirms erzwingen, wobei Eingabe und Konversation erhalten bleiben |

113| `chat:clearScreen` | Cmd+K | Dasselbe wie `chat:clearInput`. Siehe [Konversation löschen](https://code.claude.com/docs/de/fullscreen.md#clear-the-conversation), um zu erfahren, wie sich Cmd+K auf iTerm2 und Terminal.app verhält |113| `chat:clearScreen` | Cmd+K | Wie `chat:clearInput`. Unter [Konversation leeren](https://code.claude.com/docs/de/fullscreen.md#clear-the-conversation) erfahren Sie, wie sich Cmd+K in iTerm2 und Terminal.app verhält |

114| `chat:killAgents` | Ctrl+X Ctrl+K | Alle laufenden [Hintergrund-Subagenten](https://code.claude.com/docs/de/sub-agents.md#run-subagents-in-foreground-or-background) in dieser Sitzung beenden und [automatische Artefakt-Antworten](https://code.claude.com/docs/de/artifacts.md#let-claude-reply-to-comments-on-its-own) für den Rest der Sitzung ausschalten. Drücken Sie die Tastenkombination zweimal innerhalb von 3 Sekunden, um zu bestätigen. Sie können sie auch drücken, während die Berechtigungsabfrage eines Hintergrund-Subagenten geöffnet ist |114| `chat:killAgents` | Ctrl+X Ctrl+K | Alle laufenden [Hintergrund-Subagenten](https://code.claude.com/docs/de/sub-agents.md#run-subagents-in-foreground-or-background) in dieser Sitzung stoppen und [automatische Antworten auf Artefakte](https://code.claude.com/docs/de/artifacts.md#let-claude-reply-to-comments-on-its-own) für den Rest der Sitzung ausschalten. Drücken Sie die Tastenkombination zum Bestätigen innerhalb von 3 Sekunden zweimal. Sie können sie drücken, während die Berechtigungsabfrage eines Hintergrund-Subagenten geöffnet ist |

115| `chat:cycleMode` | Shift+Tab\* | Berechtigungsmodi durchlaufen |115| `chat:cycleMode` | Shift+Tab\* | Berechtigungsmodi durchschalten |

116| `chat:modelPicker` | Meta+P | Modell-Picker öffnen |116| `chat:modelPicker` | Meta+P | Modellauswahl öffnen |

117| `chat:fastMode` | Meta+O | Schnellmodus umschalten |117| `chat:fastMode` | Meta+O | Fast-Modus umschalten |

118| `chat:thinkingToggle` | Meta+T | Erweitertes Denken umschalten |118| `chat:thinkingToggle` | Meta+T | Extended Thinking umschalten |

119| `chat:submit` | Enter | Nachricht senden |119| `chat:submit` | Enter | Nachricht senden |

120| `chat:queueSubmit` | Ctrl+X Enter | Nachricht senden, markiert zum Warten auf ihren Platz: Während Claude arbeitet, [reiht Claude Code sie ein](https://code.claude.com/docs/de/interactive-mode.md#queue-messages-while-claude-works) und unterbricht den Zug nie. Im Gegensatz zu `chat:submit` sendet es den Entwurf auch, wenn Autovervollständigungsvorschläge offen sind. Erfordert v2.1.247 oder später |120| `chat:queueSubmit` | Ctrl+X Enter | Die Nachricht senden, markiert als wartend, bis sie an der Reihe ist: Während Claude arbeitet, [reiht Claude Code sie in die Warteschlange ein](https://code.claude.com/docs/de/interactive-mode.md#queue-messages-while-claude-works) und unterbricht den Turn nie. Anders als `chat:submit` sendet diese Aktion den Entwurf auch dann, wenn ein Vorschlag der Autovervollständigung hervorgehoben ist. Erfordert v2.1.247 oder höher |

121| `chat:sendNow` | Ctrl+Enter, Ctrl+X Ctrl+S | Senden Sie Ihre [eingereihten Nachrichten](https://code.claude.com/docs/de/interactive-mode.md#queue-messages-while-claude-works) und Ihren Entwurf mit ihnen sofort ab. [Wenn Claude Code das sendet, was Sie eingereicht haben](https://code.claude.com/docs/de/interactive-mode.md#when-claude-code-sends-what-you-queued) behandelt, was mit dem Zug passiert, an dem Claude arbeitet. Wenn nichts läuft, sendet der Schlüssel den Entwurf, und im [Shell-Modus](https://code.claude.com/docs/de/interactive-mode.md#shell-mode-with-prefix) reiht er nur den Befehl ein. Terminals, die erweiterte Tasten nicht melden, liefern `Ctrl+Enter` als einfaches `Enter`, daher ist `Ctrl+X Ctrl+S` die Bindung, die in jedem Terminal funktioniert. Erfordert v2.1.275 oder später |121| `chat:sendNow` | Ctrl+Enter, Ctrl+X Ctrl+S | Ihre [Nachrichten in der Warteschlange](https://code.claude.com/docs/de/interactive-mode.md#queue-messages-while-claude-works) und Ihren Entwurf sofort senden. [Wann Claude Code die Nachrichten in der Warteschlange sendet](https://code.claude.com/docs/de/interactive-mode.md#when-claude-code-sends-what-you-queued) beschreibt, was mit dem Turn geschieht, an dem Claude gerade arbeitet. Wenn nichts läuft, sendet die Taste den Entwurf, und im [Shell-Modus](https://code.claude.com/docs/de/interactive-mode.md#shell-mode-with-prefix) reiht sie den Befehl nur in die Warteschlange ein. Terminals, die erweiterte Tasten nicht melden, liefern `Ctrl+Enter` als einfaches `Enter`, daher ist `Ctrl+X Ctrl+S` die Belegung, die in jedem Terminal funktioniert. Erfordert v2.1.275 oder höher |

122| `chat:newline` | Ctrl+J | Zeilenumbruch einfügen, ohne zu senden |122| `chat:newline` | Ctrl+J | Einen Zeilenumbruch einfügen, ohne zu senden |

123| `chat:undo` | Ctrl+\_, Ctrl+Shift+- | Letzte Aktion rückgängig machen |123| `chat:undo` | Ctrl+\_, Ctrl+Shift+- | Letzte Aktion rückgängig machen |

124| `chat:externalEditor` | Ctrl+G, Ctrl+X Ctrl+E | In externem Editor öffnen. Die [Eingabeverteilung der Agent-Ansicht](https://code.claude.com/docs/de/agent-view.md#keyboard-shortcuts) folgt auch den Eintasten-Bindungen dieser Aktion |124| `chat:externalEditor` | Ctrl+G, Ctrl+X Ctrl+E | Im externen Editor öffnen. Die [Dispatch-Eingabe der Agentenansicht](https://code.claude.com/docs/de/agent-view.md#keyboard-shortcuts) folgt ebenfalls den Einzeltasten-Belegungen dieser Aktion |

125| `chat:stash` | Ctrl+S | Aktuelle Eingabeaufforderung speichern |125| `chat:stash` | Ctrl+S | Aktuellen Prompt zurückstellen |

126| `chat:imagePaste` | Ctrl+V (Alt+V unter Windows und WSL) | Bild aus der Zwischenablage einfügen. Unter WSL sind beide Tastenkombinationen standardmäßig gebunden |126| `chat:imagePaste` | Ctrl+V (Alt+V unter Windows und WSL) | Bild aus der Zwischenablage einfügen. Unter WSL sind standardmäßig beide Tastenkombinationen belegt |

127| `command:<name>` | (nicht gebunden) | Den [Befehl](https://code.claude.com/docs/de/commands.md) `/<name>` ausführen. Zum Beispiel sorgt `"meta+g": "command:compact"` in einem `Chat`-Block dafür, dass `Meta+G` `/compact` ausführt |127| `command:<name>` | (nicht belegt) | Den [Befehl](https://code.claude.com/docs/de/commands.md) `/<name>` ausführen. Beispielsweise bewirkt `"meta+g": "command:compact"` in einem `Chat`-Block, dass `Meta+G` den Befehl `/compact` ausführt |

128 128 

129\*Unter Windows ohne VT-Modus (Node \<24.2.0/\<22.17.0, Bun \<1.2.23) Standard auf Meta+M.129\*Unter Windows ohne VT-Modus (Node \<24.2.0/\<22.17.0, Bun \<1.2.23) lautet der Standard Meta+M.

130 130 

131### Autovervollständigungsaktionen131### Autovervollständigungsaktionen

132 132 

133Aktionen verfügbar im `Autocomplete`-Kontext:133Im Kontext `Autocomplete` verfügbare Aktionen:

134 134 

135| Aktion | Standard | Beschreibung |135| Aktion | Standard | Beschreibung |

136| :- | :- | :- |136| :- | :- | :- |

137| `autocomplete:accept` | Tab | Vorschlag akzeptieren |137| `autocomplete:accept` | Tab | Vorschlag annehmen |

138| `autocomplete:dismiss` | Escape | Menü schließen |138| `autocomplete:dismiss` | Escape | Menü schließen |

139| `autocomplete:previous` | Oben | Vorheriger Vorschlag |139| `autocomplete:previous` | Up | Vorheriger Vorschlag |

140| `autocomplete:next` | Unten | Nächster Vorschlag |140| `autocomplete:next` | Down | Nächster Vorschlag |

141 141 

142### Bestätigungsaktionen142### Bestätigungsaktionen

143 143 

144Aktionen verfügbar im `Confirmation`-Kontext:144Im Kontext `Confirmation` verfügbare Aktionen:

145 145 

146| Aktion | Standard | Beschreibung |146| Aktion | Standard | Beschreibung |

147| :- | :- | :- |147| :- | :- | :- |

148| `confirm:yes` | Enter | Aktion bestätigen |148| `confirm:yes` | Enter | Aktion bestätigen |

149| `confirm:no` | Escape | Aktion ablehnen |149| `confirm:no` | Escape | Aktion ablehnen |

150| `confirm:previous` | Oben | Vorherige Option |150| `confirm:previous` | Up | Vorherige Option |

151| `confirm:next` | Unten | Nächste Option |151| `confirm:next` | Down | Nächste Option |

152| `confirm:nextField` | Tab | Im `/fast`-Dialog den Fast-Modus ein- oder ausschalten |152| `confirm:nextField` | Tab | Im Dialog `/fast` den Fast-Modus ein- oder ausschalten |

153| `confirm:previousField` | (nicht gebunden) | Claude Code reagiert nicht auf diese Aktion, und eine `keybindings.json`, die sie benennt, bleibt gültig |153| `confirm:previousField` | (nicht belegt) | Claude Code reagiert nicht auf diese Aktion, und eine `keybindings.json`, die sie nennt, bleibt gültig |

154| `confirm:toggle` | Leertaste | Auswahl umschalten |154| `confirm:toggle` | Space | Auswahl umschalten |

155| `confirm:cycleMode` | Shift+Tab\* | Schließt bei einer Dateiberechtigungsabfrage ein offenes [Kommentarfeld](https://code.claude.com/docs/de/permissions.md#add-a-comment-when-you-answer-a-permission-prompt); ohne offenes Feld wird die Option ausgewählt, die die Aktion für den Rest der Sitzung zulässt, wenn die Abfrage diese Option anbietet |155| `confirm:cycleMode` | Shift+Tab\* | Schließt bei einer Berechtigungsabfrage für Dateien ein geöffnetes [Kommentarfeld](https://code.claude.com/docs/de/permissions.md#add-a-comment-when-you-answer-a-permission-prompt); ist kein Feld geöffnet, wird die Option ausgewählt, die die Aktion für den Rest der Sitzung erlaubt, sofern die Abfrage diese Option anbietet |

156 156 

157\*Unter Windows ohne VT-Modus (Node \<24.2.0/\<22.17.0, Bun \<1.2.23) Standard auf Meta+M.157\*Unter Windows ohne VT-Modus (Node \<24.2.0/\<22.17.0, Bun \<1.2.23) lautet der Standard Meta+M.

158 158 

159Vor v2.1.257 zeigte eine `confirm:toggleExplanation`-Aktion, standardmäßig an `Ctrl+E` gebunden, eine modellgenerierte Erklärung des Befehls bei Bash- und PowerShell-Berechtigungsaufforderungen.159Vor v2.1.257 zeigte eine Aktion `confirm:toggleExplanation`, standardmäßig mit `Ctrl+E` belegt, bei Berechtigungsabfragen für Bash und PowerShell eine vom Modell generierte Erklärung des Befehls an.

160 160 

161Dialoge verwenden `confirm:yes` und `confirm:no`, um zu akzeptieren und abzubrechen, auch wenn sie keine Ja-oder-Nein-Frage stellen. Wenn Sie einen bloßen Buchstaben wie `y` oder `n` in diesem Kontext binden, wirkt sich der Buchstabe auch auf Dialoge aus, die ihn nie als Taste anzeigen. Ein Dialog, der `y` und `n` als seine Tasten anzeigt, liest diese Buchstaben selbst und benötigt keine Bindung.161Dialoge verwenden `confirm:yes` und `confirm:no` zum Annehmen und Abbrechen, auch wenn sie keine Ja-oder-Nein-Frage stellen. Wenn Sie in diesem Kontext einen einzelnen Buchstaben wie `y` oder `n` belegen, wirkt der Buchstabe auch in Dialogen, die ihn nie als Taste anzeigen. Ein Dialog, der `y` und `n` als seine Tasten anzeigt, liest diese Buchstaben selbst aus und benötigt keine Belegung.

162 162 

163In den meisten Dialogen schließt das Drücken von `Ctrl+C` oder `Ctrl+D` zweimal den Dialog, anstatt Claude Code zu beenden. Der Hinweis nach dem ersten Drücken sagt, ob das zweite Drücken den Dialog schließt oder Claude Code beendet. Beide Tasten sind [reserviert](#reserved-shortcuts) und können nicht neu gebunden werden.163In den meisten Dialogen schließt zweimaliges Drücken von `Ctrl+C` oder `Ctrl+D` den Dialog, anstatt Claude Code zu beenden. Der Hinweis nach dem ersten Drücken gibt an, ob das zweite Drücken den Dialog schließt oder Claude Code beendet. Beide Tasten sind [reserviert](#reserved-shortcuts) und können nicht neu belegt werden.

164 164 

165Dieses Beispiel bindet `y` an `confirm:yes` und `n` an `confirm:no`:165Dieses Beispiel belegt `y` mit `confirm:yes` und `n` mit `confirm:no`:

166 166 

167```json theme={null}167```json theme={null}

168{168{


178}178}

179```179```

180 180 

181Mit diesen Bindungen tippen `y` und `n` immer noch als Buchstaben, während ein [Textfeld](#text-fields) den Fokus hat.181Mit diesen Belegungen geben `y` und `n` weiterhin Buchstaben ein, während ein [Textfeld](#text-fields) den Fokus hat.

182 182 

183Vor v2.1.280 waren `y` auch an `confirm:yes` und `n` an `confirm:no` standardmäßig gebunden. Wenn Sie Ihre `keybindings.json` mit `/keybindings` vor v2.1.280 erstellt haben, listet die Datei beide Bindungen auf und sie bleiben wirksam, bis Sie diese beiden Zeilen löschen.183Vor v2.1.280 war `y` standardmäßig auch mit `confirm:yes` und `n` mit `confirm:no` belegt. Wenn Sie Ihre `keybindings.json` vor v2.1.280 mit `/keybindings` erstellt haben, listet die Datei beide Belegungen auf, und sie bleiben wirksam, bis Sie diese beiden Zeilen löschen.

184 184 

185### Berechtigungsaktionen185### Berechtigungsaktionen

186 186 

187Aktionen verfügbar im `Confirmation`-Kontext für Berechtigungsdialoge:187Im Kontext `Confirmation` für Berechtigungsdialoge verfügbare Aktionen:

188 188 

189| Aktion | Standard | Beschreibung |189| Aktion | Standard | Beschreibung |

190| :- | :- | :- |190| :- | :- | :- |

191| `permission:toggleDebug` | (nicht gebunden) | Claude Code reagiert nicht auf diese Aktion, und eine `keybindings.json`, die sie benennt, bleibt gültig |191| `permission:toggleDebug` | (nicht belegt) | Claude Code reagiert nicht auf diese Aktion, und eine `keybindings.json`, die sie nennt, bleibt gültig |

192 192 

193### Transkript-Aktionen193### Transkript-Aktionen

194 194 

195Aktionen verfügbar im `Transcript`-Kontext:195Im Kontext `Transcript` verfügbare Aktionen:

196 196 

197| Aktion | Standard | Beschreibung |197| Aktion | Standard | Beschreibung |

198| :- | :- | :- |198| :- | :- | :- |

199| `transcript:toggleShowAll` | Ctrl+E | Alle Inhalte anzeigen umschalten |199| `transcript:toggleShowAll` | Ctrl+E | Anzeige aller Inhalte umschalten |

200| `transcript:exit` | q, Ctrl+C, Escape | Transkript-Ansicht beenden |200| `transcript:exit` | q, Ctrl+C, Escape | Transkriptansicht verlassen |

201 201 

202`transcript:toggleShowAll` gilt nur im klassischen Renderer; im [Vollbildrendering](https://code.claude.com/docs/de/fullscreen.md) bietet der Transkript-Viewer keine Show-All-Umschaltung.202`transcript:toggleShowAll` gilt nur im klassischen Renderer; im [Vollbild-Rendering](https://code.claude.com/docs/de/fullscreen.md) bietet der Transkript-Viewer keinen Schalter zum Anzeigen aller Inhalte.

203 203 

204### Verlaufssuch-Aktionen204### Aktionen der Verlaufssuche

205 205 

206Aktionen verfügbar im `HistorySearch`-Kontext:206Im Kontext `HistorySearch` verfügbare Aktionen:

207 207 

208| Aktion | Standard | Beschreibung |208| Aktion | Standard | Beschreibung |

209| :- | :- | :- |209| :- | :- | :- |

210| `historySearch:next` | Ctrl+R | Nächster Treffer |210| `historySearch:next` | Ctrl+R | Nächster Treffer |

211| `historySearch:accept` | Escape, Tab | Auswahl akzeptieren |211| `historySearch:accept` | Escape, Tab | Auswahl übernehmen |

212| `historySearch:cancel` | Ctrl+C | Suche abbrechen |212| `historySearch:cancel` | Ctrl+C | Suche abbrechen |

213| `historySearch:execute` | Enter | Ausgewählten Befehl ausführen |213| `historySearch:execute` | Enter | Ausgewählten Befehl ausführen |

214| `historySearch:cycleScope` | Ctrl+S | Bereich durchlaufen: Sitzung, Projekt, überall |214| `historySearch:cycleScope` | Ctrl+S | Bereich durchschalten: Sitzung, Projekt, überall |

215 215 

216Die Standards für `historySearch:next`, `historySearch:accept`, `historySearch:cancel` und `historySearch:execute` gelten für die Inline-Verlaufssuche im klassischen Renderer, die immer Eingabeaufforderungen aus allen Projekten durchsucht. `historySearch:cycleScope` wird nur im [Vollbildrendering](https://code.claude.com/docs/de/fullscreen.md) wirksam, wo `Ctrl+R` stattdessen einen Suchdialog öffnet und `Ctrl+S` seinen Bereich durchläuft. Die anderen Tasten des Dialogs sind fest und können nicht neu gebunden werden: `Enter` oder `Tab` platziert den hervorgehobenen Treffer in der Eingabeaufforderung und `Esc` bricht ab.216Die Standardbelegungen von `historySearch:next`, `historySearch:accept`, `historySearch:cancel` und `historySearch:execute` gelten für die Inline-Verlaufssuche im klassischen Renderer, die immer Prompts aus allen Projekten durchsucht. `historySearch:cycleScope` wirkt nur im [Vollbild-Rendering](https://code.claude.com/docs/de/fullscreen.md), wo `Ctrl+R` stattdessen einen Suchdialog öffnet und `Ctrl+S` dessen Bereich durchschaltet. Die übrigen Tasten des Dialogs sind fest und können nicht neu belegt werden: `Enter` oder `Tab` übernimmt den hervorgehobenen Treffer in die Prompt-Eingabe, und `Esc` bricht ab.

217 217 

218### Aufgaben-Aktionen218### Aufgabenaktionen

219 219 

220Aktionen verfügbar im `Task`-Kontext:220Im Kontext `Task` verfügbare Aktionen:

221 221 

222| Aktion | Standard | Beschreibung |222| Aktion | Standard | Beschreibung |

223| :- | :- | :- |223| :- | :- | :- |

224| `task:background` | Ctrl+B, Ctrl+X Ctrl+B | Aktuelle Aufgabe in den Hintergrund verschieben |224| `task:background` | Ctrl+B, Ctrl+X Ctrl+B | Aktuelle Aufgabe in den Hintergrund verschieben |

225 225 

226### Design-Aktionen226### Theme-Aktionen

227 227 

228Aktionen verfügbar im `ThemePicker`-Kontext:228Im Kontext `ThemePicker` verfügbare Aktionen:

229 229 

230| Aktion | Standard | Beschreibung |230| Aktion | Standard | Beschreibung |

231| :- | :- | :- |231| :- | :- | :- |

232| `theme:toggleSyntaxHighlighting` | Ctrl+T | Syntaxhervorhebung umschalten |232| `theme:toggleSyntaxHighlighting` | Ctrl+T | Syntaxhervorhebung umschalten |

233 233 

234### Hilfe-Aktionen234### Hilfeaktionen

235 235 

236Aktionen verfügbar im `Help`-Kontext:236Im Kontext `Help` verfügbare Aktionen:

237 237 

238| Aktion | Standard | Beschreibung |238| Aktion | Standard | Beschreibung |

239| :- | :- | :- |239| :- | :- | :- |

240| `help:dismiss` | Escape | Hilfemenü schließen |240| `help:dismiss` | Escape | Hilfemenü schließen |

241 241 

242### Tabs-Aktionen242### Tab-Aktionen

243 243 

244Aktionen verfügbar im `Tabs`-Kontext:244Im Kontext `Tabs` verfügbare Aktionen:

245 245 

246| Aktion | Standard | Beschreibung |246| Aktion | Standard | Beschreibung |

247| :- | :- | :- |247| :- | :- | :- |

248| `tabs:next` | Tab, Rechts | Nächster Tab |248| `tabs:next` | Tab, Right | Nächster Tab |

249| `tabs:previous` | Shift+Tab, Links | Vorheriger Tab |249| `tabs:previous` | Shift+Tab, Left | Vorheriger Tab |

250 250 

251In einem Tabbed-Dialog wechseln `tabs:next` und `tabs:previous` die Tabs, während die Tab-Zeile den Fokus hat. In einigen Dialogen, wie `/help` und `/sandbox`, funktionieren die Tab-Wechsel-Tasten auch von innerhalb des Tab-Inhalts.251In einem Dialog mit Tabs wechseln `tabs:next` und `tabs:previous` die Tabs, während die Tab-Leiste den Fokus hat. In einigen Dialogen, etwa `/help` und `/sandbox`, funktionieren die Tasten zum Wechseln der Tabs auch innerhalb des Tab-Inhalts.

252 252 

253`Oben` und `Unten` verschieben den Fokus zwischen der Tab-Zeile und dem Tab-Inhalt, und eine Liste im Inhalt reagiert nur auf Tasten, wenn sie den Fokus hat.253`Up` und `Down` verschieben den Fokus zwischen der Tab-Leiste und dem Tab-Inhalt, und eine Liste im Inhalt reagiert nur auf Tasten, solange sie den Fokus hat.

254 254 

255### Anhänge-Aktionen255### Anhangsaktionen

256 256 

257Aktionen verfügbar im `Attachments`-Kontext:257Im Kontext `Attachments` verfügbare Aktionen:

258 258 

259| Aktion | Standard | Beschreibung |259| Aktion | Standard | Beschreibung |

260| :- | :- | :- |260| :- | :- | :- |

261| `attachments:next` | Rechts | Nächster Anhang |261| `attachments:next` | Right | Nächster Anhang |

262| `attachments:previous` | Links | Vorheriger Anhang |262| `attachments:previous` | Left | Vorheriger Anhang |

263| `attachments:remove` | Rücktaste, Löschen | Ausgewählten Anhang entfernen |263| `attachments:remove` | Backspace, Delete | Ausgewählten Anhang entfernen |

264| `attachments:exit` | Unten, Escape | Anhang-Navigation beenden |264| `attachments:exit` | Down, Escape | Anhangsnavigation verlassen |

265 265 

266### Fußzeilen-Aktionen266### Fußzeilenaktionen

267 267 

268Aktionen verfügbar im `Footer`-Kontext:268Im Kontext `Footer` verfügbare Aktionen:

269 269 

270| Aktion | Standard | Beschreibung |270| Aktion | Standard | Beschreibung |

271| :- | :- | :- |271| :- | :- | :- |

272| `footer:next` | Rechts | Nächstes Fußzeilen-Element |272| `footer:next` | Right | Nächstes Fußzeilenelement |

273| `footer:previous` | Links | Vorheriges Fußzeilen-Element |273| `footer:previous` | Left | Vorheriges Fußzeilenelement |

274| `footer:up` | Oben, Ctrl+P | In der Fußzeile nach oben navigieren (Auswahl oben aufheben) |274| `footer:up` | Up, Ctrl+P | In der Fußzeile nach oben navigieren (hebt die Auswahl oben auf) |

275| `footer:down` | Unten, Ctrl+N | In der Fußzeile nach unten navigieren |275| `footer:down` | Down, Ctrl+N | In der Fußzeile nach unten navigieren |

276| `footer:openSelected` | Enter | Ausgewähltes Fußzeilen-Element öffnen |276| `footer:openSelected` | Enter | Ausgewähltes Fußzeilenelement öffnen |

277| `footer:clearSelection` | Escape | Fußzeilen-Auswahl löschen |277| `footer:clearSelection` | Escape | Fußzeilenauswahl aufheben |

278| `footer:close` | x | Den ausgewählten [Agenten](https://code.claude.com/docs/de/sub-agents.md#observe-and-steer-running-forks) oder [Workflow](https://code.claude.com/docs/de/workflows.md#manage-runs) stoppen oder seine Zeile ausblenden, wenn er nicht mehr läuft |278| `footer:close` | x | Den ausgewählten [Agenten](https://code.claude.com/docs/de/sub-agents.md#observe-and-steer-running-forks) oder [Workflow](https://code.claude.com/docs/de/workflows.md#manage-runs) stoppen oder seine Zeile ausblenden, wenn er nicht mehr läuft |

279| `footer:dismiss` | (nicht gebunden) | Eine Bindung einer Taste zu dieser Aktion hat keine Auswirkung, und eine `keybindings.json`, die sie benennt, bleibt gültig. Vor v2.1.281 waren Rücktaste und Löschen daran gebunden und schlossen den ausgewählten Artefakt-Link aus der Fußzeile. |279| `footer:dismiss` | (nicht belegt) | Eine Tastenbelegung für diese Aktion hat keine Wirkung, und eine `keybindings.json`, die sie nennt, bleibt gültig. Vor v2.1.281 waren Backspace und Delete mit ihr belegt und blendeten den ausgewählten Artefakt-Link aus der Fußzeile aus. |

280 280 

281Während ein Fußzeilen-Element ausgewählt ist, wie eine Zeile im Agent-Panel unter der Eingabeaufforderung, öffnet `Enter` es auch, wenn Sie `Enter` im `Chat`-Kontext zu `chat:queueSubmit` oder `chat:newline` neu binden.281Während ein Fußzeilenelement ausgewählt ist, etwa eine Zeile im Agentenbereich unterhalb des Prompts, öffnet `Enter` es auch dann, wenn Sie `Enter` im Kontext `Chat` mit `chat:queueSubmit` oder `chat:newline` neu belegen.

282 282 

283`Chat`-Bindungen auf Tasten, die der `Footer`-Kontext nicht bindet, wie `Shift+Tab` für `chat:cycleMode`, funktionieren weiterhin, während ein Element ausgewählt ist.283`Chat`-Belegungen auf Tasten, die der Kontext `Footer` nicht belegt, etwa `Shift+Tab` für `chat:cycleMode`, funktionieren weiterhin, während ein Element ausgewählt ist.

284 284 

285### Nachrichtenauswahl-Aktionen285### Aktionen der Nachrichtenauswahl

286 286 

287In der Nachrichtenliste des [Rewind-Menüs](https://code.claude.com/docs/de/checkpointing.md) bewegen Sie sich durch Nachrichten und wählen eine mit den [Select-Aktionen](#select-actions) und ihren Standardtasten aus. Ihre `Select`-Bindungen für diese Aktionen gelten auch dort. Der `MessageSelector`-Kontext hat keine eigenen Aktionen oder Standardbindungen. Verwenden Sie ihn, um einen Schlüssel nur für diese Liste zu ändern, indem Sie eine Select-Aktion wie `select:accept` in einem `MessageSelector`-Block binden.287In der Nachrichtenliste des [Rewind-Menüs](https://code.claude.com/docs/de/checkpointing.md) bewegen Sie sich mit den [Select-Aktionen](#select-actions) und deren Standardtasten durch die Nachrichten und wählen eine aus. Ihre `Select`-Belegungen für diese Aktionen gelten dort ebenfalls. Der Kontext `MessageSelector` hat keine eigenen Aktionen oder Standardbelegungen. Verwenden Sie ihn, um eine Taste nur für diese Liste zu ändern, indem Sie eine Select-Aktion wie `select:accept` in einem `MessageSelector`-Block belegen.

288 288 

289Dieses Beispiel bindet `o` zum Auswählen der hervorgehobenen Nachricht im Rewind-Menü, ohne andere Listen zu ändern:289Dieses Beispiel belegt `o` so, dass die hervorgehobene Nachricht im Rewind-Menü ausgewählt wird, ohne eine andere Liste zu ändern:

290 290 

291```json theme={null}291```json theme={null}

292{292{


301}301}

302```302```

303 303 

304Vor v2.1.283 ignorierte diese Liste `Select`-Bindungen und hatte ihre eigenen Aktionen: `messageSelector:up`, `messageSelector:down`, `messageSelector:top`, `messageSelector:bottom` und `messageSelector:select`. Wenn Ihre `keybindings.json` einen dieser Namen bindet, bleibt die Bindung in dieser Liste als Select-Aktion wirksam, die dasselbe tut. `Home` und `End` springen zu beiden Enden der Liste; vor v2.1.283 taten das Tasten wie `Shift+K` und `Shift+J` standardmäßig.304Vor v2.1.283 ignorierte diese Liste `Select`-Belegungen und hatte eigene Aktionen: `messageSelector:up`, `messageSelector:down`, `messageSelector:top`, `messageSelector:bottom` und `messageSelector:select`. Wenn Ihre `keybindings.json` einen dieser Namen belegt, funktioniert die Belegung in dieser Liste weiterhin als die Select-Aktion, die dasselbe bewirkt. `Home` und `End` springen an das jeweilige Ende der Liste; vor v2.1.283 taten dies standardmäßig Tasten wie `Shift+K` und `Shift+J`.

305 305 

306### Diff-Aktionen306### Diff-Aktionen

307 307 

308Diese Aktionen wirken nur im früheren Diff-Viewer von Claude Code, den `/diff` außerhalb des [Vollbildrenderings](https://code.claude.com/docs/de/fullscreen.md) öffnet, nachdem Sie den [`cc-plugin-diff`-Mod](https://code.claude.com/docs/de/plugins/mods/overview#mods-built-into-claude-code) in `/plugin` deaktiviert haben. Solange dieser Mod aktiviert ist, öffnet `/diff` stattdessen den [Diff-Dialog](https://code.claude.com/docs/de/interactive-mode.md#diff-dialog). Eine `keybindings.json`, die diese Aktionen benennt, wird in beiden Fällen ohne Fehler geladen.308Diese Aktionen wirken nur im früheren Diff-Viewer von Claude Code, den `/diff` außerhalb des [Vollbild-Renderings](https://code.claude.com/docs/de/fullscreen.md) öffnet, nachdem Sie den [Mod `cc-plugin-diff`](https://code.claude.com/docs/de/plugins/mods/overview#mods-built-into-claude-code) in `/plugin` deaktiviert haben. Solange dieser Mod aktiviert ist, öffnet `/diff` stattdessen den [Diff-Dialog](https://code.claude.com/docs/de/interactive-mode.md#diff-dialog). Eine `keybindings.json`, die diese Aktionen nennt, wird in beiden Fällen fehlerfrei geladen.

309 309 

310Aktionen verfügbar im `DiffDialog`-Kontext:310Im Kontext `DiffDialog` verfügbare Aktionen:

311 311 

312| Aktion | Standard | Beschreibung |312| Aktion | Standard | Beschreibung |

313| :- | :- | :- |313| :- | :- | :- |

314| `diff:dismiss` | Escape | Diff-Viewer schließen; aus der Detailansicht zurück zur Dateiliste |314| `diff:dismiss` | Escape | Diff-Viewer schließen; aus der Detailansicht wird stattdessen zur Dateiliste zurückgekehrt |

315| `diff:previousSource` | Links | Vorherige Diff-Quelle |315| `diff:previousSource` | Left | Vorherige Diff-Quelle |

316| `diff:nextSource` | Rechts | Nächste Diff-Quelle |316| `diff:nextSource` | Right | Nächste Diff-Quelle |

317| `diff:previousFile` | Oben, K | Vorherige Datei in der Dateiliste; eine Zeile nach oben in der Detailansicht scrollen |317| `diff:previousFile` | Up, K | Vorherige Datei in der Dateiliste; in der Detailansicht eine Zeile nach oben scrollen |

318| `diff:nextFile` | Unten, J | Nächste Datei in der Dateiliste; eine Zeile nach unten in der Detailansicht scrollen |318| `diff:nextFile` | Down, J | Nächste Datei in der Dateiliste; in der Detailansicht eine Zeile nach unten scrollen |

319| `diff:back` | (nicht gebunden) | Im Diff-Viewer zurückgehen. Escape führt die Zurück-Aktion über `diff:dismiss` aus. Der vorherige Standard von Links in der Detailansicht wurde in v2.1.203 entfernt |319| `diff:back` | (nicht belegt) | Im Diff-Viewer zurückgehen. Escape führt die Zurück-Aktion über `diff:dismiss` aus. Die frühere Standardbelegung Left in der Detailansicht wurde in v2.1.203 entfernt |

320 320 

321Die Dateiliste reagiert auch auf die [Select-Aktionen](#select-actions), durch ihre Standardtasten und Ihre `Select`-Bindungen. `select:previous` und `select:next` bewegen sich zur vorherigen und nächsten Datei, und `Enter` öffnet den Diff der ausgewählten Datei über `select:accept`. Um einen dieser Schlüssel nur für die Dateiliste zu ändern, binden Sie die Select-Aktion in einem `DiffDialog`-Block.321Die Dateiliste reagiert auch auf die [Select-Aktionen](#select-actions), über deren Standardtasten und Ihre `Select`-Belegungen. `select:previous` und `select:next` wechseln zur vorherigen bzw. nächsten Datei, und `Enter` öffnet den Diff der ausgewählten Datei über `select:accept`. Um eine dieser Tasten nur für die Dateiliste zu ändern, belegen Sie die Select-Aktion in einem `DiffDialog`-Block.

322 322 

323Vor v2.1.283 ignorierte die Dateiliste `Select`-Bindungen, und `Enter` öffnete den Diff der ausgewählten Datei über eine separate `diff:viewDetails`-Aktion. Wenn Ihre `keybindings.json` `diff:viewDetails` bindet, bleibt die Bindung in der Dateiliste als `select:accept` wirksam.323Vor v2.1.283 ignorierte die Dateiliste `Select`-Belegungen, und `Enter` öffnete den Diff der ausgewählten Datei über eine separate Aktion `diff:viewDetails`. Wenn Ihre `keybindings.json` `diff:viewDetails` belegt, funktioniert die Belegung in der Dateiliste weiterhin als `select:accept`.

324 324 

325Die Diff-Detailansicht bindet auch Pager-ähnliche Tasten an die Standard-[Scroll-Aktionen](#scroll-actions). Diese Bindungen sind Teil des `DiffDialog`-Kontexts und gelten nur in der Detailansicht; die `Scroll`-Kontext-Standards, die unter [Scroll-Aktionen](#scroll-actions) aufgelistet sind, bleiben unverändert.325Die Diff-Detailansicht belegt außerdem Pager-typische Tasten mit den standardmäßigen [Scroll-Aktionen](#scroll-actions). Diese Belegungen gehören zum Kontext `DiffDialog` und gelten nur in der Detailansicht; die unter [Scroll-Aktionen](#scroll-actions) aufgeführten Standardbelegungen des Kontexts `Scroll` bleiben unverändert.

326 326 

327| Aktion | Standard | Beschreibung |327| Aktion | Standard | Beschreibung |

328| :- | :- | :- |328| :- | :- | :- |

329| `scroll:pageUp` | Bild-Auf | Halbe Viewport-Höhe nach oben scrollen |329| `scroll:pageUp` | PageUp | Einen halben Anzeigebereich nach oben scrollen |

330| `scroll:pageDown` | Bild-Ab | Halbe Viewport-Höhe nach unten scrollen |330| `scroll:pageDown` | PageDown | Einen halben Anzeigebereich nach unten scrollen |

331| `scroll:fullPageUp` | Shift+Leertaste, B | Volle Viewport-Höhe nach oben scrollen |331| `scroll:fullPageUp` | Shift+Space, B | Einen ganzen Anzeigebereich nach oben scrollen |

332| `scroll:fullPageDown` | Leertaste | Volle Viewport-Höhe nach unten scrollen |332| `scroll:fullPageDown` | Space | Einen ganzen Anzeigebereich nach unten scrollen |

333| `scroll:top` | G, Pos1 | Zum Anfang springen |333| `scroll:top` | G, Home | Zum Anfang springen |

334| `scroll:bottom` | Shift+G, Ende | Zum Ende springen |334| `scroll:bottom` | Shift+G, End | Zum Ende springen |

335 335 

336### Diff-Panel-Aktionen336### Aktionen des Diff-Bereichs

337 337 

338Aktionen für das [Diff-Panel](https://code.claude.com/docs/de/interactive-mode.md#diff-panel), das `/diff` im Vollbildrendering öffnet. `app:cycleDiffBase` ist im `DiffPanel`-Kontext, der aktiv ist, während das Panel offen ist; die anderen sind `Global`.338Aktionen für den [Diff-Bereich](https://code.claude.com/docs/de/interactive-mode.md#diff-panel), den `/diff` im Vollbild-Rendering öffnet. `app:cycleDiffBase` gehört zum Kontext `DiffPanel`, der aktiv ist, solange der Bereich geöffnet ist; die übrigen gehören zu `Global`.

339 339 

340Der integrierte [`cc-plugin-diff`-Mod](https://code.claude.com/docs/de/plugins/mods/overview#mods-built-into-claude-code) zeichnet dieses Panel und verarbeitet `app:cycleDiffBase`, `app:diffFileListUp` und `app:diffFileListDown`. `app:toggleReplTab`, `app:toggleDiffNoiseFilter` und `app:toggleDiffPreSession` wirken nur im früheren Panel von Claude Code, das `/diff` öffnet, nachdem Sie `cc-plugin-diff` in `/plugin` deaktiviert haben.340Der integrierte [Mod `cc-plugin-diff`](https://code.claude.com/docs/de/plugins/mods/overview#mods-built-into-claude-code) zeichnet diesen Bereich und verarbeitet `app:cycleDiffBase`, `app:diffFileListUp` und `app:diffFileListDown`. `app:toggleReplTab`, `app:toggleDiffNoiseFilter` und `app:toggleDiffPreSession` wirken nur im früheren Bereich von Claude Code, den `/diff` öffnet, nachdem Sie `cc-plugin-diff` in `/plugin` deaktiviert haben.

341 341 

342| Aktion | Standard | Beschreibung |342| Aktion | Standard | Beschreibung |

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

344| `app:toggleReplTab` | (nicht gebunden) | Diff-Panel öffnen oder schließen |344| `app:toggleReplTab` | (nicht belegt) | Diff-Bereich öffnen oder schließen |

345| `app:cycleDiffBase` | Ctrl+X B | Vergleichsbasis des Panels durchlaufen: diese Sitzung, nicht committete Änderungen, dann Branch |345| `app:cycleDiffBase` | Ctrl+X B | Vergleichsbasis des Bereichs durchschalten: diese Sitzung, nicht committet, dann Branch |

346| `app:diffFileListUp` | Ctrl+Oben, Meta+Oben | Dateiliste des Panels nach oben scrollen, wenn sie überläuft |346| `app:diffFileListUp` | Ctrl+Up, Meta+Up | Dateiliste des Bereichs nach oben scrollen, wenn sie überläuft |

347| `app:diffFileListDown` | Ctrl+Unten, Meta+Unten | Dateiliste des Panels nach unten scrollen, wenn sie überläuft |347| `app:diffFileListDown` | Ctrl+Down, Meta+Down | Dateiliste des Bereichs nach unten scrollen, wenn sie überläuft |

348| `app:toggleDiffNoiseFilter` | (nicht gebunden) | Test- und generierte Dateien im Panel anzeigen oder ausblenden |348| `app:toggleDiffNoiseFilter` | (nicht belegt) | Test- und generierte Dateien im Bereich ein- oder ausblenden |

349| `app:toggleDiffPreSession` | (nicht gebunden) | Änderungen vor dieser Sitzung erweitern oder reduzieren |349| `app:toggleDiffPreSession` | (nicht belegt) | Die Änderungen aus der Zeit vor dieser Sitzung auf- oder zuklappen |

350 350 

351### Modell-Picker-Aktionen351### Aktionen der Modellauswahl

352 352 

353Aktionen verfügbar im `ModelPicker`-Kontext:353Im Kontext `ModelPicker` verfügbare Aktionen:

354 354 

355| Aktion | Standard | Beschreibung |355| Aktion | Standard | Beschreibung |

356| :- | :- | :- |356| :- | :- | :- |

357| `modelPicker:decreaseEffort` | Links | Aufwandsstufe verringern |357| `modelPicker:decreaseEffort` | Left | Effort-Stufe verringern |

358| `modelPicker:increaseEffort` | Rechts | Aufwandsstufe erhöhen |358| `modelPicker:increaseEffort` | Right | Effort-Stufe erhöhen |

359| `modelPicker:thisSessionOnly` | s | Hervorgehobenes Modell nur auf diese Sitzung anwenden |359| `modelPicker:thisSessionOnly` | s | Hervorgehobenes Modell nur auf diese Sitzung anwenden |

360 360 

361### Effort-Schieberegler-Aktionen361### Aktionen des Effort-Schiebereglers

362 362 

363Aktionen verfügbar im `EffortSlider`-Kontext, dem Schieberegler, der sich öffnet, wenn Sie `/effort` ohne Argumente ausführen. Die Tasten Enter und Escape des Schiebereglers können nicht neu gebunden werden.363Im Kontext `EffortSlider` verfügbare Aktionen, also im Schieberegler, der sich öffnet, wenn Sie `/effort` ohne Argumente ausführen. Die Tasten Enter und Escape des Schiebereglers können nicht neu belegt werden.

364 364 

365| Aktion | Standard | Beschreibung |365| Aktion | Standard | Beschreibung |

366| :- | :- | :- |366| :- | :- | :- |

367| `effortSlider:decreaseEffort` | Links | Schieberegler zur nächsten niedrigeren Aufwandsstufe verschieben. Erfordert v2.1.284 oder später |367| `effortSlider:decreaseEffort` | Left | Den Schieberegler auf die nächstniedrigere Effort-Stufe setzen. Erfordert v2.1.284 oder höher |

368| `effortSlider:increaseEffort` | Rechts | Schieberegler zur nächsten höheren Aufwandsstufe verschieben. Erfordert v2.1.284 oder später |368| `effortSlider:increaseEffort` | Right | Den Schieberegler auf die nächsthöhere Effort-Stufe setzen. Erfordert v2.1.284 oder höher |

369| `effortSlider:toggleUltracode` | Tab | [Ultracode](https://code.claude.com/docs/de/workflows.md#let-claude-decide-with-ultracode) für diese Sitzung ein- oder ausschalten, wenn der Schieberegler [es anbietet](https://code.claude.com/docs/de/model-config.md#when-ultracode-is-available). Erfordert v2.1.284 oder später |369| `effortSlider:toggleUltracode` | Tab | [Ultracode](https://code.claude.com/docs/de/workflows.md#let-claude-decide-with-ultracode) für diese Sitzung ein- oder ausschalten, wenn der Schieberegler [es anbietet](https://code.claude.com/docs/de/model-config.md#when-ultracode-is-available). Erfordert v2.1.284 oder höher |

370| `effortSlider:thisSessionOnly` | s | Wenden Sie die fokussierte [Aufwandsstufe](https://code.claude.com/docs/de/model-config.md#adjust-effort-level) nur auf diese Sitzung an. Erfordert v2.1.257 oder später |370| `effortSlider:thisSessionOnly` | s | Die fokussierte [Effort-Stufe](https://code.claude.com/docs/de/model-config.md#adjust-effort-level) nur auf diese Sitzung anwenden. Erfordert v2.1.257 oder höher |

371 371 

372### Select-Aktionen372### Select-Aktionen

373 373 

374Aktionen verfügbar im `Select`-Kontext:374Im Kontext `Select` verfügbare Aktionen:

375 375 

376| Aktion | Standard | Beschreibung |376| Aktion | Standard | Beschreibung |

377| :- | :- | :- |377| :- | :- | :- |

378| `select:next` | Unten, J, Ctrl+N | Nächste Option |378| `select:next` | Down, J, Ctrl+N | Nächste Option |

379| `select:previous` | Oben, K, Ctrl+P | Vorherige Option |379| `select:previous` | Up, K, Ctrl+P | Vorherige Option |

380| `select:pageUp` | Bild-Auf | Eine Seite mit Optionen nach oben bewegen |380| `select:pageUp` | PageUp | Eine Seite Optionen nach oben |

381| `select:pageDown` | Bild-Ab | Eine Seite mit Optionen nach unten bewegen |381| `select:pageDown` | PageDown | Eine Seite Optionen nach unten |

382| `select:first` | Pos1 | Erste Option |382| `select:first` | Home | Erste Option |

383| `select:last` | Ende | Letzte Option |383| `select:last` | End | Letzte Option |

384| `select:accept` | Enter | Auswahl akzeptieren |384| `select:accept` | Enter | Auswahl übernehmen |

385| `select:cancel` | Escape | Auswahl abbrechen |385| `select:cancel` | Escape | Auswahl abbrechen |

386 386 

387Claude Code wendet Ihre `select:pageUp`-, `select:pageDown`-, `select:first`- und `select:last`-Bindungen in Listenpanels wie `/skills`, `/mcp` und `/tasks` an. In den meisten anderen Listen, wie dem `/model`-Picker, gelten Ihre `select:first`- und `select:last`-Bindungen. Bild-Auf und Bild-Ab blättern durch die Optionen in diesen Listen unabhängig von Ihren Bindungen.387In Listenbereichen wie `/skills`, `/mcp` und `/tasks` wendet Claude Code Ihre Belegungen für `select:pageUp`, `select:pageDown`, `select:first` und `select:last` an. In den meisten anderen Listen, etwa der Modellauswahl `/model`, gelten Ihre Belegungen für `select:first` und `select:last`. PageUp und PageDown blättern in diesen Listen unabhängig von Ihren Belegungen durch die Optionen.

388 388 

389Vor v2.1.280 ignorierten diese anderen Listen Pos1, Ende und Ihre `select:first`- und `select:last`-Bindungen.389Vor v2.1.280 ignorierten diese anderen Listen Home, End sowie Ihre Belegungen für `select:first` und `select:last`.

390 390 

391Vor v2.1.283 blätterte die `/mcp`-Werkzeugliste mit festen Bild-Auf- und Bild-Ab-Tasten unabhängig von Ihren Bindungen.391Vor v2.1.283 blätterte die Tool-Liste von `/mcp` unabhängig von Ihren Belegungen mit fest zugeordneten Tasten PageUp und PageDown.

392 392 

393### Plugin-Aktionen393### Plugin-Aktionen

394 394 

395Aktionen verfügbar im `Plugin`-Kontext:395Im Kontext `Plugin` verfügbare Aktionen:

396 396 

397| Aktion | Standard | Beschreibung |397| Aktion | Standard | Beschreibung |

398| :- | :- | :- |398| :- | :- | :- |

399| `plugin:toggle` | Leertaste | Plugin-Auswahl umschalten |399| `plugin:toggle` | Space | Plugin-Auswahl umschalten |

400| `plugin:install` | I | Ausgewählte Plugins installieren |400| `plugin:install` | I | Ausgewählte Plugins installieren |

401| `plugin:favorite` | F | Ausgewähltes Plugin als Favorit markieren, damit es oben auf der Registerkarte „Installiert“ sortiert wird |401| `plugin:favorite` | F | Das ausgewählte Plugin als Favorit markieren, sodass es im Tab „Installed“ weit oben einsortiert wird |

402 402 

403### Aktionen oberhalb des Prompts403### Aktionen oberhalb des Prompts

404 404 

405Aktionen für das Band oberhalb des Prompts, den gemeinsamen Streifen, in dem [Mods](https://code.claude.com/docs/de/plugins/mods/interface.md#pick-where-to-draw) Schaltflächen, Eingabefelder und Auswahllisten zeichnen. `abovePrompt:toggle` und `abovePrompt:focus` gelten im `Chat`-Kontext. Die anderen Aktionen gelten im [Kontext](#contexts) dessen, was im Band oder in einem Pane den Tastaturfokus hat.405Aktionen für das Band oberhalb des Prompts, den gemeinsamen Streifen, in dem [Mods](https://code.claude.com/docs/de/plugins/mods/interface.md#pick-where-to-draw) Schaltflächen, Eingabefelder und Auswahllisten zeichnen. `abovePrompt:toggle` und `abovePrompt:focus` gelten im Kontext `Chat`. Die übrigen Aktionen gelten im [Kontext](#contexts) dessen, was im Band oder in einem Bereich den Tastaturfokus hat.

406 406 

407| Aktion | Standard | Beschreibung |407| Aktion | Standard | Beschreibung |

408| :- | :- | :- |408| :- | :- | :- |

409| `abovePrompt:toggle` | Ctrl+X Ctrl+A | Das Band auf einen einzeiligen Hinweis reduzieren oder wieder erweitern |409| `abovePrompt:toggle` | Ctrl+X Ctrl+A | Das Band auf einen einzeiligen Hinweis reduzieren oder wieder ausklappen |

410| `abovePrompt:focus` | Ctrl+X Tab | Tastaturfokus in das Band verschieben, dann zu jedem offenen [Pane](#pane-actions) und vom letzten Pane zurück zum Prompt |410| `abovePrompt:focus` | Ctrl+X Tab | Den Tastaturfokus in das Band verschieben, dann in jeden geöffneten [Bereich](#pane-actions) und vom letzten Bereich zurück zum Prompt |

411| `abovePrompt:next` | Tab | Nächstes Steuerelement fokussieren |411| `abovePrompt:next` | Tab | Das nächste Steuerelement fokussieren |

412| `abovePrompt:previous` | Shift+Tab | Vorheriges Steuerelement fokussieren |412| `abovePrompt:previous` | Shift+Tab | Das vorherige Steuerelement fokussieren |

413| `abovePrompt:press` | Enter | Fokussierte Schaltfläche drücken, fokussiertes Eingabefeld absenden oder die hervorgehobene Option in einer Auswahlliste wählen |413| `abovePrompt:press` | Enter | Die fokussierte Schaltfläche drücken, das fokussierte Eingabefeld absenden oder die hervorgehobene Option in einer Auswahlliste wählen |

414| `abovePrompt:leave` | Escape | Tastaturfokus an den Prompt zurückgeben |414| `abovePrompt:leave` | Escape | Den Tastaturfokus an den Prompt zurückgeben |

415| `abovePrompt:highlightNext` | Unten | Nächste Option in einer fokussierten Auswahlliste hervorheben |415| `abovePrompt:highlightNext` | Down | Die nächste Option in einer fokussierten Auswahlliste hervorheben |

416| `abovePrompt:highlightPrevious` | Oben | Vorherige Option in einer fokussierten Auswahlliste hervorheben |416| `abovePrompt:highlightPrevious` | Up | Die vorherige Option in einer fokussierten Auswahlliste hervorheben |

417 417 

418Im [`AbovePrompt`-Kontext](#contexts) führen Rechts und Links standardmäßig auch `abovePrompt:next` und `abovePrompt:previous` aus, und die Leertaste führt auch `abovePrompt:press` aus.418Im [Kontext `AbovePrompt`](#contexts) führen Right und Left standardmäßig ebenfalls `abovePrompt:next` und `abovePrompt:previous` aus, und Space führt ebenfalls `abovePrompt:press` aus.

419 419 

420Der `AbovePrompt`-Kontext bindet außerdem Oben, Unten, Bild-Auf, Bild-Ab, Pos1 und Ende an die [Pane-Scroll-Aktionen](#pane-actions) `pane:scrollUp` bis `pane:bottom`. Um eine dieser Tasten für das Band zu ändern, binden Sie daher die Scroll-Aktion in einem `AbovePrompt`-Block.420Der Kontext `AbovePrompt` belegt außerdem Up, Down, PageUp, PageDown, Home und End mit den [Scroll-Aktionen für Bereiche](#pane-actions) `pane:scrollUp` bis `pane:bottom`. Um eine dieser Tasten für das Band zu ändern, belegen Sie daher die Scroll-Aktion in einem `AbovePrompt`-Block.

421 421 

422### Pane-Aktionen422### Bereichsaktionen

423 423 

424Aktionen für ein Pane, das von einem [Mod](https://code.claude.com/docs/de/plugins/mods/interface.md#know-which-keys-your-mod-can-receive) gezeichnet wird. Die Scroll-, Größen- und Schließen-Aktionen gelten im `Pane`-[Kontext](#contexts). `pane:close` gilt auch im `PaneField`-Kontext und funktioniert daher, während eines der Felder des Panes den Fokus hat. `pane:next` und `pane:previous` gelten im `Global`-Kontext, solange mehr als ein Pane geöffnet ist.424Aktionen für einen Bereich, der von einem [Mod](https://code.claude.com/docs/de/plugins/mods/interface.md#know-which-keys-your-mod-can-receive) gezeichnet wird. Die Aktionen zum Scrollen, Ändern der Größe und Schließen gelten im [Kontext](#contexts) `Pane`. `pane:close` gilt auch im Kontext `PaneField` und funktioniert daher, während eines der Felder des Bereichs den Fokus hat. `pane:next` und `pane:previous` gelten im Kontext `Global`, solange mehr als ein Bereich geöffnet ist.

425 425 

426| Aktion | Standard | Beschreibung |426| Aktion | Standard | Beschreibung |

427| :- | :- | :- |427| :- | :- | :- |

428| `pane:scrollUp` | Oben | Pane nach oben scrollen, wenn es mehr Zeilen hat, als es anzeigen kann |428| `pane:scrollUp` | Up | Den Bereich nach oben scrollen, wenn er mehr Zeilen hat, als er anzeigen kann |

429| `pane:scrollDown` | Unten | Pane nach unten scrollen, wenn es mehr Zeilen hat, als es anzeigen kann |429| `pane:scrollDown` | Down | Den Bereich nach unten scrollen, wenn er mehr Zeilen hat, als er anzeigen kann |

430| `pane:pageUp` | Bild-Auf | Pane eine Seite nach oben scrollen |430| `pane:pageUp` | PageUp | Den Bereich eine Seite nach oben scrollen |

431| `pane:pageDown` | Bild-Ab | Pane eine Seite nach unten scrollen |431| `pane:pageDown` | PageDown | Den Bereich eine Seite nach unten scrollen |

432| `pane:top` | Pos1 | Zum Anfang des Panes springen |432| `pane:top` | Home | Zum Anfang des Bereichs springen |

433| `pane:bottom` | Ende | Zum Ende des Panes springen |433| `pane:bottom` | End | Zum Ende des Bereichs springen |

434| `pane:grow` | Ctrl+X Links, Ctrl+X Oben | Dem Pane mehr Platz geben: Breite, wenn es neben dem Transkript liegt, Höhe, wenn es über dem Prompt liegt |434| `pane:grow` | Ctrl+X Left, Ctrl+X Up | Dem Bereich mehr Platz geben: Breite, wenn er neben dem Transkript liegt, Höhe, wenn er über dem Prompt liegt |

435| `pane:shrink` | Ctrl+X Rechts, Ctrl+X Unten | Dem Pane weniger Platz geben: Breite, wenn es neben dem Transkript liegt, Höhe, wenn es über dem Prompt liegt |435| `pane:shrink` | Ctrl+X Right, Ctrl+X Down | Dem Bereich weniger Platz geben: Breite, wenn er neben dem Transkript liegt, Höhe, wenn er über dem Prompt liegt |

436| `pane:close` | Ctrl+X X | Pane schließen |436| `pane:close` | Ctrl+X X | Den Bereich schließen |

437| `pane:next` | (nicht gebunden) | Nächstes offenes Pane anzeigen |437| `pane:next` | (nicht belegt) | Den nächsten geöffneten Bereich anzeigen |

438| `pane:previous` | (nicht gebunden) | Vorheriges offenes Pane anzeigen |438| `pane:previous` | (nicht belegt) | Den vorherigen geöffneten Bereich anzeigen |

439 439 

440Der `Pane`-Kontext bindet außerdem Tab, Shift+Tab, Enter und Escape an dieselben [Aktionen oberhalb des Prompts](#above-prompt-actions) wie das Band, und die Eingabefelder und Auswahllisten eines Panes verwenden die Kontexte `AbovePromptInput` und `AbovePromptSelect`. [Tastaturfokus und Hotkeys](https://code.claude.com/docs/de/plugins/mods/interface.md#know-which-keys-your-mod-can-receive) listet auf, was jede Taste in einem Pane bewirkt.440Der Kontext `Pane` belegt außerdem Tab, Shift+Tab, Enter und Escape mit denselben [Aktionen oberhalb des Prompts](#above-prompt-actions) wie das Band, und die Eingabefelder und Auswahllisten eines Bereichs verwenden die Kontexte `AbovePromptInput` und `AbovePromptSelect`. Unter [Tastaturfokus und Hotkeys](https://code.claude.com/docs/de/plugins/mods/interface.md#know-which-keys-your-mod-can-receive) ist aufgeführt, was jede Taste in einem Bereich bewirkt.

441 441 

442### Einstellungs-Aktionen442### Einstellungsaktionen

443 443 

444Aktionen verfügbar im `Settings`-Kontext. Die Aktionen `select:accept` und `confirm:no` werden aus den Kontexten [Select](#select-actions) und [Confirmation](#confirmation-actions) wiederverwendet mit einstellungsspezifischem Verhalten: Änderungen werden auf jede Einstellung angewendet, sobald Sie sie ändern, daher schließt Escape das Panel mit Ihren gespeicherten Änderungen, anstatt abzulehnen.444Im Kontext `Settings` verfügbare Aktionen. Die Aktionen `select:accept` und `confirm:no` werden aus den Kontexten [Select](#select-actions) und [Confirmation](#confirmation-actions) mit einstellungsspezifischem Verhalten wiederverwendet: Änderungen werden auf jede Einstellung angewendet, sobald Sie sie ändern, sodass Escape den Bereich schließt und Ihre Änderungen gespeichert bleiben, statt sie abzulehnen.

445 445 

446| Aktion | Standard | Beschreibung |446| Aktion | Standard | Beschreibung |

447| :- | :- | :- |447| :- | :- | :- |

448| `settings:search` | / | Suchmodus aktivieren |448| `settings:search` | / | Suchmodus aufrufen |

449| `settings:retry` | R | Nutzungsdaten neu laden (bei Fehler) |449| `settings:retry` | R | Laden der Nutzungsdaten bei einem Fehler erneut versuchen |

450| `settings:fixUsage` | F | Die [`/usage`-Empfehlungen](https://code.claude.com/docs/de/costs#apply-recommendations-with-the-fix-shortcut), die Claude Code anwenden kann, an Ihre Sitzung senden, wenn die `/usage`-Fußzeile eine Korrektur anbietet. Erfordert v2.1.305 oder später |450| `settings:fixUsage` | F | Ihrer Sitzung die [`/usage`-Empfehlungen](https://code.claude.com/docs/de/costs#apply-recommendations-with-the-fix-shortcut) senden, die Claude Code anwenden kann, wenn die Fußzeile von `/usage` eine Korrektur anbietet. Erfordert v2.1.305 oder höher |

451| `select:accept` | Enter, Leertaste | Ändern Sie die ausgewählte Einstellung oder öffnen Sie das Untermenü |451| `select:accept` | Enter, Space | Die ausgewählte Einstellung ändern oder ihr Untermenü öffnen |

452| `confirm:no` | Escape | Schließen Sie das Panel. Änderungen sind bereits gespeichert |452| `confirm:no` | Escape | Den Bereich schließen. Änderungen sind bereits gespeichert |

453 453 

454### Agents-Aktionen454### Agentenaktionen

455 455 

456Aktionen verfügbar im `Agents`-Kontext, der in der [Agent-Ansicht](https://code.claude.com/docs/de/agent-view.md) gilt, die mit `claude agents` geöffnet wird. Erfordert v2.1.257 oder später.456Im Kontext `Agents` verfügbare Aktionen, der in der [Agentenansicht](https://code.claude.com/docs/de/agent-view.md) gilt, die mit `claude agents` geöffnet wird. Erfordert v2.1.257 oder höher.

457 457 

458| Aktion | Standard | Beschreibung |458| Aktion | Standard | Beschreibung |

459| :- | :- | :- |459| :- | :- | :- |

460| `agents:switchView` | Ctrl+S | [Sitzungsgruppenbildung](https://code.claude.com/docs/de/agent-view.md#organize-the-list) zwischen Status und Verzeichnis wechseln |460| `agents:switchView` | Ctrl+S | [Sitzungsgruppierung](https://code.claude.com/docs/de/agent-view.md#organize-the-list) zwischen Status und Verzeichnis wechseln |

461| `agents:togglePin` | Ctrl+T | Ausgewählte Sitzung [anheften oder loslösen](https://code.claude.com/docs/de/agent-view.md#organize-the-list) |461| `agents:togglePin` | Ctrl+T | Die ausgewählte Sitzung [anheften oder lösen](https://code.claude.com/docs/de/agent-view.md#organize-the-list) |

462| `agents:find` | Ctrl+F | Sitzungen nach Namen suchen, mit dem [`n:`-Filter](https://code.claude.com/docs/de/agent-view#filter-sessions). Erfordert v2.1.288 oder später |462| `agents:find` | Ctrl+F | Sitzungen nach Namen suchen, mit dem [Filter `n:`](https://code.claude.com/docs/de/agent-view#filter-sessions). Erfordert v2.1.288 oder höher |

463| `agents:rename` | Ctrl+R | Ausgewählte Sitzung [umbenennen](https://code.claude.com/docs/de/agent-view.md#organize-the-list). Erfordert v2.1.288 oder später |463| `agents:rename` | Ctrl+R | Die ausgewählte Sitzung [umbenennen](https://code.claude.com/docs/de/agent-view.md#organize-the-list). Erfordert v2.1.288 oder höher |

464| `agents:previousGroup` | Ctrl+Oben, Meta+Oben | Zur vorherigen [Gruppenüberschrift](https://code.claude.com/docs/de/agent-view.md#organize-the-list) springen. Erfordert v2.1.288 oder später |464| `agents:previousGroup` | Ctrl+Up, Meta+Up | Zur vorherigen [Gruppenüberschrift](https://code.claude.com/docs/de/agent-view.md#organize-the-list) springen. Erfordert v2.1.288 oder höher |

465| `agents:nextGroup` | Ctrl+Unten, Meta+Unten | Zur nächsten Gruppenüberschrift springen. Erfordert v2.1.288 oder später |465| `agents:nextGroup` | Ctrl+Down, Meta+Down | Zur nächsten Gruppenüberschrift springen. Erfordert v2.1.288 oder höher |

466 466 

467Während die Agent-Ansicht offen ist, verwendet Claude Code die `Agents`-Bindung für jede Taste, die der `Agents`-Kontext bindet, und ignoriert eine `Chat`- oder `Global`-Bindung auf derselben Taste. Wenn Sie beispielsweise Ctrl+S in der Agent-Ansicht drücken, wird die Sitzungsgruppenbildung gewechselt, anstatt den Standard `chat:stash` auszulösen.467Solange die Agentenansicht geöffnet ist, verwendet Claude Code für jede Taste, die der Kontext `Agents` belegt, die `Agents`-Belegung und ignoriert eine `Chat`- oder `Global`-Belegung derselben Taste. Beispielsweise wechselt das Drücken von Ctrl+S in der Agentenansicht die Sitzungsgruppierung, statt das standardmäßige `chat:stash` auszulösen.

468 468 

469Die Eingabeverteilung des externen Editors ist keine `Agents`-Aktion. Die Agent-Ansicht folgt der `Chat`-Kontext-Bindung `chat:externalEditor`, Ctrl+G standardmäßig.469Die Tastenkombination für den externen Editor in der Dispatch-Eingabe ist keine `Agents`-Aktion. Die Agentenansicht folgt der Belegung von `chat:externalEditor` im Kontext `Chat`, standardmäßig Ctrl+G.

470 470 

471Bindungen werden bei einzelnen Tastenanschlägen in der Agent-Ansicht ausgelöst, daher öffnet die Ctrl+X Ctrl+E-Kombination, die an `chat:externalEditor` gebunden ist, den Editor dort nicht.471Belegungen werden in der Agentenansicht bei einzelnen Tastenanschlägen ausgelöst, daher öffnet die mit `chat:externalEditor` belegte Tastenfolge Ctrl+X Ctrl+E dort den Editor nicht.

472 472 

473### Sprach-Aktionen473### Sprachaktionen

474 474 

475Aktionen verfügbar im `Chat`-Kontext, wenn [Sprachdiktat](https://code.claude.com/docs/de/voice-dictation.md) aktiviert ist:475Im Kontext `Chat` verfügbare Aktionen, wenn [Sprachdiktat](https://code.claude.com/docs/de/voice-dictation.md) aktiviert ist:

476 476 

477| Aktion | Standard | Beschreibung |477| Aktion | Standard | Beschreibung |

478| :- | :- | :- |478| :- | :- | :- |

479| `voice:pushToTalk` | Leertaste | Eingabeaufforderung diktieren. Halten oder tippen je nach `/voice`-Modus |479| `voice:pushToTalk` | Space | Einen Prompt diktieren. Je nach `/voice`-Modus gedrückt halten oder antippen |

480 480 

481### Scroll-Aktionen481### Scroll-Aktionen

482 482 

483Aktionen verfügbar im `Scroll`-Kontext, wenn [Vollbildrendering](https://code.claude.com/docs/de/fullscreen.md) aktiviert ist:483Im Kontext `Scroll` verfügbare Aktionen, wenn [Vollbild-Rendering](https://code.claude.com/docs/de/fullscreen.md) aktiviert ist:

484 484 

485| Aktion | Standard | Beschreibung |485| Aktion | Standard | Beschreibung |

486| :- | :- | :- |486| :- | :- | :- |

487| `scroll:lineUp` | `wheelup` | Eine Zeile nach oben scrollen. Mausrad-Scrolling löst diese Aktion aus |487| `scroll:lineUp` | `wheelup` | Eine Zeile nach oben scrollen. Scrollen mit dem Mausrad löst diese Aktion aus |

488| `scroll:lineDown` | `wheeldown` | Eine Zeile nach unten scrollen. Mausrad-Scrolling löst diese Aktion aus |488| `scroll:lineDown` | `wheeldown` | Eine Zeile nach unten scrollen. Scrollen mit dem Mausrad löst diese Aktion aus |

489| `scroll:pageUp` | Bild-Auf | Halbe Viewport-Höhe nach oben scrollen |489| `scroll:pageUp` | PageUp | Um die halbe Höhe des Anzeigebereichs nach oben scrollen |

490| `scroll:pageDown` | Bild-Ab | Halbe Viewport-Höhe nach unten scrollen |490| `scroll:pageDown` | PageDown | Um die halbe Höhe des Anzeigebereichs nach unten scrollen |

491| `scroll:top` | Ctrl+Pos1 | Zum Anfang der Konversation springen |491| `scroll:top` | Ctrl+Home | Zum Anfang der Konversation springen |

492| `scroll:bottom` | Ctrl+Ende | Zur neuesten Nachricht springen und Auto-Follow erneut aktivieren |492| `scroll:bottom` | Ctrl+End | Zur neuesten Nachricht springen und automatisches Mitverfolgen wieder aktivieren |

493| `scroll:halfPageUp` | (nicht gebunden) | Halbe Viewport-Höhe nach oben scrollen. Gleiches Verhalten wie `scroll:pageUp`, bereitgestellt für Vi-ähnliche Neubindungen |493| `scroll:halfPageUp` | (nicht belegt) | Um die halbe Höhe des Anzeigebereichs nach oben scrollen. Gleiches Verhalten wie `scroll:pageUp`, bereitgestellt für Belegungen im vi-Stil |

494| `scroll:halfPageDown` | (nicht gebunden) | Halbe Viewport-Höhe nach unten scrollen. Gleiches Verhalten wie `scroll:pageDown`, bereitgestellt für Vi-ähnliche Neubindungen |494| `scroll:halfPageDown` | (nicht belegt) | Um die halbe Höhe des Anzeigebereichs nach unten scrollen. Gleiches Verhalten wie `scroll:pageDown`, bereitgestellt für Belegungen im vi-Stil |

495| `scroll:fullPageUp` | (nicht gebunden) | Volle Viewport-Höhe nach oben scrollen |495| `scroll:fullPageUp` | (nicht belegt) | Um die volle Höhe des Anzeigebereichs nach oben scrollen |

496| `scroll:fullPageDown` | (nicht gebunden) | Volle Viewport-Höhe nach unten scrollen |496| `scroll:fullPageDown` | (nicht belegt) | Um die volle Höhe des Anzeigebereichs nach unten scrollen |

497| `selection:copy` | Ctrl+Shift+C / Cmd+C | Ausgewählten Text in die Zwischenablage kopieren |497| `selection:copy` | Ctrl+Shift+C / Cmd+C | Den ausgewählten Text in die Zwischenablage kopieren |

498| `selection:clear` | (nicht gebunden) | Aktive Textauswahl löschen. Erfordert v2.1.234 oder später |498| `selection:clear` | (nicht belegt) | Die aktive Textauswahl aufheben. Erfordert v2.1.234 oder höher |

499| `selection:extendLeft` | Shift+Links | Aktive Auswahl eine Spalte nach links erweitern |499| `selection:extendLeft` | Shift+Left | Die aktive Auswahl um eine Spalte nach links erweitern |

500| `selection:extendRight` | Shift+Rechts | Aktive Auswahl eine Spalte nach rechts erweitern |500| `selection:extendRight` | Shift+Right | Die aktive Auswahl um eine Spalte nach rechts erweitern |

501| `selection:extendUp` | Shift+Oben | Aktive Auswahl eine Zeile nach oben erweitern. Scrollt den Viewport, wenn die Auswahl die obere Kante erreicht |501| `selection:extendUp` | Shift+Up | Die aktive Auswahl um eine Zeile nach oben erweitern. Scrollt den Anzeigebereich, wenn die Auswahl den oberen Rand erreicht |

502| `selection:extendDown` | Shift+Unten | Aktive Auswahl eine Zeile nach unten erweitern. Scrollt den Viewport, wenn die Auswahl die untere Kante erreicht |502| `selection:extendDown` | Shift+Down | Die aktive Auswahl um eine Zeile nach unten erweitern. Scrollt den Anzeigebereich, wenn die Auswahl den unteren Rand erreicht |

503| `selection:extendLineStart` | Shift+Pos1 | Aktive Auswahl zum Anfang der Zeile erweitern |503| `selection:extendLineStart` | Shift+Home | Die aktive Auswahl bis zum Zeilenanfang erweitern |

504| `selection:extendLineEnd` | Shift+Ende | Aktive Auswahl zum Ende der Zeile erweitern |504| `selection:extendLineEnd` | Shift+End | Die aktive Auswahl bis zum Zeilenende erweitern |

505 505 

506## Tastenkombinations-Syntax506## Syntax für Tastenanschläge

507 507 

508### Modifizierer508### Modifikatortasten

509 509 

510Verwenden Sie Modifizierer-Tasten mit dem `+`-Trennzeichen:510Verwenden Sie Modifikatortasten mit dem Trennzeichen `+`:

511 511 

512* `ctrl` oder `control` - Strg-Taste512* `ctrl` oder `control` - Control-Taste

513* `shift` - Umschalt-Taste513* `shift` - Shift-Taste

514* `alt`, `opt`, `option` oder `meta` - Alt-Taste unter Windows und Linux, Option-Taste unter macOS514* `alt`, `opt`, `option` oder `meta` - Alt-Taste unter Windows und Linux, Option-Taste unter macOS

515* `cmd`, `command`, `super` oder `win` - Befehlstaste unter macOS, Windows-Taste unter Windows, Super-Taste unter Linux515* `cmd`, `command`, `super` oder `win` - Command-Taste unter macOS, Windows-Taste unter Windows, Super-Taste unter Linux

516 516 

517Die `cmd`-Gruppe wird nur in Terminals erkannt, die den Super-Modifizierer melden, wie z. B. solche, die das Kitty-Tastaturprotokoll oder den `modifyOtherKeys`-Modus von xterm unterstützen. Die meisten Terminals senden ihn nicht, daher verwenden Sie `ctrl` oder `meta` für Bindungen, die überall funktionieren sollen.517Die `cmd`-Gruppe wird nur in Terminals erkannt, die den Super-Modifikator melden, etwa in Terminals, die das Kitty-Tastaturprotokoll oder den `modifyOtherKeys`-Modus von xterm unterstützen. Die meisten Terminals senden ihn nicht. Verwenden Sie daher `ctrl` oder `meta` für Tastenbelegungen, die überall funktionieren sollen.

518 518 

519Beispiele:519Zum Beispiel:

520 520 

521```text theme={null}521```text theme={null}

522ctrl+k Strg + K522ctrl+k Ctrl + K

523shift+tab Umschalt + Tab523shift+tab Shift + Tab

524meta+p Option + P unter macOS, Alt + P anderswo524meta+p Option + P unter macOS, sonst Alt + P

525ctrl+shift+c Mehrere Modifizierer525ctrl+shift+c Mehrere Modifikatoren

526```526```

527 527 

528### Großbuchstaben528### Großbuchstaben

529 529 

530Claude Code analysiert Tastennamen groß- und kleinschreibungsunabhängig, daher ist `K` dieselbe Bindung wie `k` und `ctrl+K` ist dasselbe wie `ctrl+k`. Um Umschalt und einen Buchstaben zu binden, schreiben Sie `shift+k`.530Claude Code wertet Tastennamen ohne Berücksichtigung der Groß- und Kleinschreibung aus, sodass `K` dieselbe Tastenbelegung ist wie `k` und `ctrl+K` dasselbe ist wie `ctrl+k`. Um Shift und einen Buchstaben zu belegen, schreiben Sie `shift+k`.

531 531 

532### Nicht-US-Tastaturlayouts532### Nicht-US-Tastaturlayouts

533 533 

534Schreiben Sie die Tastennamen von Strg-Verknüpfungen als lateinische Zeichen, auch wenn Ihr aktives Tastaturlayout andere Zeichen eingibt.534Schreiben Sie die Tastennamen von Ctrl-Tastenkombinationen als lateinische Zeichen, auch wenn Ihr aktives Tastaturlayout andere Zeichen eingibt.

535 535 

536Wie Claude Code die Taste, die Sie drücken, mit einer Bindung abgleicht, hängt von der Art des Layouts ab:536Wie Claude Code die gedrückte Taste einer Tastenbelegung zuordnet, hängt von der Art des Layouts ab:

537 537 

538* Unter einem nicht-lateinischen Layout wie Kyrillisch gleicht Claude Code Strg-Verknüpfungen durch die US-Layout-Position der Taste ab, wenn das Terminal das Kitty-Tastaturprotokoll verwendet und diese Position meldet. In einem solchen Terminal mit aktivem russischem Layout löst das Drücken von Strg und der physischen W-Taste `ctrl+w` aus. In einem Terminal, das die Position nicht meldet, gleicht Claude Code ab, was das Terminal für den Tastendruck sendet: Ein ASCII-Steuercode löst die lateinische Verknüpfung aus, und ein Tastendruck, der als kyrillisches Zeichen ankommt, entspricht keiner Bindung538* Bei einem nicht-lateinischen Layout wie Kyrillisch ordnet Claude Code Ctrl-Tastenkombinationen anhand der Position der Taste im US-Layout zu, wenn das Terminal das Kitty-Tastaturprotokoll verwendet und diese Position meldet. In einem solchen Terminal löst bei aktivem russischem Layout das Drücken von Ctrl und der physischen W-Taste `ctrl+w` aus. In einem Terminal, das die Position nicht meldet, ordnet Claude Code das zu, was das Terminal für den Tastendruck sendet: Ein ASCII-Steuercode löst die lateinische Tastenkombination aus, und ein Tastendruck, der als kyrillisches Zeichen ankommt, entspricht keiner Tastenbelegung

539* Unter Layouts, die lateinische Buchstaben neu anordnen, wie AZERTY, gleicht Claude Code den Buchstaben ab, den die Taste eingibt, daher löst das Drücken von Strg und der mit A beschrifteten Taste `ctrl+a` aus539* Bei Layouts, die lateinische Buchstaben anders anordnen, wie etwa AZERTY, ordnet Claude Code den Buchstaben zu, den die Taste eingibt, sodass das Drücken von Ctrl und der mit A beschrifteten Taste `ctrl+a` auslöst

540 540 

541### Akkorde541### Akkorde

542 542 

543Akkorde sind Sequenzen von Tastenkombinationen, die durch Leerzeichen getrennt sind:543Akkorde sind Folgen von Tastenanschlägen, die durch Leerzeichen getrennt sind:

544 544 

545```text theme={null}545```text theme={null}

546ctrl+k ctrl+s Drücken Sie Strg+K, loslassen, dann Strg+S546ctrl+k ctrl+s Ctrl+K drücken, loslassen, dann Ctrl+S

547```547```

548 548 

549Drücken Sie jede Tastenkombination innerhalb von 3 Sekunden nach der vorherigen. Wenn Sie länger warten, bricht Claude Code den Akkord ab und zeigt eine kurze Benachrichtigung an, die dies anzeigt.549Drücken Sie jeden Tastenanschlag innerhalb von 3 Sekunden nach dem vorherigen. Wenn Sie länger warten, bricht Claude Code den Akkord ab und zeigt einen kurzen entsprechenden Hinweis an.

550 550 

551### Spezielle Tasten551### Sondertasten

552 552 

553* `escape` oder `esc` - Escape-Taste553* `escape` oder `esc` - Escape-Taste

554* `enter` oder `return` - Enter-Taste554* `enter` oder `return` - Enter-Taste

555* `tab` - Tab-Taste555* `tab` - Tab-Taste

556* `space` - Leertaste556* `space` - Leertaste

557* `up`, `down`, `left`, `right` - Pfeiltasten557* `up`, `down`, `left`, `right` - Pfeiltasten

558* `pageup`, `pagedown` - Bild-auf- und Bild-ab-Tasten558* `pageup`, `pagedown` - Page-Up- und Page-Down-Tasten

559* `home`, `end` - Pos1- und Ende-Tasten559* `home`, `end` - Home- und End-Tasten

560* `backspace`, `delete` - Löschtasten560* `backspace`, `delete` - Löschtasten

561* `wheelup`, `wheeldown` - Mausrad-Scroll-Ereignisse561* `wheelup`, `wheeldown` - Scroll-Ereignisse des Mausrads

562 562 

563## Standardkürzel aufheben563## Standardkürzel aufheben

564 564 

Details

178* [`forceRemoteSettingsRefresh`](https://code.claude.com/docs/de/server-managed-settings)178* [`forceRemoteSettingsRefresh`](https://code.claude.com/docs/de/server-managed-settings)

179* `env`, pro Variable über die Admin-Quellen zusammengeführt: jede Variable kommt aus der höchstpriorisierten Quelle, die sie definiert, sodass niedrigere Quellen Variablen ausfüllen, die höhere nicht setzen. Einige Variablen folgen ihren eigenen Regeln; [Pro-Schlüssel-Ausnahmen über verwaltete Quellen](https://code.claude.com/docs/de/server-managed-settings.md#per-key-exceptions-across-managed-sources) nennt jede. Erfordert Claude Code v2.1.223 oder später. Vor v2.1.223 wendete Claude Code nur den gesamten `env`-Block der ausgewählten Quelle an179* `env`, pro Variable über die Admin-Quellen zusammengeführt: jede Variable kommt aus der höchstpriorisierten Quelle, die sie definiert, sodass niedrigere Quellen Variablen ausfüllen, die höhere nicht setzen. Einige Variablen folgen ihren eigenen Regeln; [Pro-Schlüssel-Ausnahmen über verwaltete Quellen](https://code.claude.com/docs/de/server-managed-settings.md#per-key-exceptions-across-managed-sources) nennt jede. Erfordert Claude Code v2.1.223 oder später. Vor v2.1.223 wendete Claude Code nur den gesamten `env`-Block der ausgewählten Quelle an

180 180 

181Die [Gateway-Login-Schlüssel](#choose-a-delivery-mechanism) folgen einer separaten Regel. Claude Code liest sie niemals aus servergesteuerten Einstellungen, sodass während servergesteuerte Einstellungen die ausgewählte Quelle sind, die höchstrangige Admin-Quelle auf dem Computer, die einen Richtlinienschlüssel trägt, sie immer noch liefert. Ein Wert in einer Admin-Quelle, die unter dieser rangiert, oder in der HKCU-Registrierung wird ignoriert.

182 

183[`allowedProviders`](https://code.claude.com/docs/de/settings-reference#allowedproviders) hat seine eigene Regel: Der Hinweis zum Geltungsbereich in seinem Eintrag sagt, wie eine auf dem Computer gesetzte Liste mit einer servergesteuerten kombiniert wird. Erfordert Claude Code v2.1.285 oder später.181[`allowedProviders`](https://code.claude.com/docs/de/settings-reference#allowedproviders) hat seine eigene Regel: Der Hinweis zum Geltungsbereich in seinem Eintrag sagt, wie eine auf dem Computer gesetzte Liste mit einer servergesteuerten kombiniert wird. Erfordert Claude Code v2.1.285 oder später.

184 182 

185Wenn eine Admin-Quelle `allowManagedMcpServersOnly` setzt oder eine `allowedMcpServers` Liste setzt und dieser Wert nicht der ist, der gerade gültig ist, nennen `/status` und `claude doctor` diese Quelle und diesen Schlüssel.183Wenn eine Admin-Quelle `allowManagedMcpServersOnly` setzt oder eine `allowedMcpServers` Liste setzt und dieser Wert nicht der ist, der gerade gültig ist, nennen `/status` und `claude doctor` diese Quelle und diesen Schlüssel.

186 184 

185#### Welche verwaltete Quelle die Login-Schlüssel liefert

186 

187Auf einem Computer mit einer MDM-Richtlinie oder verwalteten Einstellungsdatei übernimmt Claude Code die Login-Schlüssel aus dieser Richtlinie oder Datei, selbst für einen Schlüssel, den auch [Remote-Einstellungen](#how-claude-code-combines-managed-sources) setzen. Einstellungen aus der Admin-Konsole von claude.ai sind Remote-Einstellungen; setzen Sie Login-Schlüssel wie [`forceLoginOrgUUID`](https://code.claude.com/docs/de/settings-reference#forceloginorguuid) daher in der MDM-Richtlinie oder Datei.

188 

189Wenn ein Computer sowohl eine MDM-Richtlinie als auch eine verwaltete Einstellungsdatei hat, verwenden Sie die MDM-Richtlinie. Wenn diese Richtlinie einen beliebigen [Richtlinienschlüssel](#how-claude-code-combines-managed-sources) setzt, ignoriert Claude Code Login-Schlüssel in der Datei, [selbst unter `managedSourcesBehavior: "merge"`](#compose-every-managed-source).

190 

191Die Login-Schlüssel sind:

192 

193* `forceLoginOrgUUID` und `forceLoginMethod`, gesetzt auf `"claudeai"` oder `"console"`: Wenn die Richtlinie oder Datei einen der beiden Schlüssel auslässt, gilt der Wert in den Remote-Einstellungen. Bis jeder Client v2.1.299 oder später ausführt, setzen Sie die Schlüssel zusätzlich in den [servergesteuerten Einstellungen](https://code.claude.com/docs/de/server-managed-settings.md) von claude.ai

194* Die [Gateway-Login-Schlüssel](#choose-a-delivery-mechanism): Claude Code verwendet für die Gateway-Anmeldung keinen Wert aus den Remote-Einstellungen

195 

187### Zusammensetzen jeder verwalteten Quelle196### Zusammensetzen jeder verwalteten Quelle

188 197 

189Um Claude Code jede Admin-Quelle anwenden zu lassen, die Ihre Organisation bereitstellt, setzen Sie [`managedSourcesBehavior`](https://code.claude.com/docs/de/settings-reference#managedsourcesbehavior) auf `"merge"` in der höchstrangigen Quelle, die Sie bereitstellen. Claude Code liest den Schlüssel nur aus der höchstrangigen Quelle, die entweder den Schlüssel oder einen Richtlinienschlüssel trägt, sodass eine niedrigere Quelle sich nicht selbst zum Zusammenführen mit der Quelle darüber anmelden kann, und ein Computer, der niemals servergesteuerte Einstellungen erhält, benötigt den Schlüssel auch in seinem MDM-Profil. Die vom Benutzer beschreibbare HKCU-Registrierung wird niemals mit einer anderen Quelle zusammengeführt. Erfordert Claude Code v2.1.242 oder später.198Um Claude Code jede Admin-Quelle anwenden zu lassen, die Ihre Organisation bereitstellt, setzen Sie [`managedSourcesBehavior`](https://code.claude.com/docs/de/settings-reference#managedsourcesbehavior) auf `"merge"` in der höchstrangigen Quelle, die Sie bereitstellen. Claude Code liest den Schlüssel nur aus der höchstrangigen Quelle, die entweder den Schlüssel oder einen Richtlinienschlüssel trägt, sodass eine niedrigere Quelle sich nicht selbst zum Zusammenführen mit der Quelle darüber anmelden kann, und ein Computer, der niemals servergesteuerte Einstellungen erhält, benötigt den Schlüssel auch in seinem MDM-Profil. Die vom Benutzer beschreibbare HKCU-Registrierung wird niemals mit einer anderen Quelle zusammengeführt. Erfordert Claude Code v2.1.242 oder später.


199| Restriktions-Allowlists | Nimmt die Liste ganz aus der höchstrangigen Quelle, die sie setzt, ohne Einträge aus niedrigeren Quellen hinzuzufügen | `availableModels`, `allowedMcpServers`, `strictKnownMarketplaces`, `allowedChannelPlugins` und die `fallbackModel` Kette |208| Restriktions-Allowlists | Nimmt die Liste ganz aus der höchstrangigen Quelle, die sie setzt, ohne Einträge aus niedrigeren Quellen hinzuzufügen | `availableModels`, `allowedMcpServers`, `strictKnownMarketplaces`, `allowedChannelPlugins` und die `fallbackModel` Kette |

200| Werte, die ganz genommen werden | Nimmt den Wert ganz aus der höchstrangigen Quelle, die ihn setzt, ohne Einträge oder Felder aus niedrigeren Quellen zu kombinieren | `sandbox.credentials.awsPairs`, `sandbox.ripgrep` |209| Werte, die ganz genommen werden | Nimmt den Wert ganz aus der höchstrangigen Quelle, die ihn setzt, ohne Einträge oder Felder aus niedrigeren Quellen zu kombinieren | `sandbox.credentials.awsPairs`, `sandbox.ripgrep` |

201| Bereitgestellte MCP-Server | Kombiniert die Servernamen aus jeder Quelle; wenn zwei Quellen denselben Namen setzen, wendet den gesamten Eintrag der höherrangigen Quelle an | `managedMcpServers` |210| Bereitgestellte MCP-Server | Kombiniert die Servernamen aus jeder Quelle; wenn zwei Quellen denselben Namen setzen, wendet den gesamten Eintrag der höherrangigen Quelle an | `managedMcpServers` |

202| Schlüssel, die nur aus der höchstrangigen Quelle gelesen werden | Ignoriert den Schlüssel in jeder niedrigeren Quelle, selbst wenn die höchstrangige Quelle ihn nicht setzt | Credential-Helfer wie `apiKeyHelper`, Login-Pins wie `forceLoginOrgUUID`, `modelPicker`, `permissions.defaultMode` |211| Schlüssel, die nur aus der höchstrangigen Quelle gelesen werden | Ignoriert den Schlüssel in jeder niedrigeren Quelle, selbst wenn die höchstrangige Quelle ihn nicht setzt | `modelPicker`, `permissions.defaultMode` und Credential-Helfer wie `apiKeyHelper` |

203| `env` | Führt pro Variable über Admin-Quellen unter einer der beiden Einstellungen zusammen, wie [Schlüssel, die von jeder Admin-Quelle gelesen werden](#keys-read-from-every-admin-source) beschreibt | |212| `env` | Führt pro Variable über Admin-Quellen unter einer der beiden Einstellungen zusammen, wie [Schlüssel, die von jeder Admin-Quelle gelesen werden](#keys-read-from-every-admin-source) beschreibt | |

213| Login-Schlüssel | Übernimmt sie unter einer der beiden Einstellungen aus der MDM-Richtlinie oder verwalteten Einstellungsdatei, je nachdem, welche die höherrangige mit einem [Richtlinienschlüssel](#how-claude-code-combines-managed-sources) ist, [mit Vorrang vor Remote-Einstellungen](#which-managed-source-supplies-login-keys) | `forceLoginOrgUUID`, `forceLoginMethod` und die [Gateway-Login-Schlüssel](#choose-a-delivery-mechanism) |

204| Jeder andere Schlüssel | Nimmt den Wert aus der höchstrangigen Quelle, die ihn setzt | `model`, `cleanupPeriodDays` |214| Jeder andere Schlüssel | Nimmt den Wert aus der höchstrangigen Quelle, die ihn setzt | `model`, `cleanupPeriodDays` |

205 215 

206Um zu bestätigen, welche Quellen auf einem Computer kombiniert wurden, [lesen Sie die Zeile `Setting sources` in `/status`](#read-the-source-in-/status); dieser Abschnitt sagt, was jedes Label bedeutet.216Um zu bestätigen, welche Quellen auf einem Computer kombiniert wurden, [lesen Sie die Zeile `Setting sources` in `/status`](#read-the-source-in-/status); dieser Abschnitt sagt, was jedes Label bedeutet.


228Claude Code wendet auch diese Überprüfungen eigenständig auf vom Host bereitgestellte Werte an:238Claude Code wendet auch diese Überprüfungen eigenständig auf vom Host bereitgestellte Werte an:

229 239 

230* Wenn eine Admin-Quelle `allowManagedPermissionRulesOnly` setzt, lässt Claude Code [vom Host bereitgestellte](https://code.claude.com/docs/de/claude-apps-gateway#restrict-parent-settings) allow-Regeln und `additionalDirectories` fallen, während es sie liest, selbst wenn eine höherpriorisierte Quelle den Schlüssel nicht setzt. Die Auswirkung des Schlüssels auf Ihre eigenen Berechtigungsregeln kommt aus den verwalteten Einstellungen, die Claude Code anwendet, oder aus übergeordneten Einstellungen, die Sie zusammenführen möchten240* Wenn eine Admin-Quelle `allowManagedPermissionRulesOnly` setzt, lässt Claude Code [vom Host bereitgestellte](https://code.claude.com/docs/de/claude-apps-gateway#restrict-parent-settings) allow-Regeln und `additionalDirectories` fallen, während es sie liest, selbst wenn eine höherpriorisierte Quelle den Schlüssel nicht setzt. Die Auswirkung des Schlüssels auf Ihre eigenen Berechtigungsregeln kommt aus den verwalteten Einstellungen, die Claude Code anwendet, oder aus übergeordneten Einstellungen, die Sie zusammenführen möchten

231* Claude Code erzwingt den `forceLoginOrgUUID` oder `allowedMcpServers` Wert in den verwalteten Einstellungen, die es anwendet, und blockiert einen vom Host bereitgestellten. Außerhalb der MCP-Allowlist-Sperre gilt ein Wert in einer niedrigeren Admin-Quelle, die Claude Code nicht anwendet, weder selbst noch blockiert er den Wert des Hosts.241* Claude Code erzwingt den `forceLoginOrgUUID` oder `allowedMcpServers` Wert in den verwalteten Einstellungen, die es anwendet, und blockiert einen vom Host bereitgestellten. Wenn Sie mehr als eine verwaltete Quelle bereitstellen, siehe [welche Quelle `forceLoginOrgUUID` liefert](#which-managed-source-supplies-login-keys).

232 242 

233 Auf Claude Code v2.1.273 oder später, während `allowManagedMcpServersOnly` aktiv ist, gilt die `allowedMcpServers` Liste aus der höchstrangigen Admin-Quelle, die eine setzt, und blockiert die des Hosts, als ein [Schlüssel zwischen Quellen](#keys-read-from-every-admin-source). Die Liste des Hosts gilt nur, wenn keine Admin-Quelle eine setzt. Der [`managedSourcesBehavior`](https://code.claude.com/docs/de/settings-reference#managedsourcesbehavior) Eintrag sagt, welche Quelle jeden Schlüssel unter `"merge"` liefert. Vor v2.1.223 blockierte ein Wert in einer beliebigen Admin-Quelle den Wert des Hosts243 Auf Claude Code v2.1.273 oder später, während `allowManagedMcpServersOnly` aktiv ist, gilt die `allowedMcpServers` Liste aus der höchstrangigen Admin-Quelle, die eine setzt, und blockiert die des Hosts, als ein [Schlüssel zwischen Quellen](#keys-read-from-every-admin-source). Die Liste des Hosts gilt nur, wenn keine Admin-Quelle eine setzt. Der [`managedSourcesBehavior`](https://code.claude.com/docs/de/settings-reference#managedsourcesbehavior) Eintrag sagt, welche Quelle jeden Schlüssel unter `"merge"` liefert. Vor v2.1.223 blockierte ein Wert in einer beliebigen Admin-Quelle den Wert des Hosts

234* Für `availableModels` erzwingt Claude Code den Wert in den verwalteten Einstellungen, die es anwendet, und blockiert eine vom Host bereitgestellte Liste244* Für `availableModels` erzwingt Claude Code den Wert in den verwalteten Einstellungen, die es anwendet, und blockiert eine vom Host bereitgestellte Liste

mcp.md +46 −19

Details

242/mcp242/mcp

243```243```

244 244 

245Wenn Sie einen Remote-Server entfernen, löscht Claude Code auch die OAuth-Tokens und die Client-Registrierung, die es für diesen Server gespeichert hat.245Wenn Sie einen Remote-Server entfernen, löscht Claude Code auch die OAuth-Token und die Client-Registrierung, die es für diesen Server gespeichert hat. Claude Code widerruft die Token nicht beim Autorisierungsserver, der sie ausgestellt hat. Um die Token zu widerrufen, sofern der Autorisierungsserver einen Widerruf unterstützt, führen Sie [`claude mcp logout <name>`](#authenticate-from-the-command-line) in Ihrer Shell vor `claude mcp remove <name>` aus.

246 246 

247#### Serverstatus247#### Serverstatus

248 248 


252 252 

253Die Statuse in dieser Liste melden eine Konfigurationsentscheidung statt eines Verbindungsversuchs, daher gibt Claude Code sie aus, ohne sich mit dem Server zu verbinden:253Die Statuse in dieser Liste melden eine Konfigurationsentscheidung statt eines Verbindungsversuchs, daher gibt Claude Code sie aus, ohne sich mit dem Server zu verbinden:

254 254 

255* ``⏸ Pending approval (run `claude` to approve)``: ein Server mit Projekt-Geltungsbereich aus `.mcp.json`, den Sie noch nicht genehmigt haben. Claude Code zeigt ihn sowohl in `claude mcp list` als auch in `claude mcp get <name>` an. Führen Sie `claude` interaktiv aus, um ihn zu prüfen und zu genehmigen.255* ``⏸ Pending approval (run `claude` to approve)``: ein projektbezogener Server aus `.mcp.json`, den Sie noch nicht genehmigt haben. Claude Code zeigt ihn sowohl in `claude mcp list` als auch in `claude mcp get <name>` an. Führen Sie `claude` interaktiv aus, um ihn zu prüfen und zu genehmigen.

256* `✘ Rejected (see disabledMcpjsonServers in settings)`: ein `.mcp.json`-Server, den ein [`disabledMcpjsonServers`](https://code.claude.com/docs/de/settings-reference#disabledmcpjsonservers)-Eintrag ablehnt. Claude Code zeigt ihn nur in `claude mcp get <name>`.256* `✘ Rejected (see disabledMcpjsonServers in settings)`: ein `.mcp.json`-Server, den ein [`disabledMcpjsonServers`](https://code.claude.com/docs/de/settings-reference#disabledmcpjsonservers)-Eintrag ablehnt. Claude Code zeigt ihn nur in `claude mcp get <name>`.

257* `⊘ Disabled for this project (re-enable via /mcp)`: ein Server, den die [`disabledMcpServers`](#disable-a-server-without-removing-it)-Liste des Projekts nennt. Claude Code zeigt ihn sowohl in `claude mcp list` als auch in `claude mcp get <name>`. Schalten Sie den Server über das `/mcp`-Panel wieder ein.257* `⊘ Disabled for this project (re-enable via /mcp)`: ein Server, den die [`disabledMcpServers`](#disable-a-server-without-removing-it)-Liste des Projekts nennt. Claude Code zeigt ihn sowohl in `claude mcp list` als auch in `claude mcp get <name>`. Schalten Sie den Server über das `/mcp`-Panel wieder ein.

258* `✘ Blocked by enterprise managed policy`: ein Server, den eine der Richtlinien Ihrer Organisation ablehnt. Claude Code zeigt ihn sowohl in `claude mcp list` als auch in `claude mcp get <name>` an. Ein Server, der durch eine Allowlist, eine Denylist oder eine andere Einschränkung in der [verwalteten MCP-Konfiguration](https://code.claude.com/docs/de/managed-mcp.md#how-restrictions-appear-to-users) blockiert wird, ist in beiden Befehlen ausgeblendet, statt mit diesem Status angezeigt zu werden. Fragen Sie Ihren Administrator, welche Richtlinie den Server blockiert.

258 259 

259#### Genehmigungen von Projektservern und Workspace-Vertrauen260#### Genehmigungen von Projektservern und Workspace-Vertrauen

260 261 


471So ändern oder deaktivieren Sie das automatische Verschieben in den Hintergrund:472So ändern oder deaktivieren Sie das automatische Verschieben in den Hintergrund:

472 473 

473* Setzen Sie die Umgebungsvariable [`CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS`](https://code.claude.com/docs/de/env-vars) in Millisekunden, um den Schwellenwert zu ändern, oder setzen Sie sie auf `0`, um das automatische Verschieben auszuschalten. Mit `0` [wartet Claude](#make-claude-wait-for-the-result-of-an-mcp-task) in einer interaktiven Sitzung außerdem auf MCP-Tasks474* Setzen Sie die Umgebungsvariable [`CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS`](https://code.claude.com/docs/de/env-vars) in Millisekunden, um den Schwellenwert zu ändern, oder setzen Sie sie auf `0`, um das automatische Verschieben auszuschalten. Mit `0` [wartet Claude](#make-claude-wait-for-the-result-of-an-mcp-task) in einer interaktiven Sitzung außerdem auf MCP-Tasks

474* Setzen Sie [`CLAUDE_CODE_DISABLE_BACKGROUND_TASKS`](https://code.claude.com/docs/de/env-vars) auf `1`, wodurch es zusammen mit Hintergrundbefehlen und Hintergrund-Subagenten ausgeschaltet wird475* Setzen Sie [`CLAUDE_CODE_DISABLE_BACKGROUND_TASKS`](https://code.claude.com/docs/de/env-vars) auf `1`, um das automatische Verschieben in den Hintergrund und [Hintergrundbefehle](https://code.claude.com/docs/de/tools-reference.md#background-commands) auszuschalten

475 476 

476Einige Aufrufe werden nie in den Hintergrund verschoben:477Einige Aufrufe werden nie in den Hintergrund verschoben:

477 478 


828 829 

829Claude Code unterstützt die Umgebungsvariablen-Erweiterung in `.mcp.json`-Dateien, die es Teams ermöglicht, Konfigurationen zu teilen und gleichzeitig Flexibilität für maschinenspezifische Pfade und vertrauliche Werte wie API-Schlüssel zu bewahren.830Claude Code unterstützt die Umgebungsvariablen-Erweiterung in `.mcp.json`-Dateien, die es Teams ermöglicht, Konfigurationen zu teilen und gleichzeitig Flexibilität für maschinenspezifische Pfade und vertrauliche Werte wie API-Schlüssel zu bewahren.

830 831 

831#### Unterstützte Syntax832Sie können in einem `command`-, `args`-, `env`-, `url`- oder `headers`-Wert eines Servers auf eine Umgebungsvariable verweisen, und zwar in einer von zwei Formen:

832 833 

833* `${VAR}`: erweitert sich zum Wert der Umgebungsvariablen `VAR`834* `${VAR}`: erweitert sich zum Wert der Umgebungsvariablen `VAR`

834* `${VAR:-default}`: erweitert sich zu `VAR`, wenn gesetzt, andernfalls wird `default` verwendet835* `${VAR:-default}`: wird zum Wert von `VAR` erweitert, wenn `VAR` gesetzt ist, oder zu `default`, wenn sie nicht gesetzt ist

835 

836#### Erweiterungsorte

837 

838Umgebungsvariablen können erweitert werden in:

839 

840* `command`: der Server-Ausführungspfad

841* `args`: Befehlszeilenargumente

842* `env`: Umgebungsvariablen, die an den Server übergeben werden

843* `url`: für HTTP-Server-Typen

844* `headers`: für HTTP-Server-Authentifizierung

845 836 

846#### Beispiel mit Variablenerweiterung837#### Beispiel mit Variablenerweiterung

847 838 

839In diesem Server-Eintrag ist die URL der Wert von `API_BASE_URL` gefolgt von `/mcp`, mit `https://api.example.com` als Standard, und der API-Schlüssel stammt aus `API_KEY`:

840 

848```json theme={null}841```json theme={null}

849{842{

850 "mcpServers": {843 "mcpServers": {


863 856 

864Wenn eine referenzierte Umgebungsvariable nicht gesetzt ist und keinen Standardwert hat, wird die Konfiguration trotzdem geladen: Claude Code meldet eine Warnung zu fehlender Variable für diesen Server in der Ausgabe von `claude mcp list` und verwendet den nicht erweiterten `${VAR}`-Text unverändert. Setzen Sie die Variable oder fügen Sie einen `:-default`-Fallback hinzu, damit der Server mit dem beabsichtigten Wert startet. In einer Remote-Server-`url` und `headers` lesen einige Anmeldedatenvariablen [als leer](#credential-variables-that-read-as-empty) statt, ohne Warnung.857Wenn eine referenzierte Umgebungsvariable nicht gesetzt ist und keinen Standardwert hat, wird die Konfiguration trotzdem geladen: Claude Code meldet eine Warnung zu fehlender Variable für diesen Server in der Ausgabe von `claude mcp list` und verwendet den nicht erweiterten `${VAR}`-Text unverändert. Setzen Sie die Variable oder fügen Sie einen `:-default`-Fallback hinzu, damit der Server mit dem beabsichtigten Wert startet. In einer Remote-Server-`url` und `headers` lesen einige Anmeldedatenvariablen [als leer](#credential-variables-that-read-as-empty) statt, ohne Warnung.

865 858 

859#### Auf eine leere Zeichenfolge gesetzte Variablen

860 

861Wenn Sie eine Variable auf eine leere Zeichenfolge setzen, gilt sie als gesetzt, sodass eine `${VAR:-default}`-Referenz zur leeren Zeichenfolge statt zu `default` erweitert wird. Wenn Sie beim [Beispielserver](#example-with-variable-expansion) `API_BASE_URL` auf eine leere Zeichenfolge setzen, wird seine `url` zu `/mcp`, und `claude mcp list` meldet `'url' is not a valid URL`. Um den Standard zu verwenden, heben Sie die Variable auf, statt sie auf eine leere Zeichenfolge zu setzen.

862 

866#### Anmeldedatenvariablen, die als leer gelesen werden863#### Anmeldedatenvariablen, die als leer gelesen werden

867 864 

868In einer Remote-Server-`url` und `headers` liest Claude Code Anmeldedatenvariablen aus Ihrer Umgebung als leer statt sie zu erweitern. Dies verhindert, dass ein Projekt `.mcp.json` oder ein Plugin Ihre Claude Code- oder Cloud-Provider-Anmeldedaten an einen Server sendet, den es benennt. Wenn Sie `Bearer ${ANTHROPIC_AUTH_TOKEN}` schreiben, erhält der Server `Bearer ` ohne Anmeldedaten und lehnt die Anfrage ab, normalerweise mit einem `401`. Claude Code meldet dies als fehlgeschlagene Verbindung.865In einer Remote-Server-`url` und `headers` liest Claude Code Anmeldedatenvariablen aus Ihrer Umgebung als leer statt sie zu erweitern. Dies verhindert, dass ein Projekt `.mcp.json` oder ein Plugin Ihre Claude Code- oder Cloud-Provider-Anmeldedaten an einen Server sendet, den es benennt. Wenn Sie `Bearer ${ANTHROPIC_AUTH_TOKEN}` schreiben, erhält der Server `Bearer ` ohne Anmeldedaten und lehnt die Anfrage ab, normalerweise mit einem `401`. Claude Code meldet dies als fehlgeschlagene Verbindung.


1146 1143 

1147Wenn dieser Scope nicht in Ihrem fixierten `oauth.scopes` enthalten ist, fügen Sie ihn hinzu, führen Sie dann `/mcp` aus und authentifizieren Sie den Server erneut. Claude Code fordert die fixierten Scopes an, nicht den Scope, den der Server benannt hat. Wenn Sie sich also erneut authentifizieren, ohne ihn hinzuzufügen, fehlt er dem Token, das Sie erhalten, weiterhin.1144Wenn dieser Scope nicht in Ihrem fixierten `oauth.scopes` enthalten ist, fügen Sie ihn hinzu, führen Sie dann `/mcp` aus und authentifizieren Sie den Server erneut. Claude Code fordert die fixierten Scopes an, nicht den Scope, den der Server benannt hat. Wenn Sie sich also erneut authentifizieren, ohne ihn hinzuzufügen, fehlt er dem Token, das Sie erhalten, weiterhin.

1148 1145 

1146### Verwenden Sie OAuth mit einem Server hinter einem authentifizierenden Proxy

1147 

1148Wenn Ihr MCP-Server OAuth hinter einem Proxy oder Gateway verwendet, das einen eigenen Header prüft, schlägt die Anmeldung fehl, wenn die OAuth-Anfragen ohne diesen Header eintreffen. Die Anmeldung über den Proxy erfordert Claude Code v2.1.299 oder höher, wobei sowohl der Header als auch die Anmeldung konfiguriert sein müssen:

1149 

1150* **Der Header des Proxys**: Übergeben Sie ihn mit [`--header`](#option-1-add-a-remote-http-server), dem Feld `headers` oder einem [`headersHelper`](#use-dynamic-headers-for-custom-authentication), unter dem Namen, den der Proxy liest

1151* **Die OAuth-Anmeldung**: Halten Sie `Authorization` aus den konfigurierten Headern heraus und melden Sie sich dann mit `claude mcp login <name>` in Ihrer Shell an. Wenn Sie einen `Authorization`-Header konfigurieren, verwendet Claude Code ihn als Anmeldedaten des Servers und greift für diesen Server nicht auf OAuth zurück.

1152 

1149### Verwenden Sie dynamische Header für benutzerdefinierte Authentifizierung1153### Verwenden Sie dynamische Header für benutzerdefinierte Authentifizierung

1150 1154 

1151Wenn Ihr MCP-Server ein anderes Authentifizierungsschema als OAuth verwendet, wie Kerberos, kurzlebige Token oder ein internes SSO, verwenden Sie `headersHelper`, um Anfrage-Header zur Verbindungszeit zu generieren. Claude Code führt den Befehl aus und führt seine Ausgabe mit den Verbindungs-Headern zusammen.1155Wenn eine Authentifizierung wie Kerberos, kurzlebige Token oder ein internes SSO Header benötigt, die zur Verbindungszeit generiert werden, setzen Sie `headersHelper` des Servers auf einen Befehl. Claude Code führt ihn beim Verbinden aus und führt seine Ausgabe mit den Headern zusammen, die es sendet. Dieses Beispiel verwendet ein Skript:

1152 1156 

1153```json theme={null}1157```json theme={null}

1154{1158{


1552 1556 

1553## Tools mit ungültigen Eingabeschemas1557## Tools mit ungültigen Eingabeschemas

1554 1558 

1555Die Claude API überprüft das Eingabeschema jedes Tools in einer Anfrage und lehnt die gesamte Anfrage ab, wenn ein Schema fehlschlägt. Ein einzelnes MCP-Tool mit einem fehlerhaften Schema würde daher dazu führen, dass jede Anfrage, die es enthält, mit einem 400-Fehler fehlschlägt. Claude Code führt zwei der API-Überprüfungen selbst durch, wenn es die Tools eines Servers lädt, und schließt jedes Tool aus, das diese Überprüfungen nicht bestehen würde, damit die anderen Tools des Servers weiterhin funktionieren:1559> [!NOTE]

1560>

1561> Wenn Ihre Sitzung mit einem 400-Fehler fehlschlägt, der ein Tool nach seiner Position benennt, folgen Sie den Schritten unter [Tool input schema is invalid](https://code.claude.com/docs/de/errors.md#tool-input-schema-is-invalid).

1562 

1563Wenn eines der Tools Ihres MCP-Servers ein Eingabeschema hat, das gegen eine der beiden Regeln verstößt, die die API durchsetzt, schließt Claude Code dieses Tool aus. Die anderen Tools des Servers sind davon nicht betroffen. Claude Code prüft beide Regeln, wenn es die Tools des Servers lädt:

1556 1564 

1557* Namen von Eigenschaften auf der obersten Ebene müssen 1 bis 64 Zeichen lang sein und dürfen nur ASCII-Buchstaben und Ziffern, `_`, `.` und `-` verwenden1565* Namen von Eigenschaften auf der obersten Ebene müssen 1 bis 64 Zeichen lang sein und dürfen nur ASCII-Buchstaben und Ziffern, `_`, `.` und `-` verwenden

1558* Das Schema muss gegen das JSON-Schema-Draft-2020-12-Meta-Schema gültig sein. Claude Code wendet diese Überprüfung auf Schemas an, die kein `$schema` deklarieren, und auf Schemas, die Draft 2020-12 deklarieren. Ein Schema, das einen anderen Dialekt deklariert, überspringt diese Überprüfung, obwohl die obige Überprüfung der Eigenschaftsnamen weiterhin gilt1566* Das Schema muss gegen das JSON-Schema-Draft-2020-12-Meta-Schema gültig sein. Claude Code wendet diese Überprüfung auf Schemas an, die kein `$schema` deklarieren, und auf Schemas, die Draft 2020-12 deklarieren. Ein Schema, das einen anderen Dialekt deklariert, überspringt diese Überprüfung, obwohl die obige Überprüfung der Eigenschaftsnamen weiterhin gilt

1559 1567 

1560Wenn Claude Code ein Tool ausschließt, zeichnet es den Grund im Log des Servers auf und teilt Claude mit, welche Tools es ausgeschlossen hat und warum, damit Sie Claude fragen können, warum ein Tool fehlt. Wenn Sie das Schema auf dem Server korrigieren, wird das Tool beim nächsten Laden der Server-Tools durch Claude Code wieder verfügbar.1568Wenn Claude Code ein Tool ausschließt, zeichnet es den Grund im Log des Servers auf und teilt Claude mit, welche Tools es ausgeschlossen hat und warum, damit Sie Claude fragen können, warum ein Tool fehlt. Wenn Sie das Schema auf dem Server korrigieren, wird das Tool beim nächsten Laden der Server-Tools durch Claude Code wieder verfügbar.

1561 1569 

1562Claude Code aktiviert den Ausschluss über ein Feature-Flag, das es von Anthropic abruft. Bei einer [Bereitstellung, bei der das Flag-Abrufen deaktiviert ist](https://code.claude.com/docs/de/env-vars.md#features-that-need-feature-flag-fetching), oder auf einem Computer, dessen Flags nie angekommen sind, z. B. auf einem isolierten Computer, führt Claude Code die Überprüfungen weiterhin durch und zeichnet im Log des Servers auf, welches Tool abgelehnt würde, sendet das Schema des Tools aber trotzdem an die API. Die API lehnt eine Anfrage, die dieses Schema enthält, mit [einem 400-Fehler ab, der das Tool nach seiner Position benennt](https://code.claude.com/docs/de/errors.md#tool-input-schema-is-invalid). Vor v2.1.216 führte keine Bereitstellung diese Überprüfungen durch.1570Wenn das [Abrufen von Feature-Flags](https://code.claude.com/docs/de/env-vars.md#features-that-need-feature-flag-fetching) deaktiviert ist oder die Flags nie angekommen sind, z. B. auf einem isolierten Computer, wird ein Tool, das gegen eine Regel verstößt, nicht ausgeschlossen:

1571 

1572* Claude erhält das Tool unverändert, und das Log des Servers zeichnet dafür `input schema would be rejected by the Anthropic API` auf

1573* Wenn die API das Schema anschließend ablehnt, lesen Sie [Tools, deren Eingabeschema die API ablehnt](#tools-whose-input-schema-the-api-refuses)

1574 

1575Vor v2.1.216 führte keine Bereitstellung diese Überprüfungen durch.

1563 1576 

1564Die [Root-Level-Kombinator-Behandlung](#tool-input-schemas-with-a-root-level-combinator) ist separat und behält ihr eigenes Verhalten bei, wenn das Flag-Abrufen deaktiviert ist oder die Flags nie angekommen sind.1577Die [Root-Level-Kombinator-Behandlung](#tool-input-schemas-with-a-root-level-combinator) ist separat und behält ihr eigenes Verhalten bei, wenn das Flag-Abrufen deaktiviert ist oder die Flags nie angekommen sind.

1565 1578 

1579### Tools, deren Eingabeschema die API ablehnt

1580 

1581Wenn eine Zeile im Debug-Log `the API refused this tool's input schema` enthält, benennt sie ein Tool, dessen Schema die API in einer Anfrage abgelehnt hat. Claude Code sendet diese Anfrage erneut, wobei das Tool ohne Parameter deklariert wird.

1582 

1583* **Wenn Ihre Sitzung mit einem 400-Fehler fehlschlägt, der ein Tool nach seiner Position benennt**: Folgen Sie den Schritten unter [Tool input schema is invalid](https://code.claude.com/docs/de/errors.md#tool-input-schema-is-invalid)

1584* **Wenn Sie den Server verwenden**: Sie müssen nichts tun. Claude kann das Tool weiterhin aufrufen, sieht aber seine Parameter nicht

1585* **Wenn Sie den Server pflegen**: Korrigieren Sie das Eingabeschema des Tools auf dem Server. Die Log-Zeile endet mit `The API said:` und dem Grund, aus dem die API das Schema abgelehnt hat. Validieren Sie die Argumente, die der Server empfängt, da Claude das Tool aufruft, ohne seine Parameter zu sehen

1586 

1587Vor v2.1.300 schlug jeder Turn, der das abgelehnte Schema enthielt, mit [einem 400-Fehler fehl, der das Tool nach seiner Position benennt](https://code.claude.com/docs/de/errors.md#tool-input-schema-is-invalid).

1588 

1566## Tools mit Namen, die länger als 128 Zeichen sind1589## Tools mit Namen, die länger als 128 Zeichen sind

1567 1590 

1568Wenn `/mcp` ein Tool auflistet, das Claude nicht aufrufen kann, prüfen Sie, ob der vollständige Name des Tools länger als 128 Zeichen ist. Führen Sie `/mcp` in Ihrer Sitzung aus und wählen Sie das Tool aus, um seinen vollständigen Namen anzuzeigen, zum Beispiel `mcp__<server>__<tool>`. Claude Code lässt ein MCP-Tool bei den Tools, die es an Claude sendet, weg, wenn sein vollständiger Name länger als 128 Zeichen ist. Die Claude API lehnt eine Anfrage ab, die ein solches Tool enthält. Indem das Tool weggelassen wird, funktionieren die anderen Tools des Servers weiterhin.1591Wenn `/mcp` ein Tool auflistet, das Claude nicht aufrufen kann, prüfen Sie, ob der vollständige Name des Tools länger als 128 Zeichen ist. Führen Sie `/mcp` in Ihrer Sitzung aus und wählen Sie das Tool aus, um seinen vollständigen Namen anzuzeigen, zum Beispiel `mcp__<server>__<tool>`. Claude Code lässt ein MCP-Tool bei den Tools, die es an Claude sendet, weg, wenn sein vollständiger Name länger als 128 Zeichen ist. Die Claude API lehnt eine Anfrage ab, die ein solches Tool enthält. Indem das Tool weggelassen wird, funktionieren die anderen Tools des Servers weiterhin.


1709 1732 

1710Vor v2.1.296 lag die kürzere Grenze bei 2.048 Zeichen, und vor v2.1.295 galt sie für jede Tool-Beschreibung, einschließlich einer, die über die Tool-Suche geladen wurde.1733Vor v2.1.296 lag die kürzere Grenze bei 2.048 Zeichen, und vor v2.1.295 galt sie für jede Tool-Beschreibung, einschließlich einer, die über die Tool-Suche geladen wurde.

1711 1734 

1712Beschreibungen und Anweisungen einiger der MCP-Server, die Anthropic unter `api.anthropic.com` hostet, erreichen Claude vollständig. Um die Grenzen für die anderen MCP-Server in Ihrer Sitzung zu ändern, setzen Sie [`CLAUDE_CODE_MAX_MCP_DESCRIPTION_LENGTH`](https://code.claude.com/docs/de/env-vars#variables) auf eine Anzahl von Zeichen. Die von Ihnen gesetzte Zahl ersetzt beide Grenzen: `8192` beispielsweise erhöht die kürzere Grenze und senkt die längere. Diese Variable erfordert Claude Code v2.1.280 oder später.1735#### Die Längengrenzen für Beschreibungen ändern

1736 

1737Um die [Standardgrenzen](#for-mcp-server-authors) von 4.096 und 16.384 Zeichen für die MCP-Server in Ihrer Sitzung zu ändern, setzen Sie [`CLAUDE_CODE_MAX_MCP_DESCRIPTION_LENGTH`](https://code.claude.com/docs/de/env-vars#variables) auf eine Anzahl von Zeichen. Claude Code verwendet diese Zahl für beide Grenzen. Mit `8192` beispielsweise erhöhen Sie die Grenze von 4.096 Zeichen für Server-Anweisungen und vorab geladene Tool-Beschreibungen und senken die Grenze von 16.384 Zeichen für Tool-Beschreibungen, die über die Tool-Suche geladen werden. Diese Variable erfordert Claude Code v2.1.280 oder später.

1738 

1739Beschreibungen und Anweisungen einiger der MCP-Server, die Anthropic unter `api.anthropic.com` hostet, erreichen Claude vollständig, und das Setzen dieser Variablen kürzt sie nicht.

1713 1740 

1714#### Ein Tool vorab laden oder aufgeschoben lassen1741#### Ein Tool vorab laden oder aufgeschoben lassen

1715 1742 

Details

65| `✘ Connection error` | Der Verbindungsversuch hat einen Fehler ausgelöst. Siehe [Fehlerbehebung](#troubleshooting) |65| `✘ Connection error` | Der Verbindungsversuch hat einen Fehler ausgelöst. Siehe [Fehlerbehebung](#troubleshooting) |

66| ``⏸ Pending approval (run `claude` to approve)`` | Ein projektbezogener Server, den Sie noch nicht genehmigt haben. Siehe [Bearbeiten Sie .mcp.json direkt](#edit-mcp-json-directly) |66| ``⏸ Pending approval (run `claude` to approve)`` | Ein projektbezogener Server, den Sie noch nicht genehmigt haben. Siehe [Bearbeiten Sie .mcp.json direkt](#edit-mcp-json-directly) |

67| `⊘ Disabled for this project (re-enable via /mcp)` | Ein Server, der für dieses Projekt durch die `disabledMcpServers`-Liste des Projekts deaktiviert wurde. Siehe [Deaktivieren Sie einen Server, ohne ihn zu entfernen](https://code.claude.com/docs/de/mcp.md#disable-a-server-without-removing-it) |67| `⊘ Disabled for this project (re-enable via /mcp)` | Ein Server, der für dieses Projekt durch die `disabledMcpServers`-Liste des Projekts deaktiviert wurde. Siehe [Deaktivieren Sie einen Server, ohne ihn zu entfernen](https://code.claude.com/docs/de/mcp.md#disable-a-server-without-removing-it) |

68| `✘ Blocked by enterprise managed policy` | Eine der Richtlinien Ihrer Organisation blockiert diesen Server, daher stellt Claude Code keine Verbindung her. Fragen Sie Ihren Administrator, um welche Richtlinie es sich handelt. Siehe [Serverstatus](https://code.claude.com/docs/de/mcp.md#server-status) |

68 69 

69Einige ältere Windows-Konsolen, wie die Standardkonsole unter Windows 10, unterstützen diese Unicode-Glyphen nicht und zeigen stattdessen `√` und `×` anstelle von `✔` und `✘`.70Einige ältere Windows-Konsolen, wie die Standardkonsole unter Windows 10, unterstützen diese Unicode-Glyphen nicht und zeigen stattdessen `√` und `×` anstelle von `✔` und `✘`.

70 71 

model-config.md +18 −1

Details

689* **`/effort`**: Führen Sie `/effort` ohne Argumente aus, um einen interaktiven Slider zu öffnen, `/effort` gefolgt von einem Stufennamen, um sie direkt einzustellen, oder `/effort auto`, um Ihre gespeicherte Stufe für das aktive Modell zu löschen689* **`/effort`**: Führen Sie `/effort` ohne Argumente aus, um einen interaktiven Slider zu öffnen, `/effort` gefolgt von einem Stufennamen, um sie direkt einzustellen, oder `/effort auto`, um Ihre gespeicherte Stufe für das aktive Modell zu löschen

690* **In `/model`**: Verwenden Sie die Pfeiltasten links/rechts, um den Effort-Slider anzupassen, wenn Sie ein Modell auswählen690* **In `/model`**: Verwenden Sie die Pfeiltasten links/rechts, um den Effort-Slider anzupassen, wenn Sie ein Modell auswählen

691* **`--effort` Flag**: Übergeben Sie einen Stufennamen, um ihn beim Start von Claude Code für eine einzelne Sitzung einzustellen691* **`--effort` Flag**: Übergeben Sie einen Stufennamen, um ihn beim Start von Claude Code für eine einzelne Sitzung einzustellen

692* **Umgebungsvariable**: Setzen Sie `CLAUDE_CODE_EFFORT_LEVEL` auf einen Stufennamen oder `auto`692* **Umgebungsvariable**: Setzen Sie `CLAUDE_CODE_EFFORT_LEVEL` auf einen Stufennamen. Damit Claude Code [keine Effort-Stufe sendet](#send-no-effort-level), setzen Sie sie stattdessen auf `auto` oder `unset`

693* **Einstellungen**: Stellen Sie eine Stufe pro Modell in [`modelSettings`](https://code.claude.com/docs/de/settings-reference#modelsettings) ein oder setzen Sie [`effortLevel`](https://code.claude.com/docs/de/settings-reference#effortlevel) auf `low`, `medium`, `high` oder `xhigh` als Standard für Modelle ohne eigene Stufe. `max` wird in keinem der beiden Schlüssel als Stufe akzeptiert, und `ultracode` hat seinen eigenen [`ultracode`](https://code.claude.com/docs/de/settings-reference#ultracode) Schlüssel693* **Einstellungen**: Stellen Sie eine Stufe pro Modell in [`modelSettings`](https://code.claude.com/docs/de/settings-reference#modelsettings) ein oder setzen Sie [`effortLevel`](https://code.claude.com/docs/de/settings-reference#effortlevel) auf `low`, `medium`, `high` oder `xhigh` als Standard für Modelle ohne eigene Stufe. `max` wird in keinem der beiden Schlüssel als Stufe akzeptiert, und `ultracode` hat seinen eigenen [`ultracode`](https://code.claude.com/docs/de/settings-reference#ultracode) Schlüssel

694* **Von einem verbundenen Gerät**: Wählen Sie in einer [Remote Control](https://code.claude.com/docs/de/remote-control.md#what-connected-devices-see)-Sitzung eine Stufe über die Effort-Steuerung auf Ihrem Telefon oder in Ihrem Browser. Die Stufe gilt nur für die aktuelle Sitzung. Erfordert Claude Code v2.1.234 oder später694* **Von einem verbundenen Gerät**: Wählen Sie in einer [Remote Control](https://code.claude.com/docs/de/remote-control.md#what-connected-devices-see)-Sitzung eine Stufe über die Effort-Steuerung auf Ihrem Telefon oder in Ihrem Browser. Die Stufe gilt nur für die aktuelle Sitzung. Erfordert Claude Code v2.1.234 oder später

695* **Skill- und Subagent-Frontmatter**: Stellen Sie `effort` in einer [Skill](https://code.claude.com/docs/de/skills.md#frontmatter-reference)- oder [Subagent](https://code.claude.com/docs/de/sub-agents.md#supported-frontmatter-fields)-Markdown-Datei ein, um die Effort-Stufe zu überschreiben, wenn dieser Skill oder Subagent läuft695* **Skill- und Subagent-Frontmatter**: Stellen Sie `effort` in einer [Skill](https://code.claude.com/docs/de/skills.md#frontmatter-reference)- oder [Subagent](https://code.claude.com/docs/de/sub-agents.md#supported-frontmatter-fields)-Markdown-Datei ein, um die Effort-Stufe zu überschreiben, wenn dieser Skill oder Subagent läuft


711 711 

712Vor v2.1.242 konnte Claude Code `/effort` selbst bis zum Ende des Turns in die Warteschlange stellen und tat dies immer in einer Sitzung, die keine [Feature-Flags abruft](https://code.claude.com/docs/de/env-vars.md#features-that-need-feature-flag-fetching), etwa bei einem [Drittanbieter-Provider](https://code.claude.com/docs/de/third-party-integrations.md).712Vor v2.1.242 konnte Claude Code `/effort` selbst bis zum Ende des Turns in die Warteschlange stellen und tat dies immer in einer Sitzung, die keine [Feature-Flags abruft](https://code.claude.com/docs/de/env-vars.md#features-that-need-feature-flag-fetching), etwa bei einem [Drittanbieter-Provider](https://code.claude.com/docs/de/third-party-integrations.md).

713 713 

714#### Keine Effort-Stufe senden

715 

716Wenn Claude Code keine Effort-Stufe an ein [unterstütztes Modell](#adjust-effort-level) sendet, gilt der [Standard der API](https://platform.claude.com/docs/en/build-with-claude/effort) statt des Standards von Claude Code. Damit Claude Code keine Stufe sendet, starten Sie `claude` aus einer Shell, die `CLAUDE_CODE_EFFORT_LEVEL` mit dem Wert `auto` oder dem Wert `unset` exportiert; beide bewirken dasselbe:

717 

718```bash theme={null}

719export CLAUDE_CODE_EFFORT_LEVEL=auto

720```

721 

722Die Sitzungskopfzeile und die Fußzeile zeigen keine Effort-Stufe an, solange keine gesendet wird. Um zu bestätigen, dass keine gesendet wird, führen Sie `/effort status` im Eingabefeld von Claude Code aus:

723 

724* **`Effort level: auto`**: Es wird keine Effort-Stufe gesendet.

725* **`Effort level: auto (currently <level>)`**: Es wird weiterhin eine Stufe gesendet. Wenn eine [`maxEffortLevel`](https://code.claude.com/docs/de/settings-reference#maxeffortlevel)-Einstellung unterhalb von `max` für das aktive Modell gilt, sendet Claude Code seinen eigenen Standard für das Modell, abgesenkt auf diese Obergrenze. Entfernen Sie die Einstellung oder setzen Sie sie auf `max`.

726 

727> [!NOTE]

728>

729> Vor v2.1.304 gab `/effort status` `Effort level: auto (currently high)` aus, auch wenn keine Stufe gesendet wurde.

730 

714#### Adaptive Überlegungen und feste Thinking-Budgets731#### Adaptive Überlegungen und feste Thinking-Budgets

715 732 

716Adaptive Überlegungen machen Thinking bei jedem Schritt optional, sodass Claude schneller auf alltägliche Prompts reagieren und tiefere Überlegungen für Schritte reservieren kann, die davon profitieren. Wenn Sie möchten, dass Claude häufiger oder seltener nachdenkt, als die aktuelle Stufe ergibt, können Sie dies direkt in Ihrem Prompt oder in `CLAUDE.md` sagen; das Modell reagiert auf diese Anleitung innerhalb seiner Effort-Einstellung.733Adaptive Überlegungen machen Thinking bei jedem Schritt optional, sodass Claude schneller auf alltägliche Prompts reagieren und tiefere Überlegungen für Schritte reservieren kann, die davon profitieren. Wenn Sie möchten, dass Claude häufiger oder seltener nachdenkt, als die aktuelle Stufe ergibt, können Sie dies direkt in Ihrem Prompt oder in `CLAUDE.md` sagen; das Modell reagiert auf diese Anleitung innerhalb seiner Effort-Einstellung.

Details

861* `output_tokens`: Anzahl der Ausgabe-Token861* `output_tokens`: Anzahl der Ausgabe-Token

862* `cache_read_tokens`: Anzahl der aus dem Cache gelesenen Token862* `cache_read_tokens`: Anzahl der aus dem Cache gelesenen Token

863* `cache_creation_tokens`: Anzahl der für die Cache-Erstellung verwendeten Token863* `cache_creation_tokens`: Anzahl der für die Cache-Erstellung verwendeten Token

864* `cache_creation_5m_tokens`, `cache_creation_1h_tokens`: die Anzahl der Token, die laut API-Antwort mit einer [Cache-Lebensdauer](https://code.claude.com/docs/de/prompt-caching.md#cache-lifetime) von fünf Minuten in den Cache geschrieben wurden, und die Anzahl der mit einer Lebensdauer von einer Stunde geschriebenen. Beide sind `0`, wenn die API-Antwort sie nicht meldet, auch wenn `cache_creation_tokens` größer als null ist. Erfordert Claude Code v2.1.300 oder höher

864* `request_id`: API-Anfrage-ID, etwa `"req_011..."`, beschrieben unter [Attribute zur Ereigniskorrelation](#event-correlation-attributes).865* `request_id`: API-Anfrage-ID, etwa `"req_011..."`, beschrieben unter [Attribute zur Ereigniskorrelation](#event-correlation-attributes).

865* `client_request_id`: Vom Client generierte UUID, die als Request-Header `x-client-request-id` gesendet wird; wann sie vorhanden ist, sehen Sie in der Tabelle [Attribute zur Ereigniskorrelation](#event-correlation-attributes)866* `client_request_id`: Vom Client generierte UUID, die als Request-Header `x-client-request-id` gesendet wird; wann sie vorhanden ist, sehen Sie in der Tabelle [Attribute zur Ereigniskorrelation](#event-correlation-attributes)

866* `speed`: `"fast"` oder `"normal"`, gibt an, ob der Fast-Modus aktiv war867* `speed`: `"fast"` oder `"normal"`, gibt an, ob der Fast-Modus aktiv war

Details

287claude --permission-mode acceptEdits287claude --permission-mode acceptEdits

288```288```

289 289 

290## Analysieren Sie vor dem Bearbeiten mit dem Plan-Modus290## Vor dem Bearbeiten analysieren mit dem Plan-Modus

291 291 

292Der Plan-Modus weist Claude an, Änderungen zu recherchieren und vorzuschlagen, ohne sie vorzunehmen. Claude liest Dateien, führt Shell-Befehle aus, um zu erkunden, und schreibt einen Plan, bearbeitet aber nicht Ihre Quelle. Außer in interaktiven Terminal-Sitzungen mit [verfügbaren Bypass-Berechtigungen](#skip-all-checks-with-bypasspermissions-mode) bleiben Bearbeitungen blockiert, bis Sie den Plan genehmigen.292Der Plan-Modus weist Claude an, Änderungen zu recherchieren und vorzuschlagen, ohne sie vorzunehmen. Claude liest Dateien, führt Shell-Befehle zur Erkundung aus und erstellt einen Plan, bearbeitet aber Ihren Quellcode nicht. Außer in interaktiven Terminal-Sitzungen mit [verfügbarem Bypass-Permissions-Modus](#skip-all-checks-with-bypasspermissions-mode) bleiben Bearbeitungen blockiert, bis Sie den Plan genehmigen.

293 293 

294Was mit einem Shell-Befehl während der Planung geschieht, hängt von der Sitzung ab, und der erste dieser Fälle, der zutrifft, gilt:294Was während der Planung mit einem Shell-Befehl geschieht, hängt von der Sitzung ab, und es gilt der erste der folgenden Fälle, der zutrifft:

295 295 

296* **Interaktive Terminal-Sitzungen mit verfügbaren Bypass-Berechtigungen**: Weder der Klassifizierer noch eine Aufforderung gilt für Planungsbefehle. [Alle Überprüfungen mit bypassPermissions-Modus überspringen](#skip-all-checks-with-bypasspermissions-mode) behandelt die wenigen Dinge, die dort weiterhin auffordern.296* **Interaktive Terminal-Sitzungen mit verfügbarem Bypass-Permissions-Modus**: Weder der Klassifikator noch eine Berechtigungsabfrage gilt für Befehle während der Planung. [Alle Prüfungen mit dem bypassPermissions-Modus überspringen](#skip-all-checks-with-bypasspermissions-mode) beschreibt die wenigen Fälle, in denen dort weiterhin nachgefragt wird.

297* **[Auto-Modus](https://code.claude.com/docs/de/auto-mode-config.md) verfügbar und die `useAutoModeDuringPlan` Einstellung aktiviert**, was die Standardeinstellung ist: Der Klassifizierer überprüft Shell-Befehle außer [kritischen Pfad-Entfernungen](#critical-paths) statt Sie zu fragen. Genehmigte Befehle laufen, und abgelehnte werden blockiert.297* **[Auto-Modus](https://code.claude.com/docs/de/auto-mode-config.md) verfügbar und die Einstellung `useAutoModeDuringPlan` aktiviert**, was standardmäßig der Fall ist: Der Klassifikator prüft Shell-Befehle mit Ausnahme von [Löschvorgängen auf kritischen Pfaden](#critical-paths), anstatt Sie um Bestätigung zu bitten. Genehmigte Befehle werden ausgeführt, abgelehnte werden blockiert.

298* **Auto-Modus nicht verfügbar oder `useAutoModeDuringPlan` deaktiviert**: Befehle außerhalb des [integrierten schreibgeschützten Satzes](https://code.claude.com/docs/de/permissions.md#read-only-commands) fordern zur Genehmigung auf, auch wenn der Sandbox-[Auto-Allow-Modus](https://code.claude.com/docs/de/sandboxing.md#sandbox-modes) aktiviert ist.298* **Auto-Modus nicht verfügbar oder `useAutoModeDuringPlan` deaktiviert**: Befehle außerhalb der [integrierten Menge nur lesender Befehle](https://code.claude.com/docs/de/permissions.md#read-only-commands) erfordern eine Genehmigung, auch wenn der [Auto-Allow-Modus](https://code.claude.com/docs/de/sandboxing.md#sandbox-modes) der Sandbox aktiviert ist.

299 299 

300Geben Sie den Plan-Modus ein, indem Sie `Shift+Tab` drücken oder einem einzelnen Prompt `/plan` voranstellen. Sie können auch vom CLI aus im Plan-Modus starten:300Wechseln Sie in den Plan-Modus, indem Sie `Shift+Tab` drücken oder einem einzelnen Prompt `/plan` voranstellen. Sie können auch über die CLI im Plan-Modus starten:

301 301 

302```bash theme={null}302```bash theme={null}

303claude --permission-mode plan303claude --permission-mode plan

304```304```

305 305 

306Drücken Sie `Shift+Tab` erneut, um den Plan-Modus zu verlassen, ohne einen Plan zu genehmigen.306Drücken Sie erneut `Shift+Tab`, um den Plan-Modus zu verlassen, ohne einen Plan zu genehmigen.

307 307 

308### Überprüfen und genehmigen Sie einen Plan308### Einen Plan prüfen und genehmigen

309 309 

310Wenn der Plan fertig ist, präsentiert Claude ihn und fragt, wie Sie vorgehen möchten. Von dieser Aufforderung aus können Sie wählen:310Wenn der Plan fertig ist, präsentiert Claude ihn und fragt, wie fortgefahren werden soll. In dieser Abfrage können Sie wählen:

311 311 

312* **Ja, und Auto-Modus verwenden**: Genehmigen und im [Auto-Modus](#eliminate-prompts-with-auto-mode) starten. Wenn Auto-Modus nicht [für Ihre Sitzung verfügbar](#eliminate-prompts-with-auto-mode) ist, beispielsweise weil Ihre Organisation ihn deaktiviert hat, liest diese Option **Ja, Auto-Bearbeitungen akzeptieren**. Wenn Sie die Sitzung mit aktivierten Bypass-Berechtigungen gestartet haben, liest die Option **Ja, und zum BYPASS PERMISSIONS (keine weiteren Aufforderungen) für diese Sitzung wechseln** statt.312* **Yes, and use auto mode**: Genehmigen und im [Auto-Modus](#eliminate-prompts-with-auto-mode) starten. Wenn der Auto-Modus [für Ihre Sitzung nicht verfügbar](#eliminate-prompts-with-auto-mode) ist, zum Beispiel weil Ihre Organisation ihn deaktiviert hat, lautet diese Option **Yes, auto-accept edits**. Wenn Sie die Sitzung mit aktiviertem Bypass-Permissions-Modus gestartet haben, lautet die Option stattdessen **Yes, and switch to BYPASS PERMISSIONS (no further prompts) for this session**.

313* **Ja, Bearbeitungen manuell genehmigen**: Genehmigen und jede Bearbeitung einzeln überprüfen.313* **Yes, manually approve edits**: Genehmigen und jede Bearbeitung einzeln prüfen.

314* **Nein, weiter planen**: Bleiben Sie im Plan-Modus und sagen Sie Claude, was zu ändern ist.314* **No, keep planning**: Im Plan-Modus bleiben und Claude mitteilen, was geändert werden soll.

315 315 

316Das Genehmigen eines Plans beendet den Plan-Modus und wechselt die Sitzung zum Berechtigungsmodus, den jede Genehmigungsoption beschreibt, sodass Claude mit der Bearbeitung beginnt. Um erneut zu planen, wechseln Sie mit `Shift+Tab` zurück zum Plan-Modus, oder stellen Sie Ihrem nächsten Prompt `/plan` voran.316Das Genehmigen eines Plans beendet den Plan-Modus und schaltet die Sitzung in den Berechtigungsmodus, den die jeweilige Genehmigungsoption beschreibt, sodass Claude mit dem Bearbeiten beginnt. Um erneut zu planen, wechseln Sie mit `Shift+Tab` zurück in den Plan-Modus oder stellen Sie Ihrem nächsten Prompt `/plan` voran.

317 317 

318Drücken Sie `Ctrl+G`, um den vorgeschlagenen Plan in Ihrem Standard-Texteditor zu öffnen und ihn direkt zu bearbeiten, bevor Claude fortfährt. Wenn [`showClearContextOnPlanAccept`](https://code.claude.com/docs/de/settings-reference#showclearcontextonplanaccept) aktiviert ist, erhält die Liste eine erste Option, die den Plan genehmigt und den Planungskontext löscht.318Drücken Sie `Ctrl+G`, um den vorgeschlagenen Plan in Ihrem Standard-Texteditor zu öffnen und ihn direkt zu bearbeiten, bevor Claude fortfährt. Wenn [`showClearContextOnPlanAccept`](https://code.claude.com/docs/de/settings-reference#showclearcontextonplanaccept) aktiviert ist, erhält die Liste eine zusätzliche erste Option, die den Plan genehmigt und den Planungskontext löscht.

319 319 

320Das Akzeptieren eines Plans gibt der Sitzung auch einen [generierten Titel](https://code.claude.com/docs/de/sessions.md#name-your-sessions) basierend auf dem Plan, es sei denn, Sie haben die Sitzung bereits benannt.320Das Annehmen eines Plans gibt der Sitzung außerdem einen [generierten Titel](https://code.claude.com/docs/de/sessions.md#name-your-sessions) auf Grundlage des Plans, sofern Sie die Sitzung nicht bereits benannt haben.

321 321 

322### Legen Sie den Plan-Modus als Standard fest322### Den Plan-Modus als Standard festlegen

323 323 

324Um den Plan-Modus als Standard für die Terminal-Sitzungen eines Projekts festzulegen, setzen Sie `defaultMode` auf `plan` in `.claude/settings.json`, wie das Beispiel unter [Starten Sie in einem anderen Berechtigungsmodus](#start-in-a-different-mode) zeigt. Konversationen, die die [VS Code-Erweiterung](https://code.claude.com/docs/de/vs-code.md) startet, lesen keine Projekteinstellungen für den Start-Berechtigungsmodus. Dort setzen Sie stattdessen `claudeCode.initialPermissionMode` auf `plan` in Ihren VS Code-Benutzereinstellungen.324Um den Plan-Modus zum Standard für die Terminal-Sitzungen eines Projekts zu machen, setzen Sie `defaultMode` in `.claude/settings.json` auf `plan`, platziert wie im Beispiel unter [In einem anderen Berechtigungsmodus starten](#start-in-a-different-mode) gezeigt. Konversationen, die die [VS Code-Erweiterung](https://code.claude.com/docs/de/vs-code.md) startet, lesen für den anfänglichen Berechtigungsmodus keine Projekteinstellungen. Setzen Sie dort stattdessen `claudeCode.initialPermissionMode` in Ihren VS Code-Benutzereinstellungen auf `plan`.

325 325 

326## Berechtigungsabfragen mit dem Auto-Modus eliminieren326## Berechtigungsabfragen mit dem Auto-Modus eliminieren

327 327 

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# Anthropics Marktplätze5# Anthropics Marketplaces

6 6 

7> Anthropics offizielle, Community- und Demo-Plugin-Marktplätze für Claude Code: ihre Namen, Repositories, wie Sie jeden hinzufügen, und wo Sie ihre Plugins durchsuchen können.7> Anthropics offizieller und Community-Plugin-Marketplace für Claude Code: ihre Namen, Repositorys, wie Sie jeden hinzufügen und wo Sie ihre Plugins durchsuchen können.

8 8 

9Anthropic veröffentlicht drei allgemeine Plugin-Marktplätze für Claude Code: [offiziell](https://github.com/anthropics/claude-plugins-official), [Community](https://github.com/anthropics/claude-plugins-community) und [Demo](https://github.com/anthropics/claude-code). Jeder ist ein Katalog von Plugins in seinem eigenen GitHub-Repository. Wenn Sie ein Plugin aus einem dieser Marktplätze in einer Claude Code-Sitzung installieren, geben Sie den Namen des Marktplatzes nach `@` ein, wie in `/plugin install commit-commands@claude-plugins-official`.9Anthropic veröffentlicht zwei allgemeine Plugin-Marketplaces für Claude Code: [offiziell](https://github.com/anthropics/claude-plugins-official) und [Community](https://github.com/anthropics/claude-plugins-community). Jeder ist ein Katalog von Plugins in seinem eigenen GitHub-Repository. Wenn Sie ein Plugin aus einem dieser Marketplaces in einer Claude Code-Sitzung installieren, geben Sie den Namen des Marketplace nach `@` ein, wie in `/plugin install commit-commands@claude-plugins-official`.

10 10 

11Verwenden Sie diese Seite, um die drei Marktplätze zu unterscheiden und um zu überprüfen, ob der offizielle Marktplatz ein bestimmtes Plugin enthält.11Verwenden Sie diese Seite, um die beiden Marketplaces zu unterscheiden und um herauszufinden, wo Sie überprüfen können, ob der offizielle Marketplace ein bestimmtes Plugin enthält.

12 12 

13> [!NOTE]13> [!NOTE]

14>14>


19 19 

20Gehen Sie zu dem Teil der Seite, den Sie benötigen:20Gehen Sie zu dem Teil der Seite, den Sie benötigen:

21 21 

22* Um die drei Marktplätze nach Repository, Marktplatzname und wie Sie jeden erhalten zu unterscheiden, siehe [Anthropics Marktplätze](#anthropic%E2%80%99s-marketplaces).22* Um die beiden Marketplaces nach Repository, Marketplace-Name und danach, wie Sie jeden erhalten, zu unterscheiden, siehe [Anthropics Marketplaces](#anthropic’s-marketplaces).

23* Um ein Plugin im offiziellen Marktplatz zu finden, siehe [Plugins im offiziellen Marktplatz finden](#find-plugins-in-the-official-marketplace).23* Um ein Plugin im offiziellen Marktplatz zu finden, siehe [Plugins im offiziellen Marktplatz finden](#find-plugins-in-the-official-marketplace).

24 24 

25## Anthropics Marktplätze25## Anthropics Marktplätze

26 26 

27Ein Marktplatz ist ein Katalog von Plugins, den ein Repository in seiner `.claude-plugin/marketplace.json`-Datei definiert. Die offiziellen, Community- und Demo-Marktplätze stammen jeweils aus ihrem eigenen GitHub-Repository. Anthropic veröffentlicht auch themenspezifische Marktplätze, wie `anthropics/skills` und `anthropics/knowledge-work-plugins`, die Sie in einer Claude Code-Sitzung mit `/plugin marketplace add <owner>/<repo>` hinzufügen.27Ein Marketplace ist ein Katalog von Plugins, den ein Repository in seiner `.claude-plugin/marketplace.json`-Datei definiert. Der offizielle und der Community-Marketplace stammen jeweils aus ihrem eigenen GitHub-Repository. Anthropic veröffentlicht auch themenspezifische Marketplaces, wie `anthropics/skills` und `anthropics/knowledge-work-plugins`, die Sie in einer Claude Code-Sitzung mit `/plugin marketplace add <owner>/<repo>` hinzufügen.

28 28 

29Diese Tabelle zeigt das Repository und den Marktplatznamen jedes Marktplatzes, den Sie nach `@` eingeben, wenn Sie ein Plugin aus diesem Marktplatz installieren. Der Name des Community-Marktplatzes ist `claude-community`, nicht sein Repository-Name.29Diese Tabelle zeigt das Repository und den Marktplatznamen jedes Marktplatzes, den Sie nach `@` eingeben, wenn Sie ein Plugin aus diesem Marktplatz installieren. Der Name des Community-Marktplatzes ist `claude-community`, nicht sein Repository-Name.

30 30 

31| | Offiziell | Community | Demo |31| | Offiziell | Community |

32| :- | :- | :- | :- |32| :- | :- | :- |

33| Repository | [`anthropics/claude-plugins-official`](https://github.com/anthropics/claude-plugins-official) | [`anthropics/claude-plugins-community`](https://github.com/anthropics/claude-plugins-community) | [`anthropics/claude-code`](https://github.com/anthropics/claude-code/tree/main/plugins) |33| Repository | [`anthropics/claude-plugins-official`](https://github.com/anthropics/claude-plugins-official) | [`anthropics/claude-plugins-community`](https://github.com/anthropics/claude-plugins-community) |

34| Marktplatzname | `claude-plugins-official` | `claude-community` | `claude-code-plugins` |34| Marketplace-Name | `claude-plugins-official` | `claude-community` |

35| Was ist darin | Plugins, die Anthropic verwaltet, plus Plugins von Partnern und anderen Autoren | Plugins von Drittanbietern, die ihre Autoren bei Anthropic eingereicht haben | Ein kleiner Satz von Beispiel-Plugins, die zeigen, was ein Plugin enthalten kann |35| Was ist darin | Plugins, die Anthropic verwaltet, plus Plugins von Partnern und anderen Autoren | Plugins von Drittanbietern, die ihre Autoren bei Anthropic eingereicht haben |

36| Wie Sie es erhalten | Claude Code fügt es beim ersten Start einer interaktiven Terminal-Sitzung hinzu, es sei denn, eine [verwaltete Richtlinie](https://code.claude.com/docs/de/plugins/org.md#allow-the-official-marketplace-and-your-own) oder `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL` blockiert es. Siehe [Marktplatz `claude-plugins-official` nicht gefunden](https://code.claude.com/docs/de/plugins/troubleshooting#marketplace-claude-plugins-official-not-found), wenn er fehlt | Sie fügen ihn in einer Claude Code-Sitzung mit `/plugin marketplace add anthropics/claude-plugins-community` hinzu | Sie fügen ihn in einer Claude Code-Sitzung mit `/plugin marketplace add anthropics/claude-code` hinzu |36| Wie Sie es erhalten | Claude Code fügt ihn beim ersten Start einer interaktiven Terminal-Sitzung hinzu, es sei denn, eine [verwaltete Richtlinie](https://code.claude.com/docs/de/plugins/org.md#allow-the-official-marketplace-and-your-own) oder `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL` blockiert ihn. Siehe [Marketplace `claude-plugins-official` nicht gefunden](https://code.claude.com/docs/de/plugins/troubleshooting#marketplace-claude-plugins-official-not-found), wenn er fehlt | Sie fügen ihn in einer Claude Code-Sitzung mit `/plugin marketplace add anthropics/claude-plugins-community` hinzu |

37 37 

38Wenn Sie ein Plugin geschrieben haben und möchten, dass andere Personen es installieren, siehe [Ein Plugin veröffentlichen](https://code.claude.com/docs/de/plugins/publish.md), das Ihren eigenen Marktplatz und die Einreichung bei Anthropics Verzeichnis behandelt.38Wenn Sie ein Plugin geschrieben haben und möchten, dass andere Personen es installieren, siehe [Ein Plugin veröffentlichen](https://code.claude.com/docs/de/plugins/publish.md), das Ihren eigenen Marktplatz und die Einreichung bei Anthropics Verzeichnis behandelt.

39 39 

40### Der Demo-Marktplatz in `anthropics/claude-code`40### Veralteter Marketplace `claude-code-plugins`

41 41 

42Wenn ein Tutorial oder ein älterer Satz von Anweisungen Ihnen sagt, `/plugin marketplace add anthropics/claude-code` auszuführen, wird der Demo-Marktplatz mit dem Namen `claude-code-plugins` hinzugefügt. Dies ist nicht der offizielle Marktplatz.42> [!WARNING]

43>

44> Der Marketplace `claude-code-plugins` in `anthropics/claude-code` ist veraltet. Um ein Plugin hinzuzufügen, führen Sie `claude plugin install <plugin>@claude-plugins-official` in Ihrer Shell aus und überspringen Sie jeden Tutorial-Schritt, der `/plugin marketplace add anthropics/claude-code` ausführt.

45 

46Sofern Sie nicht eines der beiden unten aufgeführten Plugins haben, können Sie Ihre `claude-code-plugins`-Plugins und den Marketplace unverändert lassen. Sie werden aus dem Repository `claude-plugins-official` aktualisiert.

43 47 

44Die meisten Plugins des Demo-Marktplatzes befinden sich auch im offiziellen Marktplatz unter denselben Namen. Zum Beispiel sind `code-review`, `feature-dev` und `commit-commands` in beiden. Installieren Sie diese von `claude-plugins-official`, damit Sie nicht zwei Kopien installiert haben.48* **`ralph-wiggum`**: Dieses Plugin heißt jetzt `ralph-loop`, und seine Befehle beginnen mit `/ralph-loop:`. Wenn diese Befehle nicht verfügbar sind, führen Sie `claude plugin install ralph-loop@claude-plugins-official` in Ihrer Shell aus.

49* **`claude-opus-4-5-migration`**: Dieses Plugin wurde eingestellt. Entfernen Sie es daher, indem Sie `claude plugin uninstall claude-opus-4-5-migration@claude-code-plugins` in Ihrer Shell ausführen.

50 

51Wenn ein anderes Plugin nicht mehr funktioniert, siehe [Plugin installiert, funktioniert aber nicht](https://code.claude.com/docs/de/plugins/troubleshooting.md#plugin-installed-but-not-working).

45 52 

46## Plugins im offiziellen Marktplatz finden53## Plugins im offiziellen Marktplatz finden

47 54 


62 69 

63Um von der Desktop-App oder von einem Skript zu installieren oder um zu sehen, was eine Cloud-Sitzung lädt, siehe [Plugins installieren](https://code.claude.com/docs/de/plugins/install.md).70Um von der Desktop-App oder von einem Skript zu installieren oder um zu sehen, was eine Cloud-Sitzung lädt, siehe [Plugins installieren](https://code.claude.com/docs/de/plugins/install.md).

64 71 

65### Den Community- oder Demo-Marktplatz hinzufügen72### Den Community-Marktplatz hinzufügen

66 

67Die Community- und Demo-Marktplätze sind nicht registriert, bis Sie sie in einer Claude Code-Sitzung hinzufügen:

68 73 

69* **Community**: Führen Sie `/plugin marketplace add anthropics/claude-plugins-community` aus, dann installieren Sie mit dem Suffix `@claude-community`.74Der Community-Marktplatz ist nicht registriert, bis Sie ihn hinzufügen. Führen Sie in einer Claude Code-Sitzung `/plugin marketplace add anthropics/claude-plugins-community` aus und installieren Sie dann mit dem Suffix `@claude-community`.

70* **Demo**: Führen Sie `/plugin marketplace add anthropics/claude-code` aus, dann installieren Sie mit dem Suffix `@claude-code-plugins`.

71 75 

72Wenn `claude-plugins-official` nicht auf der Registerkarte **Marketplaces** von `/plugin` vorhanden ist, fügen Sie ihn auf die gleiche Weise mit `/plugin marketplace add anthropics/claude-plugins-official` hinzu.76Wenn `claude-plugins-official` nicht auf der Registerkarte **Marketplaces** von `/plugin` vorhanden ist, fügen Sie ihn auf die gleiche Weise mit `/plugin marketplace add anthropics/claude-plugins-official` hinzu.

73 77 

Details

638| Exit-Code | Ergebniszeile | Bedeutung |638| Exit-Code | Ergebniszeile | Bedeutung |

639| :- | :- | :- |639| :- | :- | :- |

640| `0` | `Validation passed` oder `Validation passed with warnings` | Das Manifest wird geladen. Mit `--strict` zusätzlich keine Warnungen |640| `0` | `Validation passed` oder `Validation passed with warnings` | Das Manifest wird geladen. Mit `--strict` zusätzlich keine Warnungen |

641| `1` | `Validation failed` oder `Validation failed (--strict treats warnings as errors)` | Ein Fehler oder eine Warnung unter `--strict` |641| `1` | `Validation failed` oder `Validation failed (--strict treats warnings as errors)` | Ein Fehler oder eine Warnung unter `--strict`. [Hinweise](#advice-on-the-readme) zählen nicht, weder mit noch ohne `--strict` |

642| `2` | `Unexpected error during validation: <reason>` | Der Validator selbst ist fehlgeschlagen, etwa bei einem nicht lesbaren Pfad |642| `2` | `Unexpected error during validation: <reason>` | Der Validator selbst ist fehlgeschlagen, etwa bei einem nicht lesbaren Pfad |

643 643 

644Mit `--json` schreibt Claude Code den Bericht als ein JSON-Objekt mit diesen Feldern der obersten Ebene auf stdout:644Mit `--json` schreibt Claude Code den Bericht als ein JSON-Objekt mit diesen Feldern der obersten Ebene auf stdout:


647* `strict`: ob der Lauf Warnungen als Fehler behandelt hat647* `strict`: ob der Lauf Warnungen als Fehler behandelt hat

648* `target`: der aufgelöste Pfad, den Claude Code validiert hat648* `target`: der aufgelöste Pfad, den Claude Code validiert hat

649* `manifest`: das eigene Ergebnis des Manifests oder `null` bei einem Lauf ohne Manifest649* `manifest`: das eigene Ergebnis des Manifests oder `null` bei einem Lauf ohne Manifest

650* `contents`: Ergebnisse pro Datei, die jeweils ihre `file` nennen und die Arrays `errors`, `warnings` und `notes` enthalten650* `contents`: Ergebnisse pro Datei, die jeweils ihre `file` nennen und die Arrays `errors`, `warnings` und `notes` enthalten. Dateien ohne Fehler, Warnung oder Anmerkung erhalten keinen Eintrag, sodass `contents` leer ist, wenn es nichts zu melden gibt. Bei einem [Verzeichnis mit `marketplace.json` und `plugin.json`](#validate-a-directory) ist `manifest` das Ergebnis von `marketplace.json`, und die Ergebnisse von `plugin.json` stehen in `contents`

651 * `gatingHooks`: ob jeder Hook eines [Mods](https://code.claude.com/docs/de/plugins/mods/overview.md), der eine Aktion ablehnen kann, etwa ein `tool.call`-Hook, einen [`.catch`-Handler](https://code.claude.com/docs/de/plugins/mods/events#handle-a-hook-that-fails) hat. Jeder Eintrag enthält `module`, `pattern`, `hook` und `hasCatch`. Erfordert Claude Code v2.1.290 oder höher651 * `gatingHooks`: ob jeder Hook eines [Mods](https://code.claude.com/docs/de/plugins/mods/overview.md), der eine Aktion ablehnen kann, etwa ein `tool.call`-Hook, einen [`.catch`-Handler](https://code.claude.com/docs/de/plugins/mods/events#handle-a-hook-that-fails) hat. Jeder Eintrag enthält `module`, `pattern`, `hook` und `hasCatch`. Erfordert Claude Code v2.1.290 oder höher

652* `advice`: die [Hinweise](#advice-on-the-readme) des Laufs; jeder Eintrag nennt die README als `file` und enthält eine `message` sowie die einzufügende `installLine`. Leer, wenn es keine gibt. Erfordert Claude Code v2.1.295 oder höher

652 653 

653Bei Exit-Code `2` schreibt der Befehl nichts auf stdout. Die Fehlermeldung wird auf stderr ausgegeben.654Bei Exit-Code `2` schreibt der Befehl nichts auf stdout. Die Fehlermeldung wird auf stderr ausgegeben.

654 655 

656#### Hinweise zur README

657 

658Ein `Advice`-Block in der Ausgabe von `claude plugin validate` bedeutet, dass die README eines Plugins keine Zeile enthält, die das Plugin aus einem Marketplace installiert, und er gibt Ihnen eine Zeile zum Hinzufügen vor. Ein Hinweis ist weder ein Fehler noch eine Warnung. Er ändert weder die Ergebniszeile noch den Exit-Code, weder mit noch ohne `--strict`. Er erfordert Claude Code v2.1.295 oder höher.

659 

660Beispielsweise gibt die Validierung des Verzeichnisses des Marketplace `acme-tools` diesen Hinweis für dessen Plugin `deploy-helper` aus:

661 

662```text theme={null}

663Validating marketplace manifest: /path/to/acme-tools/.claude-plugin/marketplace.json

664 

665ℹ Advice (does not change the verdict):

666 

667 ❯ /path/to/acme-tools/plugins/deploy-helper/README.md: This README has no line that installs "deploy-helper" from a marketplace. Add the install line, which works in one step on Claude Code 2.1.275 or later.

668 /plugin install deploy-helper --marketplace acme/tools

669 

670✔ Validation passed

671```

672 

673Um den Hinweis zu beseitigen, fügen Sie die vorgeschlagene Zeile in die genannte README ein und führen Sie dann `claude plugin validate` erneut in Ihrer Shell aus. Der `Advice`-Block ist dann verschwunden.

674 

675Wenn die vorgeschlagene Zeile den Platzhalter `<owner>/<repo>` enthält, beseitigt das unveränderte Einfügen den Hinweis nicht. Ermitteln Sie zuerst die tatsächliche Quelle:

676 

677* **Sie haben das eigene Verzeichnis des Plugins validiert**: Wenn der Marketplace das Plugin aus einem Verzeichnis innerhalb seines eigenen auflistet, validieren Sie stattdessen dieses Verzeichnis. Wenn er das Plugin von einem anderen Ort auflistet, etwa aus einem GitHub-Repository, tragen Sie `<owner>/<repo>` selbst ein

678* **Sie haben das Verzeichnis des Marketplace validiert**: Claude Code ermittelt die Quelle aus dem Remote `origin` des `.git`-Verzeichnisses auf oberster Ebene dieses Verzeichnisses. Wenn es dieses Remote nicht verwenden kann, etwa weil keines vorhanden ist, ersetzen Sie `<owner>/<repo>` selbst durch die Quelle Ihres Marketplace

679 

680Eine bereits von Ihnen geschriebene Installationszeile zählt, wenn auf `plugin install` oder dessen Kurzform `plugin i` in derselben Zeile eines der folgenden Elemente folgt. Die Schreibweisen `/plugin` und `claude plugin` zählen beide:

681 

682* `<plugin>@<marketplace>`, etwa `/plugin install deploy-helper@acme-tools`

683* Der Name des Plugins und `--marketplace <source>`, etwa `/plugin install deploy-helper --marketplace acme/tools`

684 

655## claude plugin marketplace-Befehle685## claude plugin marketplace-Befehle

656 686 

657Führen Sie `claude plugin marketplace <subcommand>` aus Ihrer Shell aus, um die Marktplätze, von denen Sie Plugins installieren, hinzuzufügen, aufzulisten, zu aktualisieren und zu entfernen.687Führen Sie `claude plugin marketplace <subcommand>` aus Ihrer Shell aus, um die Marktplätze, von denen Sie Plugins installieren, hinzuzufügen, aufzulisten, zu aktualisieren und zu entfernen.

Details

376* [Plugin-Struktur und Tests](https://claude.com/docs/plugins/build): derselbe Plugin-Ordner wird auf claude.ai und in Cowork installiert. Einige Komponenten sind nur für Claude Code verfügbar, und die [Komponentenunterstützungstabelle](https://claude.com/docs/plugins/platform-support#compare-component-support-by-app) listet auf, welche auf jeder Oberfläche geladen werden376* [Plugin-Struktur und Tests](https://claude.com/docs/plugins/build): derselbe Plugin-Ordner wird auf claude.ai und in Cowork installiert. Einige Komponenten sind nur für Claude Code verfügbar, und die [Komponentenunterstützungstabelle](https://claude.com/docs/plugins/platform-support#compare-component-support-by-app) listet auf, welche auf jeder Oberfläche geladen werden

377* [Plugin-Manifest-Referenz](https://code.claude.com/docs/de/plugins/manifest-reference.md): jedes `plugin.json`-Feld, jede Pfadregel und jedes Verzeichnis377* [Plugin-Manifest-Referenz](https://code.claude.com/docs/de/plugins/manifest-reference.md): jedes `plugin.json`-Feld, jede Pfadregel und jedes Verzeichnis

378* [Skills](https://code.claude.com/docs/de/skills.md): schreiben Sie die Skills, die Ihr Plugin bereitstellt378* [Skills](https://code.claude.com/docs/de/skills.md): schreiben Sie die Skills, die Ihr Plugin bereitstellt

379* [Anthropics Plugins im claude-code-Repository](https://github.com/anthropics/claude-code/tree/main/plugins): vollständige durchgearbeitete Beispiele des Layouts auf dieser Seite, z. B. `feature-dev` und `code-review`379* [Anthropics Plugins im claude-plugins-official-Repository](https://github.com/anthropics/claude-plugins-official/tree/main/plugins): vollständige durchgearbeitete Beispiele des Layouts auf dieser Seite, z. B. `feature-dev` und `code-review`

Details

220 220 

221## Hosten Sie Ihren Marketplace221## Hosten Sie Ihren Marketplace

222 222 

223Sobald Sie ein Plugin aus dem Marketplace auf Ihrem eigenen Computer installieren können, wie in [Einen Marketplace erstellen](#create-a-marketplace), pushen Sie das Marketplace-Verzeichnis zu einem Git-Host.223Sobald Sie ein Plugin aus dem Marketplace auf Ihrem eigenen Computer installieren können, wie in [Einen Marketplace erstellen](#create-a-marketplace), pushen Sie das Marketplace-Verzeichnis zu einem Git-Host. Geben Sie dem Marketplace vor dem Pushen einen `name` auf oberster Ebene, den andere Autoren wahrscheinlich nicht wählen, da ein Benutzer [keine zwei Marketplaces mit demselben Namen haben kann](https://code.claude.com/docs/de/plugins/marketplace-reference.md#marketplace-file).

224 224 

225Ihre Teamkollegen führen dann `claude plugin marketplace add <owner>/<repo>` in ihrer Shell für ein GitHub-Repository aus, oder den gleichen Befehl mit der Repository-URL. Sie installieren dann ein Plugin nach Name wie in [der Anleitung](#create-a-marketplace).225Ihre Teamkollegen führen dann `claude plugin marketplace add <owner>/<repo>` in ihrer Shell für ein GitHub-Repository aus, oder den gleichen Befehl mit der Repository-URL. Sie installieren dann ein Plugin nach Name wie in [der Anleitung](#create-a-marketplace).

226 226 

Details

193 193 

194| Quelle | Was Sie eingeben | Beispiel |194| Quelle | Was Sie eingeben | Beispiel |

195| :- | :- | :- |195| :- | :- | :- |

196| GitHub-Repository | `owner/repo`. Fügen Sie `#ref` hinzu, um einen Branch oder Tag zu fixieren. | `/plugin marketplace add anthropics/claude-code`, oder `/plugin marketplace add your-org/plugins#v1.2.0`, um den Tag `v1.2.0` zu fixieren |196| GitHub-Repository | `owner/repo`. Fügen Sie `#ref` hinzu, um einen Branch oder Tag zu fixieren. | `/plugin marketplace add anthropics/claude-plugins-official`, oder `/plugin marketplace add your-org/plugins#v1.2.0`, um den Tag `v1.2.0` zu fixieren |

197| Git-Repository auf einem beliebigen Host | Die vollständige Clone-URL. Fügen Sie `#ref` hinzu, um einen Branch oder Tag zu fixieren. | `/plugin marketplace add https://gitlab.example.com/your-group/your-marketplace.git#v1.0.0` |197| Git-Repository auf einem beliebigen Host | Die vollständige Clone-URL. Fügen Sie `#ref` hinzu, um einen Branch oder Tag zu fixieren. | `/plugin marketplace add https://gitlab.example.com/your-group/your-marketplace.git#v1.0.0` |

198| Lokales Verzeichnis oder Datei | Ein relativer oder absoluter Pfad zu einem Verzeichnis, das `.claude-plugin/marketplace.json` enthält, oder zur JSON-Datei selbst. Beginnen Sie einen relativen Pfad mit `./` oder `../`, da Claude Code ein bloßes `name/name` als GitHub-Repository liest. | `/plugin marketplace add ./my-marketplace` |198| Lokales Verzeichnis oder Datei | Ein relativer oder absoluter Pfad zu einem Verzeichnis, das `.claude-plugin/marketplace.json` enthält, oder zur JSON-Datei selbst. Beginnen Sie einen relativen Pfad mit `./` oder `../`, da Claude Code ein bloßes `name/name` als GitHub-Repository liest. | `/plugin marketplace add ./my-marketplace` |

199| Gehostetes `marketplace.json` | Seine `https://`-URL | `/plugin marketplace add https://example.com/marketplace.json` |199| Gehostetes `marketplace.json` | Seine `https://`-URL | `/plugin marketplace add https://example.com/marketplace.json` |


383 383 

384## Nächste Schritte384## Nächste Schritte

385 385 

386* [Anthropics Marketplaces](https://code.claude.com/docs/de/plugins/anthropic-marketplaces.md): wie sich der offizielle, Community- und Demo-Marketplace unterscheiden und wo Sie jeden durchsuchen können386* [Anthropics Marketplaces](https://code.claude.com/docs/de/plugins/anthropic-marketplaces.md): wie sich der offizielle und der Community-Marketplace unterscheiden und wo Sie jeden durchsuchen können

387* [Plugin-Lade-Referenz](https://code.claude.com/docs/de/plugins/loading.md): warum ein Plugin geladen wurde, nicht geladen wurde, oder sich nach einer Aktualisierung nicht änderte387* [Plugin-Lade-Referenz](https://code.claude.com/docs/de/plugins/loading.md): warum ein Plugin geladen wurde, nicht geladen wurde, oder sich nach einer Aktualisierung nicht änderte

388* [Plugin-Sicherheit und Vertrauen](https://code.claude.com/docs/de/plugins/security.md): was Sie überprüfen sollten, bevor Sie ein Plugin aus einem Marketplace installieren, den Sie nicht kennen388* [Plugin-Sicherheit und Vertrauen](https://code.claude.com/docs/de/plugins/security.md): was Sie überprüfen sollten, bevor Sie ein Plugin aus einem Marketplace installieren, den Sie nicht kennen

389* [Plugins fehlerbeheben](https://code.claude.com/docs/de/plugins/troubleshooting.md): Installations- und Marketplace-Fehlermeldungen mit ihren Fixes389* [Plugins fehlerbeheben](https://code.claude.com/docs/de/plugins/troubleshooting.md): Installations- und Marketplace-Fehlermeldungen mit ihren Fixes

Details

69 69 

70In diesem Tutorial erstellen Sie einen Mod namens `first-mod`, der die Tool-Aufrufe von Claude zählt, die Anzahl neben dem Spinner anzeigt, während Claude arbeitet, und einen Befehl `/tally` hinzufügt, der sie ausgibt. Anschließend lesen Sie die Typdeklarationen, die Claude Code neben Ihren Mod schreibt, und führen `claude plugin validate` aus. Zusammen zeigen sie Ihnen die Events und Methoden, die Ihre Version bietet, und was Claude Code aus Ihrem Code liest.70In diesem Tutorial erstellen Sie einen Mod namens `first-mod`, der die Tool-Aufrufe von Claude zählt, die Anzahl neben dem Spinner anzeigt, während Claude arbeitet, und einen Befehl `/tally` hinzufügt, der sie ausgibt. Anschließend lesen Sie die Typdeklarationen, die Claude Code neben Ihren Mod schreibt, und führen `claude plugin validate` aus. Zusammen zeigen sie Ihnen die Events und Methoden, die Ihre Version bietet, und was Claude Code aus Ihrem Code liest.

71 71 

72Diese Aufnahme zeigt den fertigen Mod. Der Spinner zählt Tool-Aufrufe, `/tally` gibt die Anzahl aus, und eine Änderung am Code wird wirksam, während die Sitzung läuft:72Diese Aufzeichnung zeigt den fertigen Mod. Der Spinner zählt Tool-Aufrufe, `/tally` gibt die Anzahl aus, und eine Änderung am Code wird wirksam, während die Sitzung läuft:

73 73 

74<video autoPlay muted loop playsInline controls src="https://mintcdn.com/claude-code/dgiVO_Od1X1faduV/images/mods-first-mod-light.mp4?fit=max&auto=format&n=dgiVO_Od1X1faduV&q=85&s=eb561134afa90375777408453ba51c77" aria-label="In einer Claude Code-Sitzung wird der Prompt 'list the files here and read the README' eingegeben und gesendet. Der Spinner zeigt 'Thinking · tool calls: 1' an, und die Anzahl steigt, während Claude arbeitet. Der Befehl /tally gibt 'first-mod: Claude has made 3 tool calls since this mod loaded' aus. Eine Zeile meldet, dass first-mod neu geladen wurde, und listet seine vier Hooks auf. Beim nächsten Prompt zeigt der Spinner 'Thinking · tools used: 1' an." />74<video autoPlay muted loop playsInline controls src="https://mintcdn.com/claude-code/dgiVO_Od1X1faduV/images/mods-first-mod-light.mp4?fit=max&auto=format&n=dgiVO_Od1X1faduV&q=85&s=eb561134afa90375777408453ba51c77" aria-label="In einer Claude Code-Sitzung wird der Prompt 'list the files here and read the README' eingegeben und gesendet. Der Spinner zeigt 'Thinking · tool calls: 1', und die Anzahl steigt, während Claude arbeitet. Der Befehl /tally gibt 'first-mod: Claude has made 3 tool calls since this mod loaded' aus. Eine Zeile meldet, dass first-mod neu geladen wurde, und listet seine vier Hooks auf. Beim nächsten Prompt zeigt der Spinner 'Thinking · tools used: 1'." />

75 75 

76Sie schreiben drei Dateien:76Sie schreiben drei Dateien:

77 77 


85```85```

86 86 

87* **`plugin.json`**: das [Manifest](https://code.claude.com/docs/de/plugins/manifest-reference.md) des Plugins87* **`plugin.json`**: das [Manifest](https://code.claude.com/docs/de/plugins/manifest-reference.md) des Plugins

88* **`hooks.json`**: [verweist auf Ihre Codedatei](https://code.claude.com/docs/de/plugins/mods/reference.md#files)88* **`hooks.json`**: [verweist auf Ihre Code-Datei](https://code.claude.com/docs/de/plugins/mods/reference.md#files)

89* **`register.js`**: Ihr Code, das sogenannte Hooks-Modul89* **`register.js`**: Ihr Code, Hooks-Modul genannt

90 90 

91**1. Plugin-Verzeichnis erstellen**91**1. Plugin-Verzeichnis erstellen**

92 92 


117}117}

118```118```

119 119 

120**3. Claude Code mitteilen, wo sich Ihr Code befindet**120**3. Claude Code mitteilen, wo Ihr Code liegt**

121 121 

122Wenn Claude Code ein Plugin lädt, liest es die Datei `hooks/hooks.json` des Plugins. Der Schlüssel `modules` in dieser Datei gibt den Pfad zu Ihrem Code an, und erst dieser Schlüssel macht das Plugin zu einem Mod. Geben Sie einen Pfad relativ zu `hooks.json` an. Hier verweist er auf `register.js`, das Sie im nächsten Schritt schreiben.122Wenn Claude Code ein Plugin lädt, liest es die Datei `hooks/hooks.json` des Plugins. Der Schlüssel `modules` in dieser Datei gibt den Pfad zu Ihrem Code an, und genau dieser Schlüssel macht das Plugin zu einem Mod. Geben Sie einen Pfad relativ zu `hooks.json` an. Hier verweist er auf `register.js`, die Sie im nächsten Schritt schreiben.

123 123 

124Speichern Sie Folgendes als `first-mod/hooks/hooks.json`:124Speichern Sie Folgendes als `first-mod/hooks/hooks.json`:

125 125 


132 132 

133**4. Code schreiben**133**4. Code schreiben**

134 134 

135Diese Datei ist der Code des Mods, das sogenannte Hooks-Modul. Wenn der Mod geladen wird, ruft Claude Code die von der Datei exportierte Funktion `register` auf und übergibt ihr eine Funktion namens [`on`](https://code.claude.com/docs/de/plugins/mods/reference#the-hook-function). Jeder Aufruf von `on` registriert einen Event-Handler, einen sogenannten Hook, für das angegebene Event.135Diese Datei ist der Code des Mods, Hooks-Modul genannt. Wenn der Mod geladen wird, ruft Claude Code die Funktion `register` auf, die die Datei exportiert, und übergibt ihr eine Funktion namens [`on`](https://code.claude.com/docs/de/plugins/mods/reference#the-hook-function). Jeder Aufruf von `on` registriert einen Event-Handler, Hook genannt, für das Event, das er benennt.

136 136 

137Speichern Sie Folgendes als `first-mod/hooks/register.js`:137Speichern Sie Folgendes als `first-mod/hooks/register.js`:

138 138 


178 178 

179Die Datei speichert eine Anzahl in `calls` und registriert vier Hooks:179Die Datei speichert eine Anzahl in `calls` und registriert vier Hooks:

180 180 

181* **[`session.start`](https://code.claude.com/docs/de/plugins/mods/reference#session)** wird beim Start der Sitzung vor Ihrem ersten Prompt ausgeführt und erneut bei jedem Neuladen des Mods. Er fügt Claude Code den Befehl `/tally` hinzu.181* **[`session.start`](https://code.claude.com/docs/de/plugins/mods/reference#session)** wird ausgeführt, wenn die Sitzung startet, vor Ihrem ersten Prompt, und erneut bei jedem Neuladen des Mods. Er fügt Claude Code den Befehl `/tally` hinzu.

182* **[`tool.call`](https://code.claude.com/docs/de/plugins/mods/reference#tools)** wird jedes Mal ausgeführt, wenn Claude im Begriff ist, ein Tool zu verwenden. Er erhöht `calls` um eins und fordert Claude Code auf, die Oberfläche neu zu zeichnen.182* **[`tool.call`](https://code.claude.com/docs/de/plugins/mods/reference#tools)** wird jedes Mal ausgeführt, wenn Claude im Begriff ist, ein Tool zu verwenden. Er erhöht `calls` um eins und fordert Claude Code auf, die Oberfläche neu zu zeichnen.

183* **[`command.run`](https://code.claude.com/docs/de/plugins/mods/reference#commands-and-configuration)** wird ausgeführt, wenn Sie `/tally` eingeben. Er gibt den auszugebenden Text zurück.183* **[`command.run`](https://code.claude.com/docs/de/plugins/mods/reference#commands-and-configuration)** wird ausgeführt, wenn Sie `/tally` eingeben. Er gibt den auszugebenden Text zurück.

184* **[`ui.render`](https://code.claude.com/docs/de/plugins/mods/reference#interface)** wird jedes Mal ausgeführt, wenn Claude Code den Spinner zeichnet. Er fügt die Anzahl nach dem Wort des Spinners hinzu.184* **[`ui.render`](https://code.claude.com/docs/de/plugins/mods/reference#interface)** wird jedes Mal ausgeführt, wenn Claude Code den Spinner zeichnet. Er fügt die Anzahl nach dem Wort des Spinners hinzu.


195 195 

196**6. Mod ausprobieren**196**6. Mod ausprobieren**

197 197 

198Bitten Sie Claude um etwas, das einige Tool-Aufrufe erfordert, etwa `list the files here and read the README`. Während Claude arbeitet, folgt auf das Wort des Spinners eine steigende Anzahl, wie in `Thinking · tool calls: 2…`. Wenn Claude fertig ist, geben Sie `/tally` ein und drücken Sie die Eingabetaste. Das Transkript zeigt `first-mod: Claude has made 2 tool calls since this mod loaded` mit Ihrer eigenen Anzahl an. Claude Code stellt dem Text des Befehls den Namen des Plugins voran.198Bitten Sie Claude um etwas, das einige Tool-Aufrufe erfordert, zum Beispiel `list the files here and read the README`. Während Claude arbeitet, folgt auf das Wort des Spinners eine steigende Anzahl, wie in `Thinking · tool calls: 2…`. Wenn Claude fertig ist, geben Sie `/tally` ein und drücken Sie Enter. Das Transkript zeigt `first-mod: Claude has made 2 tool calls since this mod loaded` mit Ihrer eigenen Anzahl. Claude Code stellt den Namen des Plugins vor den Text des Befehls.

199 199 

200Um den Befehl ohne interaktive Sitzung zu prüfen, führen Sie ihn im nicht interaktiven Modus aus:200Um den Befehl ohne interaktive Sitzung zu prüfen, führen Sie ihn im nicht interaktiven Modus aus:

201 201 


211 211 

212**7. Code ändern, während die Sitzung läuft**212**7. Code ändern, während die Sitzung läuft**

213 213 

214Lassen Sie die Sitzung geöffnet. Ändern Sie in `register.js` im Hook `ui.render` `' · tool calls: '` in `' · tools used: '` und speichern Sie. Die hervorgehobene Zeile ist diejenige, die sich ändert:214Lassen Sie die Sitzung geöffnet. Ändern Sie in `register.js` im Hook `ui.render` `' · tool calls: '` zu `' · tools used: '` und speichern Sie. Die hervorgehobene Zeile ist die, die sich ändert:

215 215 

216```javascript first-mod/hooks/register.js {4} theme={null}216```javascript first-mod/hooks/register.js {4} theme={null}

217 // Runs each time Claude Code draws the spinner217 // Runs each time Claude Code draws the spinner


227 227 

228Jede Funktion, die Sie an `on` übergeben, ist ein Hook, also ein Event-Handler. Claude Code übergibt jedem Hook dieselben drei Argumente:228Jede Funktion, die Sie an `on` übergeben, ist ein Hook, also ein Event-Handler. Claude Code übergibt jedem Hook dieselben drei Argumente:

229 229 

230* **Die Mods-API**, namens `$`: alle Methoden, die ein Mod aufrufen kann, um über sich selbst hinaus zu wirken, in [Namespaces](https://code.claude.com/docs/de/plugins/mods/reference.md#mods-api-methods) wie `$.ui` und `$.command`230* **Die Mods-API**, `$` genannt: jede Methode, die ein Mod aufrufen kann, um über sich selbst hinauszugreifen, in [Namespaces](https://code.claude.com/docs/de/plugins/mods/reference.md#mods-api-methods) wie `$.ui` und `$.command`

231* **Das Event**, namens `e`: die [Eingabe des Events](https://code.claude.com/docs/de/plugins/mods/reference.md#events) als einfache Daten, etwa Name und Argumente eines Tool-Aufrufs231* **Das Event**, `e` genannt: die [Eingabe des Events](https://code.claude.com/docs/de/plugins/mods/reference.md#events) als einfache Daten, etwa Name und Argumente eines Tool-Aufrufs

232* **Der nächste Handler**, namens [`next`](https://code.claude.com/docs/de/plugins/mods/events#how-a-hook-handles-an-event): eine Funktion, die das Event an die anderen Mods und dann an das eigene Verhalten von Claude Code weitergibt und das Ergebnis zurückgibt232* **Der nächste Handler**, [`next`](https://code.claude.com/docs/de/plugins/mods/events#how-a-hook-handles-an-event) genannt: eine Funktion, die das Event an die anderen Mods und dann an das eigene Verhalten von Claude Code weitergibt und das Ergebnis zurückgibt

233 233 

234Die Hooks in `first-mod` behandeln ihre Events auf folgende Weise:234Die Hooks in `first-mod` behandeln ihre Events auf folgende Weise:

235 235 

236* **Beobachten**: Der Hook `session.start` registriert den Befehl, und der Hook `tool.call` zählt den Aufruf und fordert ein Neuzeichnen an. Beide geben `next(e)` zurück, sodass die Sitzung startet und das Tool wie gewohnt ausgeführt wird.236* **Beobachten**: Der Hook `session.start` registriert den Befehl, und der Hook `tool.call` zählt den Aufruf und fordert ein Neuzeichnen an. Beide geben `next(e)` zurück, sodass die Sitzung startet und das Tool wie gewohnt ausgeführt wird.

237* **Antworten**: Der Hook `command.run` gibt sein eigenes Ergebnis zurück und ruft `next` nie auf. Das zweite Argument von `on`, `{ command: 'tally' }`, ist ein Filter, ein sogenannter [Matcher](https://code.claude.com/docs/de/plugins/mods/events.md#filter-which-events-a-hook-handles), sodass der Hook nur für `/tally` ausgeführt wird.237* **Beantworten**: Der Hook `command.run` gibt sein eigenes Ergebnis zurück und ruft `next` nie auf. Das zweite Argument von `on`, `{ command: 'tally' }`, ist ein Filter, [Matcher](https://code.claude.com/docs/de/plugins/mods/events.md#filter-which-events-a-hook-handles) genannt, sodass der Hook nur für `/tally` ausgeführt wird.

238* **Umschreiben**: Der Hook `ui.render` ruft `next` mit einer Kopie von `e` auf, deren `suffix` die Anzahl enthält, sodass Claude Code seinen gewohnten Spinner mit Ihrem Text nach dem Wort zeichnet238* **Umschreiben**: Der Hook `ui.render` ruft `next` mit einer Kopie von `e` auf, deren `suffix` die Anzahl enthält, sodass Claude Code seinen gewohnten Spinner mit Ihrem Text nach dem Wort zeichnet

239 239 

240Claude Code überwacht ein mit `--plugin-dir` geladenes Verzeichnis und lädt das Hooks-Modul per Hot-Reload neu, wenn sich eine Datei darin ändert. Bei jedem Neuladen wird `register` erneut ausgeführt, sodass `calls` auf `0` zurückgesetzt wird und `/tally` von vorn zu zählen beginnt. Wie Sie einen Wert über Neuladevorgänge hinweg behalten, erfahren Sie unter [Zustand beibehalten](https://code.claude.com/docs/de/plugins/mods/interface.md#keep-state).240Claude Code überwacht ein mit `--plugin-dir` geladenes Verzeichnis und lädt das Hooks-Modul im laufenden Betrieb neu, wenn sich eine Datei darin ändert. Jedes Neuladen führt `register` erneut aus, sodass `calls` auf `0` zurückgesetzt wird und `/tally` von vorn zu zählen beginnt. Um einen Wert über Neuladevorgänge hinweg zu behalten, siehe [Zustand beibehalten](https://code.claude.com/docs/de/plugins/mods/interface.md#keep-state).

241 241 

242## An einem Mod weiterarbeiten242## An einem Mod weiterarbeiten

243 243 

Details

259 259 

260## Eine Zeichnung testen260## Eine Zeichnung testen

261 261 

262Ein Test kann eine der [Render-Stellen](https://code.claude.com/docs/de/plugins/mods/reference.md#render-sites) Ihres Mods zeichnen und dann die gezeichneten Elemente drücken, in sie tippen und sie finden. `$.ui.mount` zeichnet die Stelle über den `ui.render`-Hook Ihres Mods und gibt ein Handle mit einer Methode für jede dieser Aktionen zurück. Um mehrere Apps in einem Test abzudecken, setzen Sie `surface` auf die App, für die gezeichnet werden soll. Dieser Test öffnet den Bereich aus [Einen Bereich mit Tabs erstellen](https://code.claude.com/docs/de/plugins/mods/interface.md#build-a-pane-with-tabs), wechselt die Tabs, drückt die Schaltfläche und prüft den Zähler im Terminal und in der Desktop-App:262Ein Test kann eine der [Render-Stellen](https://code.claude.com/docs/de/plugins/mods/reference.md#render-sites) Ihres Mods zeichnen und dann die gezeichneten Elemente drücken, Text in sie eingeben und sie finden. `$.ui.mount` zeichnet die Stelle über den `ui.render`-Hook Ihres Mods und gibt ein Handle mit einer Methode für jede dieser Aktionen zurück. Um mehrere Apps in einem Test abzudecken, setzen Sie `surface` auf die App, für die gezeichnet werden soll. Dieser Test öffnet den Bereich aus [Einen Bereich mit Tabs erstellen](https://code.claude.com/docs/de/plugins/mods/interface.md#build-a-pane-with-tabs), wechselt die Tabs, drückt die Schaltfläche und prüft den Zähler im Terminal und in der Desktop-App:

263 263 

264```typescript hello-tabs/tests/hello-tabs.test.ts theme={null}264```typescript hello-tabs/tests/hello-tabs.test.ts theme={null}

265import { expect, test } from 'claude-code/testing'265import { expect, test } from 'claude-code/testing'


305})305})

306```306```

307 307 

308Führen Sie in Ihrer Shell `claude plugin test` im Verzeichnis `hello-tabs` aus. Der Test ist erfolgreich, wenn beide Apps die Zählerzeile zeichnen und der Mod `2` gespeichert hat. Der Zähler wird von der ersten App in die zweite übernommen, weil beide Mounts dasselbe geladene Modul verwenden.308Führen Sie in Ihrer Shell `claude plugin test` im Verzeichnis `hello-tabs` aus. Der Test ist erfolgreich, wenn beide Apps die Zählerzeile zeichnen und der Mod `2` gespeichert hat. Der Zähler wird von der ersten App in die zweite übernommen, da beide Mounts dasselbe geladene Modul verwenden.

309 309 

310Das Handle, das `$.ui.mount` zurückgibt, hat folgende Methoden, die Elemente über den `key` ansprechen, den Sie ihnen gegeben haben:310Das Handle, das `$.ui.mount` zurückgibt, hat die folgenden Methoden, die Elemente über den `key` ansprechen, den Sie ihnen gegeben haben:

311 311 

312| Methode | Funktion |312| Methode | Funktion |

313| :- | :- |313| :- | :- |

314| `press({ key: 'more' })` | Drückt den `Button` mit diesem Key |314| `press({ key: 'more' })` | Drückt den `Button` mit diesem Key |

315| `input({ key: 'new-note', text: 'buy milk' })` | Tippt den Text in das `Input` mit diesem Key und drückt die Eingabetaste. Fügen Sie `kind: 'change'` hinzu, um zu tippen, ohne abzusenden. Bei einem Feld mit `rows` kann der Text `\n` enthalten. |315| `input({ key: 'new-note', text: 'buy milk' })` | Gibt den Text in das `Input` mit diesem Key ein und drückt Enter. Fügen Sie `kind: 'change'` hinzu, um ohne Absenden einzugeben. Bei einem Feld mit `rows` kann der Text `\n` enthalten. |

316| `select({ key: 'size', value: 'large' })` | Wählt die Option mit diesem Wert im `Select` mit diesem Key aus |316| `select({ key: 'size', value: 'large' })` | Wählt im `Select` mit diesem Key die Option mit diesem Wert aus |

317| `find({ key: 'more' })` oder `find({ type: 'Text', text: 'Count: 2' })` | Gibt das erste passende Element als `{ type, props, children }` zurück oder `undefined`. `text` kann ein String oder ein regulärer Ausdruck sein. |317| `find({ key: 'more' })` oder `find({ type: 'Text', text: 'Count: 2' })` | Gibt das erste passende Element als `{ type, props, children }` zurück oder `undefined`. `text` kann ein String oder ein regulärer Ausdruck sein. |

318| `unmount()` | Entfernt die Zeichnung |318| `unmount()` | Entfernt die Zeichnung |

319 319 

320Jede Methode wird aufgelöst, nachdem Ihr Handler fertig ist, sodass Sie das Ergebnis in der nächsten Zeile prüfen können. Setzen Sie `props` auf das, was Claude Code für diese Stelle übergeben würde. Die [Tabelle der Render-Stellen](https://code.claude.com/docs/de/plugins/mods/reference.md#render-sites) listet die Props jeder Stelle auf, und [die Typen für Ihren Build](https://code.claude.com/docs/de/plugins/mods/create.md#get-the-types-for-your-build) enthalten deren Typen.320Jede Methode wird aufgelöst, nachdem Ihr Handler fertig ist, sodass Sie das Ergebnis in der nächsten Zeile prüfen können. Setzen Sie `props` auf das, was Claude Code für diese Stelle übergeben würde. Die [Tabelle der Render-Stellen](https://code.claude.com/docs/de/plugins/mods/reference.md#render-sites) listet die Props jeder Stelle auf, und [die Typen für Ihren Build](https://code.claude.com/docs/de/plugins/mods/create.md#get-the-types-for-your-build) enthalten deren Typen.

321 321 

322Um einen [Elementbaum](https://code.claude.com/docs/de/plugins/mods/interface.md#build-a-tree-from-elements) zu erkennen, der für die in `surface` angegebene App nicht gültig ist, prüfen Sie mit `find`, ob ein Element vorhanden ist, das Ihr Hook hinzufügt. Der Test prüft nicht, wie die App einen Baum darstellt. Sehen Sie sich ein neues Layout daher auch in einer echten Sitzung an.322Um einen [Elementbaum](https://code.claude.com/docs/de/plugins/mods/interface.md#build-a-tree-from-elements) zu erkennen, der für die in `surface` angegebene App nicht gültig ist, prüfen Sie mit `find` auf ein Element, das Ihr Hook hinzufügt. Der Test prüft nicht, wie die App einen Baum darstellt; sehen Sie sich ein neues Layout daher auch in einer echten Sitzung an.

323 323 

324### Eine Zeichnung nach `/clear` testen324### Eine Zeichnung nach `/clear` testen

325 325 

326Jeder Test beginnt mit allen `$.state`-Werten auf ihrem Standardwert, so wie `/clear` sie hinterlässt. Um zu testen, was Ihr Mod danach tut, überspringen Sie `session.start`, lösen `classic.SessionStart` mit `source: 'clear'` aus und prüfen, was Ihr Mod zeichnet.326Jeder Test beginnt mit allen `$.state`-Werten auf ihrem Standardwert, so wie `/clear` sie hinterlässt. Um zu testen, was Ihr Mod als Nächstes tut, überspringen Sie `session.start`, lösen Sie `classic.SessionStart` mit `source: 'clear'` aus und prüfen Sie, was Ihr Mod zeichnet.

327 327 

328Dieser Test prüft das Modul aus [Einen gespeicherten Wert nach `/clear` erneut laden](https://code.claude.com/docs/de/plugins/mods/interface#load-a-saved-value-again-after-clear). Fügen Sie ihn der Datei aus [Eine Zeichnung testen](#test-a-drawing) hinzu, in der `PANE` definiert ist. Der erste Test dieser Datei erwartet, dass die Schaltfläche den Zähler speichert, wie es die Schaltfläche in [Aus mehr als einer Sitzung speichern](https://code.claude.com/docs/de/plugins/mods/interface.md#save-from-more-than-one-session) tut:328Dieser Test prüft das Modul aus [Einen gespeicherten Wert nach `/clear` erneut laden](https://code.claude.com/docs/de/plugins/mods/interface#load-a-saved-value-again-after-clear). Fügen Sie ihn der Datei aus [Eine Zeichnung testen](#test-a-drawing) hinzu, in der `PANE` definiert ist. Der erste Test dieser Datei erwartet, dass die Schaltfläche den Zähler speichert, wie es die Schaltfläche in [Aus mehr als einer Sitzung speichern](https://code.claude.com/docs/de/plugins/mods/interface.md#save-from-more-than-one-session) tut:

329 329 

Details

213 213 

214Wenn Sie den Mod geschrieben haben, lesen Sie [Aufrufe und Hintergrundarbeit, nachdem der Benutzer einen Turn unterbricht](https://code.claude.com/docs/de/plugins/mods/api.md#calls-and-background-work-after-the-user-interrupts-a-turn).214Wenn Sie den Mod geschrieben haben, lesen Sie [Aufrufe und Hintergrundarbeit, nachdem der Benutzer einen Turn unterbricht](https://code.claude.com/docs/de/plugins/mods/api.md#calls-and-background-work-after-the-user-interrupts-a-turn).

215 215 

216## Eine Darstellung erscheint nicht oder reagiert nicht216## Eine Zeichnung erscheint nicht oder reagiert nicht

217 217 

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

219 219 

220### Das Band eines anderen Mods wird angezeigt, Ihres aber nicht220### Das Band eines anderen Mods wird angezeigt und Ihres nicht

221 221 

222Über dem Prompt gibt es ein einziges Band, das sich alle Mods teilen. Ein Mod, der [vor Ihrem](https://code.claude.com/docs/de/plugins/mods/events.md#the-order-mods-run-in) ausgeführt wird, ersetzt Ihr Band, wenn er einen Baum zurückgibt, der das Ergebnis von `next(e)` nicht enthält. Um beide Bänder anzuzeigen, ändern Sie den Hook dieses Mods oder bitten Sie dessen Autor darum:222Es gibt ein Band über dem Prompt, und alle Mods teilen es sich. Ein Mod, der [vor Ihrem](https://code.claude.com/docs/de/plugins/mods/events.md#the-order-mods-run-in) ausgeführt wird, ersetzt Ihr Band, wenn er einen Baum zurückgibt, der das Ergebnis von `next(e)` nicht enthält. Um beide Bänder anzuzeigen, ändern Sie den Hook dieses Mods oder bitten Sie dessen Autor darum:

223 223 

224* **Die nachfolgenden Bänder beibehalten**: Fügen Sie das Ergebnis von `await next(e)` unter die Kinder einer `Box` in seinem Baum ein, wie im Tab „Band über dem Prompt“ unter [Festlegen, wo gezeichnet wird](https://code.claude.com/docs/de/plugins/mods/interface.md#pick-where-to-draw)224* **Die Bänder danach beibehalten**: Setzen Sie das Ergebnis von `await next(e)` unter die Kinder einer `Box` in seinem Baum, wie im Tab „Band über dem Prompt“ unter [Festlegen, wo gezeichnet wird](https://code.claude.com/docs/de/plugins/mods/interface.md#pick-where-to-draw)

225* **Den Baum gültig halten**: Geben Sie weder dieser `Box` noch einer `Box` um sie herum eine Prop `width`, `height`, `minWidth`, `minHeight`, `position`, `top`, `left`, `right`, `bottom`, `display` oder `overflow`225* **Den Baum gültig halten**: Geben Sie dieser `Box` oder einer `Box` um sie herum keine der Props `width`, `height`, `minWidth`, `minHeight`, `position`, `top`, `left`, `right`, `bottom`, `display` oder `overflow`

226 226 

227Um diesen Mod zu finden, [schreiben Sie ein Debug-Log](#read-the-debug-log) und durchsuchen Sie es nach `answered ui.render without next()`. Eine Zeile wie `other-mod (user) answered ui.render without next()` nennt einen Mod, der seinen Baum zurückgegeben hat, ohne `next(e)` aufzurufen. Sie nennt nicht die [Render-Stelle](https://code.claude.com/docs/de/plugins/mods/reference.md#render-sites), daher kann auch ein Mod erscheinen, der nur einen Bereich zeichnet. Ein Mod, der `next(e)` aufruft und das Ergebnis verwirft, erzeugt keine Zeile, prüfen Sie daher auch die Hooks, die vor Ihrem ausgeführt werden.227Um diesen Mod zu finden, [schreiben Sie ein Debug-Log](#read-the-debug-log) und durchsuchen Sie es nach `answered ui.render without next()`. Eine Zeile wie `other-mod (user) answered ui.render without next()` nennt einen Mod, der seinen Baum zurückgegeben hat, ohne `next(e)` aufzurufen. Sie nennt nicht die [Render-Stelle](https://code.claude.com/docs/de/plugins/mods/reference.md#render-sites), daher kann auch ein Mod erscheinen, der nur einen Bereich zeichnet. Ein Mod, der `next(e)` aufruft und das Ergebnis verwirft, erzeugt keine Zeile, prüfen Sie daher auch die Hooks vor Ihrem.

228 228 

229Das Band eines Mods fehlt auch, wenn der Baum, den sein eigener Hook zurückgegeben hat, nicht validiert wird; die Bänder der anderen Mods bleiben erhalten. Um herauszufinden, welcher Mod betroffen ist und warum, [schreiben Sie ein Debug-Log](#read-the-debug-log) und durchsuchen Sie es nach [`ui.render hook skipped`](#a-pane-or-band-is-empty).229Das Band eines Mods fehlt auch, wenn der Baum, den sein eigener Hook zurückgegeben hat, nicht validiert wird; die Bänder der anderen Mods bleiben dann erhalten. Um herauszufinden, welcher Mod betroffen ist und warum, [schreiben Sie ein Debug-Log](#read-the-debug-log) und durchsuchen Sie es nach [`ui.render hook skipped`](#a-pane-or-band-is-empty).

230 230 

231### Ein Bereich oder Band ist leer oder zeigt den üblichen Inhalt von Claude Code231### Ein Bereich oder Band ist leer oder zeigt den üblichen Inhalt von Claude Code

232 232 


238 238 

239Beheben Sie, was der Grund nennt. Wenn der Grund abgeschnitten ist, [schreiben Sie ein Debug-Log](#read-the-debug-log) und durchsuchen Sie es nach `a hook returned a tree that does not validate`, um den Rest zu lesen.239Beheben Sie, was der Grund nennt. Wenn der Grund abgeschnitten ist, [schreiben Sie ein Debug-Log](#read-the-debug-log) und durchsuchen Sie es nach `a hook returned a tree that does not validate`, um den Rest zu lesen.

240 240 

241Wenn die Zeile stattdessen direkt nach dem Namen der Stelle `refused:` meldet, etwa `ui.render (Pane) refused:`, siehe [Eine `ui.render`-Zeile meldet `refused`](#ui-render-refused).241Wenn die Zeile stattdessen direkt nach dem Namen der Stelle `refused:` enthält, wie in `ui.render (Pane) refused:`, siehe [Eine `ui.render`-Zeile enthält `refused`](#ui-render-refused).

242 242 

243### Eine `ui.render`-Zeile meldet `refused`243### Eine `ui.render`-Zeile enthält `refused`

244 244 

245`ui.render (<site>) refused:` oder `ui.render (<site>): the chain settled on a tree that does not validate` im [Debug-Log](#read-the-debug-log) bedeutet, dass der [Baum](https://code.claude.com/docs/de/plugins/mods/interface.md#build-a-tree-from-elements) an dieser Stelle ein [Größenlimit](https://code.claude.com/docs/de/plugins/mods/reference.md#limits) überschreitet. Beide Zeilen nennen die [Render-Stelle](https://code.claude.com/docs/de/plugins/mods/reference.md#render-sites) und dann den Grund, und der Grund nennt das Limit.245`ui.render (<site>) refused:` oder `ui.render (<site>): the chain settled on a tree that does not validate` im [Debug-Log](#read-the-debug-log) bedeutet, dass der [Baum](https://code.claude.com/docs/de/plugins/mods/interface.md#build-a-tree-from-elements) an dieser Stelle eine [Größenbeschränkung](https://code.claude.com/docs/de/plugins/mods/reference.md#limits) überschreitet. Beide Zeilen nennen die [Render-Stelle](https://code.claude.com/docs/de/plugins/mods/reference.md#render-sites) und dann den Grund, und der Grund nennt die Beschränkung.

246 246 

247Ändern Sie die Mods, die an dieser Stelle zeichnen, sodass ihre [`ui.render`](https://code.claude.com/docs/de/plugins/mods/reference#interface)-Hooks kleinere Bäume zurückgeben, oder bitten Sie deren Autoren darum. Wenn die Transkriptzeile mit `hooks` beginnt, hat mehr als ein geladener Mod einen `ui.render`-Hook für diese Stelle; prüfen Sie daher die Bäume jedes dieser Mods. Bei mehreren Mods, deren Bänder über dem Prompt zu einem Baum mit mehr als 32 Ebenen verschachtelt sind, lautet die Zeile:247Ändern Sie die Mods, die an dieser Stelle zeichnen, sodass ihre [`ui.render`](https://code.claude.com/docs/de/plugins/mods/reference#interface)-Hooks kleinere Bäume zurückgeben, oder bitten Sie deren Autoren darum. Wenn die Zeile im Transkript mit `hooks` beginnt, hat mehr als ein geladener Mod einen `ui.render`-Hook für diese Stelle, prüfen Sie daher die Bäume jedes dieser Mods. Bei mehreren Mods, deren Bänder über dem Prompt zu einem Baum mit mehr als 32 Ebenen verschachtelt sind, lautet die Zeile:

248 248 

249```text theme={null}249```text theme={null}

250hooks: ui.render (AbovePrompt) refused: deeper than 32; nothing was drawn250hooks: ui.render (AbovePrompt) refused: deeper than 32; nothing was drawn

251```251```

252 252 

253Vor v2.1.307 meldete eine `refused:`-Zeile für jede Stelle jeden Baum, der nicht validiert wurde, und bei `Pane` und `AbovePrompt` endete sie mit `; the engine drew its own`. Beheben Sie in diesen Versionen, was der Grund nennt.253Vor v2.1.307 meldete eine `refused:`-Zeile für jede Stelle jeden Baum, der nicht validiert wurde, und für `Pane` und `AbovePrompt` endete sie mit `; the engine drew its own`. Beheben Sie bei diesen Versionen, was der Grund nennt.

254 254 

255### `needs a key`, `is drawn twice` oder `key each once`255### `needs a key`, `is drawn twice` oder `key each once`

256 256 

257Ein Element im Baum, den Ihr `ui.render`-Hook zurückgibt, hat keinen gültigen [`key`](https://code.claude.com/docs/de/plugins/mods/interface#which-controls-need-a-key), oder zwei Elemente teilen sich einen. Suchen Sie die Meldung, die Sie erhalten haben:257Ein Element in dem Baum, den Ihr `ui.render`-Hook zurückgibt, hat keinen gültigen [`key`](https://code.claude.com/docs/de/plugins/mods/interface#which-controls-need-a-key), oder zwei Elemente teilen sich einen. Suchen Sie die Meldung, die Sie erhalten haben:

258 258 

259* **`<Input> needs a key` oder `<Select> needs a key`**: Das Element hat keine Prop `key`, oder sein `key` ist leer oder kein String, etwa `key: 3`. Geben Sie ihm einen nicht leeren String als `key`.259* **`<Input> needs a key` oder `<Select> needs a key`**: Das Element hat keine `key`-Prop, oder sein `key` ist leer oder kein String, wie bei `key: 3`. Geben Sie ihm einen nicht leeren String als `key`.

260* **`<Button> needs a key`**: Geben Sie der Schaltfläche einen nicht leeren String als `key`260* **`<Button> needs a key`**: Geben Sie der Schaltfläche einen nicht leeren String als `key`

261* **`is drawn twice; each takes its own key`**: Zwei Elemente der in der Meldung genannten Art haben denselben `key`, etwa `Input "size" is drawn twice; each takes its own key`. Geben Sie jedem Element einen eigenen `key`.261* **`is drawn twice; each takes its own key`**: Zwei Elemente der in der Meldung genannten Art haben denselben `key`, wie in `Input "size" is drawn twice; each takes its own key`. Geben Sie jedem Element einen eigenen `key`.

262* **`key each once` von `press` in einem [Test](https://code.claude.com/docs/de/plugins/mods/test.md#test-a-drawing)**: Die Darstellung enthält mehr als eine Schaltfläche mit dem Key, den Sie übergeben haben. Schaltflächen mit derselben Beschriftung und ohne Prop `key` teilen sich diese Beschriftung als Key. Geben Sie jeder Schaltfläche einen eigenen `key`.262* **`key each once` von `press` in einem [Test](https://code.claude.com/docs/de/plugins/mods/test.md#test-a-drawing)**: Die Zeichnung enthält mehr als eine Schaltfläche mit dem übergebenen Key. Schaltflächen mit derselben Beschriftung und ohne `key`-Prop teilen sich diese Beschriftung als Key. Geben Sie jeder Schaltfläche einen eigenen `key`.

263 263 

264### Eine `ui.render`-Zeile meldet `threw while drawn`264### Eine `ui.render`-Zeile enthält `threw while drawn`

265 265 

266Die Zeile nennt die [Render-Stelle](https://code.claude.com/docs/de/plugins/mods/reference.md#render-sites) und meldet dann `threw while drawn:` zusammen mit dem Fehler, etwa `first-mod: ui.render (ToolUse) threw while drawn: <error>; the engine drew its own`. Claude Code ist auf diesen Fehler gestoßen, als es den Baum gezeichnet hat, den Ihr [`ui.render`](https://code.claude.com/docs/de/plugins/mods/reference#interface)-Hook zurückgegeben hat, oder als es die Stelle anhand der [`props` gezeichnet hat, die Ihr Hook an `next` übergeben hat](https://code.claude.com/docs/de/plugins/mods/interface#change-what-claude-code-already-draws). Das Ende `the engine drew its own` bedeutet, dass die Stelle den üblichen Inhalt von Claude Code zeigt.266Die Zeile nennt die [Render-Stelle](https://code.claude.com/docs/de/plugins/mods/reference.md#render-sites), dann folgen `threw while drawn:` und der Fehler, wie in `first-mod: ui.render (ToolUse) threw while drawn: <error>; the engine drew its own`. Claude Code ist auf diesen Fehler gestoßen, während es den Baum zeichnete, den Ihr [`ui.render`](https://code.claude.com/docs/de/plugins/mods/reference#interface)-Hook zurückgegeben hat, oder während es die Stelle aus den [`props`, die Ihr Hook an `next` übergeben hat](https://code.claude.com/docs/de/plugins/mods/interface#change-what-claude-code-already-draws), zeichnete. Das Ende `the engine drew its own` bedeutet, dass die Stelle den üblichen Inhalt von Claude Code anzeigt.

267 267 

268Lesen Sie den Fehler und korrigieren Sie den Wert in Ihrem Hook, der ihn verursacht hat.268Lesen Sie den Fehler und korrigieren Sie den Wert in Ihrem Hook, der ihn verursacht hat.

269 269 


271 271 

272### `the module failed without a message`272### `the module failed without a message`

273 273 

274Ein [`Client`](https://code.claude.com/docs/de/plugins/mods/interface#when-a-client-fails) ist mit einem Fehler ohne Meldung fehlgeschlagen, etwa `throw new Error()`. Die Zeile an seiner Stelle lautet dann etwa `my-mod: Client client/spinner.js: the module failed without a message`.274Ein [`Client`](https://code.claude.com/docs/de/plugins/mods/interface#when-a-client-fails) ist mit einem Fehler ohne Meldung fehlgeschlagen, etwa `throw new Error()`. Die Zeile an seiner Stelle lautet etwa `my-mod: Client client/spinner.js: the module failed without a message`.

275 275 

276Suchen Sie das `throw` im Code Ihres `Client` und geben Sie dem Fehler eine Meldung. Die Zeile zeigt dann diese Meldung an.276Suchen Sie das `throw` im Code Ihres `Client` und geben Sie dem Fehler eine Meldung. Die Zeile zeigt dann diese Meldung an.

277 277 

278Vor v2.1.289 zeigte die Zeile stattdessen `Error` als Grund an.278Vor v2.1.289 zeigte die Zeile stattdessen `Error` als Grund an.

279 279 

280### `$.ui.open` wird ausgeführt, aber kein Bereich erscheint280### `$.ui.open` wird ausgeführt und es erscheint kein Bereich

281 281 

282Der Aufruf wurde nicht durch eine Aktion des Benutzers ausgelöst, und das Terminal ist schmaler als [die Breite, die dieser Bereich benötigt](https://code.claude.com/docs/de/plugins/mods/interface.md#when-a-pane-waits-for-a-wider-terminal).282Der Aufruf ging nicht auf eine Aktion des Benutzers zurück, und das Terminal ist schmaler als [die Breite, die dieser Bereich benötigt](https://code.claude.com/docs/de/plugins/mods/interface.md#when-a-pane-waits-for-a-wider-terminal).

283 283 

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

285 285 

286### Ein Toast erscheint nicht286### Ein Toast erscheint nicht

287 287 

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

289 289 

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

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

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

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

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

295 295 

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

297 297 

298### Das Band zeigt `plugin panel hidden`298### Das Band zeigt `plugin panel hidden`

299 299 

300Das Band ist [eingeklappt](https://code.claude.com/docs/de/plugins/mods/interface.md#when-the-user-collapses-the-band). Es wird eingeklappt, wenn Sie Strg+X und dann Strg+A drücken oder die Tasten, die Sie stattdessen belegt haben, und im [Vollbild-Rendering](https://code.claude.com/docs/de/fullscreen.md), wenn Sie auf das `[-]` in seiner ersten Zeile klicken. Es bleibt eingeklappt, bis Sie es ausklappen oder Claude Code neu starten, und in der Zwischenzeit betätigt weder ein Tastenkürzel noch eine `action`-Belegung eine Schaltfläche darin.300Das Band ist [eingeklappt](https://code.claude.com/docs/de/plugins/mods/interface.md#when-the-user-collapses-the-band). Es wird eingeklappt, wenn Sie Ctrl+X und dann Ctrl+A drücken oder die Tasten, die Sie stattdessen belegt haben, und im [Vollbild-Rendering](https://code.claude.com/docs/de/fullscreen.md), wenn Sie auf das `[-]` in seiner ersten Zeile klicken. Es bleibt eingeklappt, bis Sie es ausklappen oder Claude Code neu starten, und in dieser Zeit drückt keine Hotkey- oder `action`-Belegung eine Schaltfläche darin.

301 301 

302Um das Band auszuklappen, drücken Sie die in der Zeile genannten Tasten, standardmäßig Strg+X und dann Strg+A, oder klicken Sie im Vollbild-Rendering auf die Zeile.302Um das Band auszuklappen, drücken Sie die Tasten, die die Zeile nennt, standardmäßig Ctrl+X und dann Ctrl+A, oder klicken Sie im Vollbild-Rendering auf die Zeile.

303 303 

304### Tastenkürzel bewirken nichts304### Hotkeys bewirken nichts

305 305 

306Ihr Bereich oder Band hat nicht den Tastaturfokus, Ihre Schaltfläche befindet sich in einem eingeklappten Band, oder die Darstellung befindet sich in der VS Code-Erweiterung, in der Schaltflächen keine Tastenkürzel haben. Gehen Sie entsprechend dem zutreffenden Fall vor:306Ihr Bereich oder Band hat keinen Tastaturfokus, Ihre Schaltfläche befindet sich in einem eingeklappten Band, oder die Zeichnung befindet sich in der VS Code-Erweiterung, in der Schaltflächen keine Hotkeys haben. Gehen Sie je nach Fall so vor:

307 307 

308* **Kein Tastaturfokus**: Drücken Sie Strg+X und dann Tab, oder klicken Sie im [Vollbild-Rendering](https://code.claude.com/docs/de/fullscreen.md) auf den Bereich oder das Band. Damit der Bereich beim Öffnen den Fokus übernimmt, öffnen Sie ihn über einen Befehl mit `focus: true`.308* **Kein Tastaturfokus**: Drücken Sie Ctrl+X und dann Tab oder klicken Sie im [Vollbild-Rendering](https://code.claude.com/docs/de/fullscreen.md) auf den Bereich oder das Band. Damit der Bereich beim Öffnen den Fokus erhält, öffnen Sie ihn mit `focus: true` über einen Befehl.

309* **Die Schaltfläche befindet sich in einem eingeklappten Band**: Das Band zeigt eine abgeblendete Zeile, die mit `▸ plugin panel hidden` beginnt. Drücken Sie die in der Zeile genannten Tasten, standardmäßig Strg+X und dann Strg+A, um es [auszuklappen](#plugin-panel-hidden).309* **Die Schaltfläche befindet sich in einem eingeklappten Band**: Das Band zeigt eine abgeblendete Zeile, die mit `▸ plugin panel hidden` beginnt. Drücken Sie die Tasten, die die Zeile nennt, standardmäßig Ctrl+X und dann Ctrl+A, um [es auszuklappen](#plugin-panel-hidden).

310* **In der VS Code-Erweiterung**: Klicken Sie auf die Schaltfläche, oder drücken Sie die Eingabetaste darauf, sobald sie den Fokus hat310* **In der VS Code-Erweiterung**: Klicken Sie auf die Schaltfläche oder drücken Sie Enter darauf, sobald sie den Fokus hat

311 311 

312### Eine Darstellung funktioniert im Terminal, aber nicht in der Desktop-App oder in VS Code312### Eine Zeichnung funktioniert im Terminal, aber nicht in der Desktop-App oder in VS Code

313 313 

314Entweder zeichnet diese App die Stelle oder das Element nicht, oder es handelt sich um eine Sitzung, in der die VS Code-Erweiterung für Mods nichts zeichnet. Die anderen Hooks des Mods werden weiterhin ausgeführt. Prüfen Sie diese Ursachen:314Entweder zeichnet diese App die Stelle oder das Element nicht, oder es handelt sich um eine Sitzung, in der die VS Code-Erweiterung nichts für Mods zeichnet. Die anderen Hooks des Mods werden weiterhin ausgeführt. Prüfen Sie diese Ursachen:

315 315 

316* **Die Stelle oder das Element wird in dieser App nicht gezeichnet**: Suchen Sie Ihre Stelle in der Tabelle [Render-Stellen](https://code.claude.com/docs/de/plugins/mods/reference.md#render-sites) und Ihre Elemente in der Tabelle [Elemente](https://code.claude.com/docs/de/plugins/mods/reference.md#elements). Prüfen Sie bei einem Element, das die App nicht hat, `e.surface` im Hook und geben Sie einen Baum zurück, den die App zeichnen kann.316* **Die Stelle oder das Element wird in dieser App nicht gezeichnet**: Suchen Sie Ihre Stelle in der Tabelle der [Render-Stellen](https://code.claude.com/docs/de/plugins/mods/reference.md#render-sites) und Ihre Elemente in der Tabelle der [Elemente](https://code.claude.com/docs/de/plugins/mods/reference.md#elements). Für ein Element, das der App fehlt, prüfen Sie `e.surface` im Hook und geben Sie einen Baum zurück, den die App zeichnen kann.

317* **Die VS Code-Erweiterung ist älter als 2.1.299**: Das Chat-Panel zeichnet für Mods ab [Erweiterungsversion](https://code.claude.com/docs/de/vs-code.md#install-the-extension) 2.1.299. Prüfen Sie die Version in der Erweiterungsansicht von VS Code und aktualisieren Sie die Erweiterung dort.317* **Die VS Code-Erweiterung ist älter als 2.1.299**: Das Chat-Panel zeichnet für Mods ab [Erweiterungsversion](https://code.claude.com/docs/de/vs-code.md#install-the-extension) 2.1.299. Prüfen Sie die Version in der Erweiterungsansicht von VS Code und aktualisieren Sie die Erweiterung dort.

318* **Die Erweiterung ist älter als 2.1.304 und die Sitzung ruft keine Feature-Flags ab**: Aktualisieren Sie die Erweiterung, oder führen Sie `claude` stattdessen im integrierten Terminal von VS Code aus. Sitzungen über Amazon Bedrock, Google Clouds Agent Platform oder Microsoft Foundry überspringen den Abruf. Für die anderen, die ihn überspringen, etwa eine Sitzung über ein [Claude-Apps-Gateway](https://code.claude.com/docs/de/claude-apps-gateway), siehe [Funktionen, die das Abrufen von Feature-Flags erfordern](https://code.claude.com/docs/de/env-vars.md#features-that-need-feature-flag-fetching).318* **Die Erweiterung ist älter als 2.1.304 und die Sitzung ruft keine Feature-Flags ab**: Aktualisieren Sie die Erweiterung oder führen Sie stattdessen `claude` im integrierten Terminal von VS Code aus. Sitzungen auf Amazon Bedrock, der Agent Platform von Google Cloud oder Microsoft Foundry überspringen den Abruf. Für die anderen, die ihn überspringen, etwa eine Sitzung über ein [Claude Apps Gateway](https://code.claude.com/docs/de/claude-apps-gateway), siehe [Funktionen, die den Abruf von Feature-Flags benötigen](https://code.claude.com/docs/de/env-vars.md#features-that-need-feature-flag-fetching).

319 319 

320## Eine Änderung oder ein Wert geht verloren320## Eine Änderung oder ein Wert geht verloren

321 321 

Details

66>66>

67> Ein Plugin-Marketplace ist nicht [Claude Marketplace](https://claude.com/marketplace). Claude Marketplace ist die Website unter claude.com/marketplace, auf der Sie Plugins, Konnektoren, Partnerprodukte und Service-Partner durchsuchen. Es ist kein Marketplace, den Sie mit `/plugin marketplace add` hinzufügen.67> Ein Plugin-Marketplace ist nicht [Claude Marketplace](https://claude.com/marketplace). Claude Marketplace ist die Website unter claude.com/marketplace, auf der Sie Plugins, Konnektoren, Partnerprodukte und Service-Partner durchsuchen. Es ist kein Marketplace, den Sie mit `/plugin marketplace add` hinzufügen.

68 68 

69Claude Code fügt Anthropics offiziellen Marketplace das erste Mal hinzu, wenn Sie eine interaktive Terminalsitzung starten, es sei denn, eine [verwaltete Richtlinie](https://code.claude.com/docs/de/plugins/org.md#allow-the-official-marketplace-and-your-own) blockiert es. Claude Code fügt Anthropics Community- und Demo-Marketplaces nicht von selbst hinzu. Um die drei Anthropic-Marketplaces zu unterscheiden, lesen Sie [Anthropics Marketplaces](https://code.claude.com/docs/de/plugins/anthropic-marketplaces.md). Um zu sehen, was der offizielle auflistet, öffnen Sie die Registerkarte **Discover** von `/plugin` in einer Sitzung oder durchsuchen Sie [Claude Marketplace](https://claude.com/marketplace/plugins).69Claude Code fügt Anthropics offiziellen Marketplace das erste Mal hinzu, wenn Sie eine interaktive Terminalsitzung starten, es sei denn, eine [verwaltete Richtlinie](https://code.claude.com/docs/de/plugins/org.md#allow-the-official-marketplace-and-your-own) blockiert es. Claude Code fügt Anthropics Community-Marketplace nicht von selbst hinzu. Um die Anthropic-Marketplaces zu unterscheiden, lesen Sie [Anthropics Marketplaces](https://code.claude.com/docs/de/plugins/anthropic-marketplaces.md). Um zu sehen, was der offizielle auflistet, öffnen Sie die Registerkarte **Discover** von `/plugin` in einer Sitzung oder durchsuchen Sie [Claude Marketplace](https://claude.com/marketplace/plugins).

70 70 

71Dieses Diagramm zeigt den Weg von einem Marketplace zu Ihrer Sitzung. Ein Marketplace listet ein Plugin auf, Sie installieren dieses Plugin, und Claude Code lädt seine Komponenten.71Dieses Diagramm zeigt den Weg von einem Marketplace zu Ihrer Sitzung. Ein Marketplace listet ein Plugin auf, Sie installieren dieses Plugin, und Claude Code lädt seine Komponenten.

72 72 


88 88 

89Der Name eines Marketplace ordnet ihn in eine von drei Ebenen ein. Claude Code akzeptiert die offiziellen und Community-Namen nur für Marketplaces aus `github.com/anthropics/`-Repositories:89Der Name eines Marketplace ordnet ihn in eine von drei Ebenen ein. Claude Code akzeptiert die offiziellen und Community-Namen nur für Marketplaces aus `github.com/anthropics/`-Repositories:

90 90 

91* **Offiziell**: Marketplaces mit einem von Anthropics [offiziellen Marketplace-Namen](https://code.claude.com/docs/de/plugins/security.md#official-marketplace-names), einschließlich `claude-plugins-official` und dem Demo-Marketplace `claude-code-plugins`.91* **Offiziell**: Marketplaces mit einem von Anthropics [offiziellen Marketplace-Namen](https://code.claude.com/docs/de/plugins/security.md#official-marketplace-names), einschließlich `claude-plugins-official` und `claude-code-plugins`.

92* **Community**: Marketplaces mit einem von Anthropics Community-Namen, wie `claude-community`. [Identifizieren Sie Anthropics Marketplaces nach Name](https://code.claude.com/docs/de/plugins/security.md#marketplace-tiers) listet sie auf.92* **Community**: Marketplaces mit einem von Anthropics Community-Namen, wie `claude-community`. [Identifizieren Sie Anthropics Marketplaces nach Name](https://code.claude.com/docs/de/plugins/security.md#marketplace-tiers) listet sie auf.

93* **Drittanbieter**: Jeder andere Marketplace. Ein Marketplace, den Ihr Mitarbeiter oder Ihre Organisation veröffentlicht, ist Drittanbieter.93* **Drittanbieter**: Jeder andere Marketplace. Ein Marketplace, den Ihr Mitarbeiter oder Ihre Organisation veröffentlicht, ist Drittanbieter.

94 94 

Details

96}96}

97```97```

98 98 

99Führen Sie in Ihrer Shell `claude plugin validate .` im Repository aus, bevor Sie pushen. Was dabei geprüft wird, erfahren Sie unter [Ein Verzeichnis validieren](https://code.claude.com/docs/de/plugins/cli-reference.md#validate-a-directory).99Ersetzen Sie `your-marketplace` durch einen Namen, den andere Autoren wahrscheinlich nicht wählen, da ein Benutzer [keine zwei Marketplaces mit demselben Namen haben kann](https://code.claude.com/docs/de/plugins/marketplace-reference.md#marketplace-file). Führen Sie in Ihrer Shell `claude plugin validate .` im Repository aus, bevor Sie pushen. Was dabei geprüft wird, erfahren Sie unter [Ein Verzeichnis validieren](https://code.claude.com/docs/de/plugins/cli-reference.md#validate-a-directory).

100 100 

101[Erstellen Sie einen Marketplace](https://code.claude.com/docs/de/plugins/create-marketplace.md) behandelt das Layout mit mehreren Plugins in einem Repository.101[Erstellen Sie einen Marketplace](https://code.claude.com/docs/de/plugins/create-marketplace.md) behandelt das Layout mit mehreren Plugins in einem Repository.

102 102 

Details

76* `first-party-plugins`76* `first-party-plugins`

77* `claude-tag-plugins`77* `claude-tag-plugins`

78 78 

79Wie sich die offiziellen, Community- und Demo-Marketplaces unterscheiden und wo Sie sehen können, was jeder auflistet, siehe [Anthropics Marketplaces](https://code.claude.com/docs/de/plugins/anthropic-marketplaces.md).79Wie sich die offiziellen und Community-Marketplaces unterscheiden und wo Sie sehen können, was jeder auflistet, siehe [Anthropics Marketplaces](https://code.claude.com/docs/de/plugins/anthropic-marketplaces.md).

80 80 

81## Überprüfen Sie ein Plugin vor der Installation81## Überprüfen Sie ein Plugin vor der Installation

82 82 

Details

18 18 

19Verwenden Sie ein Wrapper-Skript, wenn jede Sitzung eine Einrichtung benötigt, die der Runner nicht selbst durchführen kann: Bereitstellung kurzlebiger Anmeldedaten mit Bereich auf den Sitzungsersteller, Export umgebungsspezifischer Geheimnisse, Vorbereitung von Sprach-Toolchains oder Anwendung von Ressourcenlimits um den untergeordneten Prozess. Der Runner startet Ihren Wrapper anstelle der Claude Code-Binärdatei, einmal pro Sitzung. Beenden Sie den Wrapper durch `exec` in `$CLAUDE_RUNNER_CLAUDE_BIN`, die eigene Binärdatei des Runners, damit Signale und Exit-Codes korrekt weitergegeben werden.19Verwenden Sie ein Wrapper-Skript, wenn jede Sitzung eine Einrichtung benötigt, die der Runner nicht selbst durchführen kann: Bereitstellung kurzlebiger Anmeldedaten mit Bereich auf den Sitzungsersteller, Export umgebungsspezifischer Geheimnisse, Vorbereitung von Sprach-Toolchains oder Anwendung von Ressourcenlimits um den untergeordneten Prozess. Der Runner startet Ihren Wrapper anstelle der Claude Code-Binärdatei, einmal pro Sitzung. Beenden Sie den Wrapper durch `exec` in `$CLAUDE_RUNNER_CLAUDE_BIN`, die eigene Binärdatei des Runners, damit Signale und Exit-Codes korrekt weitergegeben werden.

20 20 

21Zeigen Sie `--exec-path` oder `SELF_HOSTED_RUNNER_EXEC_PATH` auf den Wrapper, wenn Sie den Runner starten:21Zeigen Sie `--exec-path` oder `SELF_HOSTED_RUNNER_EXEC_PATH` auf den Wrapper, wenn Sie den Runner starten, und ersetzen Sie dabei `<writable-dir>` wie im [Schnellstart](https://code.claude.com/docs/de/self-hosted-environments-quickstart.md#set-up-manually) beschrieben:

22 22 

23```bash theme={null}23```bash theme={null}

24claude self-hosted-runner --environment-secret-file /etc/claude/environment-secret --exec-path /etc/claude/session-wrapper.sh24claude self-hosted-runner --environment-secret-file /etc/claude/environment-secret --base-dir '<writable-dir>' --exec-path /etc/claude/session-wrapper.sh

25```25```

26 26 

27Der Runner setzt Folgendes in der Umgebung des Wrappers:27Der Runner setzt Folgendes in der Umgebung des Wrappers:


457 457 

458Um zu bestätigen, dass der Trap funktioniert, fügen Sie direkt unter der `trap`-Zeile eine Zeile ein, die einen nicht existierenden Befehl aufruft, etwa `no-such-command`. Führen Sie die Hook-Datei aus Ihrer Shell aus und prüfen Sie, dass `echo $?` den Wert `1` ausgibt; entfernen Sie die Zeile anschließend.458Um zu bestätigen, dass der Trap funktioniert, fügen Sie direkt unter der `trap`-Zeile eine Zeile ein, die einen nicht existierenden Befehl aufruft, etwa `no-such-command`. Führen Sie die Hook-Datei aus Ihrer Shell aus und prüfen Sie, dass `echo $?` den Wert `1` ausgibt; entfernen Sie die Zeile anschließend.

459 459 

460### Orchestrator stoppen oder neu starten

461 

462Um den Orchestrator zu stoppen oder neu zu starten, ohne laufende `spawn-runner`-Hooks abzubrechen, starten Sie ihn mit [`--shutdown-drain-sec`](https://code.claude.com/docs/de/self-hosted-environments-reference#orchestrator-cli-flags). Bei `SIGTERM` gibt er laufenden Hooks dann bis zu der von Ihnen festgelegten Anzahl von Sekunden Zeit, um abzuschließen. Wie Sie den Wert wählen und Ihren Prozess-Supervisor passend einrichten, erfahren Sie unter [`--shutdown-drain-sec` und den Stopp-Timeout des Orchestrators bemessen](#size-shutdown-drain-sec-and-the-supervisors-stop-timeout-for-the-orchestrator).

463 

464Dieser Startbefehl erlaubt 70 Sekunden:

465 

466```bash theme={null}

467claude self-hosted-runner orchestrator \

468 --environment-secret-file /etc/claude/environment-secret \

469 --hooks-dir /etc/claude/hooks \

470 --shutdown-drain-sec 70

471```

472 

473Der Orchestrator beendet sich, sobald die bereits gesendete Abfrage und alle Hooks abgeschlossen sind. Wenn die Sekunden von `--shutdown-drain-sec` abgelaufen sind, erhalten noch laufende Hooks `SIGTERM`, und der Orchestrator beendet sich. Ein zweites `SIGTERM` oder ein beliebiges `SIGINT` bewirkt dasselbe ohne Wartezeit. Die Log-Zeile mit `[runner:orchestrator] stop summary:` zählt Hooks und Spawn-Anfragen danach, wie sie jeweils geendet haben.

474 

475Ohne `--shutdown-drain-sec` stoppt der Orchestrator bei `SIGTERM` oder `SIGINT` sofort. Jeder laufende Hook erhält `SIGTERM`, und Anthropic wird nicht benachrichtigt. Eine Sitzung, deren Runner nie gestartet wurde, kann dann in der Warteschlange verbleiben, bis Anthropic [sie erneut anfordert](#the-spawn-runner-hook), was geschieht, sobald `--expected-spawn-seconds` verstrichen ist, standardmäßig 120 Sekunden.

476 

477> [!NOTE]

478>

479> `--shutdown-drain-sec` erfordert Claude Code v2.1.299 oder höher. Eine ältere Version beendet sich beim Start mit `error: unknown flag --shutdown-drain-sec`.

480 

481#### `--shutdown-drain-sec` und den Stopp-Timeout des Orchestrators bemessen

482 

483Verwenden Sie bei Standardeinstellungen [`--shutdown-drain-sec 70`](https://code.claude.com/docs/de/self-hosted-environments-reference#orchestrator-cli-flags) mit einem Stopp-Timeout von 85 Sekunden, also `terminationGracePeriodSeconds: 85` unter Kubernetes oder `TimeoutStopSec=85` unter systemd. Wenn Sie `--hook-timeout` geändert haben, skalieren Sie beide Werte:

484 

485* **`--shutdown-drain-sec`**: mindestens `--hook-timeout` plus 10 Sekunden, damit ein Hook, der unmittelbar vor `SIGTERM` gestartet wurde, noch abschließen kann

486* **Stopp-Timeout**: mindestens `--shutdown-drain-sec` plus 15 Sekunden. Der Orchestrator protokolliert diesen Wert beim Start: Suchen Sie nach der Zeile, die `shutdown drain:` enthält.

487 

488Lassen Sie Ihren Prozess-Supervisor ein einziges `SIGTERM` senden, und zwar nur an den Orchestrator-Prozess, da ein zweites die Wartezeit von `--shutdown-drain-sec` verkürzt. Wenn Sie den systemd-Standard [`KillMode=control-group`](https://code.claude.com/docs/de/self-hosted-environments-deploy#what-reaches-a-running-post-session-hook) beibehalten, erhalten auch die Hooks `SIGTERM`, und ein Hook kann beendet werden, bevor er seine Workload einreicht. Bevor Sie `KillMode` ändern, prüfen Sie, wie Ihr `spawn-runner`-Hook Runner startet:

489 

490* **Wenn Ihr Hook seine Workload an eine Plattform übergibt und sich beendet**: Führen Sie den Orchestrator als Hauptprozess der Unit aus und setzen Sie `KillMode=mixed`, wodurch `SIGTERM` nur an diesen Prozess gesendet wird.

491* **Wenn Ihr Hook Runner als Prozesse in der eigenen Unit des Orchestrators startet**: `KillMode=mixed` sendet diesen Runnern kein `SIGTERM`. Stattdessen sendet systemd ihnen später `SIGKILL`, sodass sie sich beenden, ohne ihre Sitzungen geordnet abzuschließen oder ihren `post-session`-Hook auszuführen.

492 

460## Modellanfragen an Bedrock oder Agent Platform senden493## Modellanfragen an Bedrock oder Agent Platform senden

461 494 

462Wenn Ihre Organisation Modellanfragen über ihr eigenes AWS- oder Google-Cloud-Konto leiten muss, konfigurieren Sie den Runner für [Amazon Bedrock](https://code.claude.com/docs/de/amazon-bedrock.md) oder [Google Cloud's Agent Platform, ehemals Vertex AI](https://code.claude.com/docs/de/google-vertex-ai.md). Jede Sitzung, die dieser Runner startet, ruft das Modell dann in Ihrem Cloud-Konto mit Ihren Cloud-Anmeldedaten auf. Ohne diese Konfiguration senden Sitzungen Modellanfragen an die Anthropic API.495Wenn Ihre Organisation Modellanfragen über ihr eigenes AWS- oder Google-Cloud-Konto leiten muss, konfigurieren Sie den Runner für [Amazon Bedrock](https://code.claude.com/docs/de/amazon-bedrock.md) oder [Google Cloud's Agent Platform, ehemals Vertex AI](https://code.claude.com/docs/de/google-vertex-ai.md). Jede Sitzung, die dieser Runner startet, ruft das Modell dann in Ihrem Cloud-Konto mit Ihren Cloud-Anmeldedaten auf. Ohne diese Konfiguration senden Sitzungen Modellanfragen an die Anthropic API.

Details

583 583 

584## Zeitverhalten beim Herunterfahren584## Zeitverhalten beim Herunterfahren

585 585 

586Nach `SIGTERM` benötigt ein Runner Zeit, um seine Sitzungen sauber herunterzufahren, bevor Ihr Orchestrator ihn beendet. Wie lange, protokolliert er beim Start in einer Zeile, die bei Standardeinstellungen `This runner needs up to 80s` enthält. Setzen Sie das Stopp-Timeout Ihres Orchestrators auf mindestens so viele Sekunden: `terminationGracePeriodSeconds` unter Kubernetes, `stop_grace_period` unter Docker Compose oder das Äquivalent Ihrer Plattform. Kubernetes verwendet standardmäßig 30 Sekunden, sodass es ohne diese Einstellung den Pod stoppen kann, bevor der Runner fertig ist.586> [!NOTE]

587>

588> Diese Zeitangaben gelten für Runner. Der Prozess `claude self-hosted-runner orchestrator` hat eigene: siehe [`--shutdown-drain-sec` und das Stopp-Timeout des Orchestrators bemessen](https://code.claude.com/docs/de/self-hosted-environments-configuration#size-shutdown-drain-sec-and-the-supervisors-stop-timeout-for-the-orchestrator).

589 

590Beim Start protokolliert jeder Runner, wie lange er nach `SIGTERM` benötigen kann, um seine Sitzungen sauber herunterzufahren, etwa `This runner needs up to 80s` bei Standardeinstellungen. Ihr Stopp-Timeout ist die Zeit, die Ihr Prozess-Supervisor nach `SIGTERM` wartet, bevor er den Runner beendet. Setzen Sie es auf mindestens die protokollierte Dauer:

591 

592* **Kubernetes**: `terminationGracePeriodSeconds`. Kubernetes verwendet standardmäßig 30 Sekunden, sodass es ohne diese Einstellung den Pod stoppen kann, bevor der Runner fertig ist.

593* **Docker Compose**: `stop_grace_period`

587 594 

588Bei `SIGTERM` nimmt der Runner keine neuen Sitzungen mehr an. Anschließend beginnt er ein geordnetes Herunterfahren, den sogenannten Drain, sofern Sie nicht [`--defer-shutdown-max-min`](#defer-the-drain-past-the-first-signal) setzen, um ihn aufzuschieben. Der Drain besteht aus drei Schritten:595Bei `SIGTERM` nimmt der Runner keine neuen Sitzungen mehr an. Anschließend beginnt er ein geordnetes Herunterfahren, den sogenannten Drain, sofern Sie nicht [`--defer-shutdown-max-min`](#defer-the-drain-past-the-first-signal) setzen, um ihn aufzuschieben. Der Drain besteht aus drei Schritten:

589 596 


744 751 

745**2. Den Runner starten**752**2. Den Runner starten**

746 753 

747Starten Sie den Runner aus Ihrer Shell mit `--hold-idle-file`, `--release-idle-session-min` und [`--max-hold-min`](https://code.claude.com/docs/de/self-hosted-environments-reference#runner-cli-flags), der Obergrenze für das Halten, gezählt ab dem Zeitpunkt, an dem eine Sitzung inaktiv wird. Ohne diese Option beträgt die Obergrenze einen Tag. Setzen Sie den Wert höher als `--release-idle-session-min`, sonst wird nichts gehalten. Dieses Beispiel gibt inaktive Sitzungen nach 30 Minuten frei und gibt eine gehaltene Sitzung spätestens 4 Stunden nach Beginn ihrer Inaktivität frei:754Starten Sie den Runner aus Ihrer Shell mit `--hold-idle-file`, `--release-idle-session-min` und [`--max-hold-min`](https://code.claude.com/docs/de/self-hosted-environments-reference#runner-cli-flags), der Obergrenze für das Halten, gezählt ab dem Zeitpunkt, an dem eine Sitzung inaktiv wird. Ohne diese Option beträgt die Obergrenze einen Tag. Setzen Sie den Wert höher als `--release-idle-session-min`, sonst wird nichts gehalten. Ersetzen Sie `<writable-dir>` wie im [Schnellstart](https://code.claude.com/docs/de/self-hosted-environments-quickstart.md#set-up-manually) beschrieben. Dieses Beispiel gibt inaktive Sitzungen nach 30 Minuten frei und gibt eine gehaltene Sitzung spätestens 4 Stunden nach Beginn ihrer Inaktivität frei:

748 755 

749```bash theme={null}756```bash theme={null}

750claude self-hosted-runner \757claude self-hosted-runner \

751 --environment-secret-file /etc/claude/environment-secret \758 --environment-secret-file /etc/claude/environment-secret \

759 --base-dir '<writable-dir>' \

752 --release-idle-session-min 30 \760 --release-idle-session-min 30 \

753 --hold-idle-file /var/lib/claude-hold/hold-idle \761 --hold-idle-file /var/lib/claude-hold/hold-idle \

754 --max-hold-min 240762 --max-hold-min 240


816 * **Nicht committete Änderungen gehen weiterhin verloren**: Wie Sie Claude per Prompt anweisen, nach Abschluss seiner Antwort zu committen und zu pushen, erfahren Sie unter [Sitzungen zum Pushen ihrer Arbeit auffordern](https://code.claude.com/docs/de/self-hosted-environments-configuration.md#prompt-sessions-to-push-their-work)824 * **Nicht committete Änderungen gehen weiterhin verloren**: Wie Sie Claude per Prompt anweisen, nach Abschluss seiner Antwort zu committen und zu pushen, erfahren Sie unter [Sitzungen zum Pushen ihrer Arbeit auffordern](https://code.claude.com/docs/de/self-hosted-environments-configuration.md#prompt-sessions-to-push-their-work)

817* **Ein durch einen verlorenen Runner abgebrochener Befehl kann erneut ausgeführt werden**: Wenn die Sitzung auf einem anderen Runner fortgesetzt wird, sieht Claude den unterbrochenen Tool-Aufruf mit einem Ergebnis, das besagt, dass sein Ausgang unbekannt ist.825* **Ein durch einen verlorenen Runner abgebrochener Befehl kann erneut ausgeführt werden**: Wenn die Sitzung auf einem anderen Runner fortgesetzt wird, sieht Claude den unterbrochenen Tool-Aufruf mit einem Ergebnis, das besagt, dass sein Ausgang unbekannt ist.

818* **Ein während der Sitzung hinzugefügtes Repository kann beim Klonen fehlschlagen**: Claude klont es mit `git clone` über HTTPS. Auf einem Runner ohne [`--use-anthropic-git-proxy`](#use-the-anthropic-git-proxy) schlägt das Klonen mit einem Git-Authentifizierungsfehler fehl, wenn nichts auf dem Host das Repository lesen kann. Wählen Sie nach Möglichkeit jedes Repository, das die Sitzung benötigt, bereits beim Erstellen aus.826* **Ein während der Sitzung hinzugefügtes Repository kann beim Klonen fehlschlagen**: Claude klont es mit `git clone` über HTTPS. Auf einem Runner ohne [`--use-anthropic-git-proxy`](#use-the-anthropic-git-proxy) schlägt das Klonen mit einem Git-Authentifizierungsfehler fehl, wenn nichts auf dem Host das Repository lesen kann. Wählen Sie nach Möglichkeit jedes Repository, das die Sitzung benötigt, bereits beim Erstellen aus.

827 * **Wenn die Sitzung fortgesetzt wird**: Ein [`checkout`-Hook](https://code.claude.com/docs/de/self-hosted-environments-configuration#checkout) wird auch für das hinzugefügte Repository ausgeführt, wobei [`CLAUDE_RUNNER_REPO_REF`](https://code.claude.com/docs/de/self-hosted-environments-configuration#checkout) leer ist; sorgen Sie also dafür, dass Ihr Hook diesen Fall verarbeitet.

819* **Einige Connectoren erscheinen nicht in selbstgehosteten Sitzungen**: Ein Connector, den Sie noch nicht in claude.ai Settings verbunden haben, wird nicht in einer selbstgehosteten Sitzung aufgelistet, und die Sitzung wird Sie nicht auffordern, ihn zu verbinden. Verbinden Sie ihn zuerst in Settings, dann starten Sie eine frische Sitzung. Das Hinzufügen eines Connectors zu einer bereits laufenden Sitzung macht seine Tools auch nicht für Claude verfügbar; starten Sie eine frische Sitzung, um einen neu hinzugefügten Connector aufzugreifen.828* **Einige Connectoren erscheinen nicht in selbstgehosteten Sitzungen**: Ein Connector, den Sie noch nicht in claude.ai Settings verbunden haben, wird nicht in einer selbstgehosteten Sitzung aufgelistet, und die Sitzung wird Sie nicht auffordern, ihn zu verbinden. Verbinden Sie ihn zuerst in Settings, dann starten Sie eine frische Sitzung. Das Hinzufügen eines Connectors zu einer bereits laufenden Sitzung macht seine Tools auch nicht für Claude verfügbar; starten Sie eine frische Sitzung, um einen neu hinzugefügten Connector aufzugreifen.

820* **Wenn jemand eine Sitzung archiviert oder löscht oder ihren Runner über das Menü der Sitzung freigibt**: Verlassen Sie sich nicht auf den Push durch [`--push-outcome-on-release`](https://code.claude.com/docs/de/self-hosted-environments-reference#runner-cli-flags). Um Commits in diesen Fällen zu sichern, pushen Sie `HEAD` aus einem [`post-session`-Hook](https://code.claude.com/docs/de/self-hosted-environments-configuration#post-session) in einen Rettungs-Branch. Wenn Sie vom dortigen Beispiel ausgehen, sorgen Sie dafür, dass es auch dann pusht, wenn nichts uncommittet ist, da es nur nach einem Snapshot-Commit pusht.829* **Wenn jemand eine Sitzung archiviert oder löscht oder ihren Runner über das Menü der Sitzung freigibt**: Verlassen Sie sich nicht auf den Push durch [`--push-outcome-on-release`](https://code.claude.com/docs/de/self-hosted-environments-reference#runner-cli-flags). Um Commits in diesen Fällen zu sichern, pushen Sie `HEAD` aus einem [`post-session`-Hook](https://code.claude.com/docs/de/self-hosted-environments-configuration#post-session) in einen Rettungs-Branch. Wenn Sie vom dortigen Beispiel ausgehen, sorgen Sie dafür, dass es auch dann pusht, wenn nichts uncommittet ist, da es nur nach einem Snapshot-Commit pusht.

821 830 


825 834 

826## Fehlerbehebung835## Fehlerbehebung

827 836 

828Für geführte Diagnose führen Sie den Doctor-Subcommand auf dem Runner-Host aus. Der Doctor-Subcommand startet eine interaktive Claude Code-Sitzung mit den Logs und dem Zustand des Runners angehängt. Melden Sie sich zuerst mit `claude auth login` auf diesem Host an, daher kann die Sitzung Ihre Umgebung, ihre Runner und ihre in die Warteschlange eingereihten Sitzungen abfragen. Ohne diese Anmeldung, zum Beispiel wenn der Host mit einem API-Schlüssel authentifiziert, ist es auf den lokalen Health-Endpunkt, Metriken und das Runner-Log begrenzt, und es liest das Log nur, wenn Sie den Runner mit `--log-file` gestartet haben.837Für eine geführte Diagnose führen Sie den Unterbefehl doctor auf dem Runner-Host aus. Der Unterbefehl doctor startet eine interaktive Claude Code-Sitzung, der die Logs und der Zustand des Runners beigefügt sind. Melden Sie sich zuerst auf diesem Host mit `claude auth login` an, damit die Sitzung Ihre Umgebung, deren Runner und deren wartende Sitzungen abfragen kann. Ohne diese Anmeldung, zum Beispiel wenn sich der Host mit einem API-Schlüssel authentifiziert, ist sie auf den lokalen Health-Endpunkt, die Metriken und das Log des Runners beschränkt, und das Log liest sie nur, wenn Sie den Runner mit `--log-file` gestartet haben.

829 838 

830```bash theme={null}839```bash theme={null}

831claude self-hosted-runner doctor840claude self-hosted-runner doctor


833 842 

834Häufige Probleme:843Häufige Probleme:

835 844 

836* **Runner erscheint nicht in der Umgebung**: Bestätigen Sie, dass der Host `api.anthropic.com` über HTTPS erreichen kann, das Umgebungsgeheimnis aktuell ist und die Host-Uhr innerhalb von fünf Minuten der echten Zeit liegt; größere Abweichung verursacht, dass die Authentifizierung fehlschlägt. Der Runner protokolliert `[runner:fatal]` mit dem Ablehnungsgrund bei Auth-Fehler.845* **Der Runner erscheint nicht in der Umgebung**: Prüfen Sie, ob der Host `api.anthropic.com` über HTTPS erreichen kann und das Umgebungs-Secret aktuell ist. Bei einem Authentifizierungsfehler protokolliert der Runner `[runner:fatal]` mit dem Grund der Ablehnung.

837* **Runner beendet sich beim Start mit `cannot create or write to base directory`**: Der Runner kann `--base-dir` nicht erstellen oder schreiben, das standardmäßig auf `/workspace` ist. Beheben Sie das Verzeichnis's Eigentum oder zeigen Sie `--base-dir` auf einen beschreibbaren Pfad, wie in [Halten Sie das Basis-Verzeichnis und die Kapazität über Runner identisch](#keep-the-base-directory-and-capacity-identical-across-runners) beschrieben. Wenn der Runner stattdessen `[runner:fatal]` protokolliert, dass die Basis-Verzeichnis-Überprüfung abgelaufen ist, ist das Verzeichnis auf einem hängenden NFS- oder CSI-Mount. Überprüfen Sie die Mount-Gesundheit anstatt der Berechtigungen. Der Runner druckt beide dieser Startup-Fehler zu stderr, bevor er `--log-file` öffnet, daher suchen Sie nach ihnen im Terminal oder Ihren Plattform-Container-Logs anstatt der Log-Datei. Vor v2.1.225 überprüfte der Runner das Basis-Verzeichnis nicht beim Start, und diese Fehlkonfiguration schlug Sitzungen nach der Aufnahme fehl.846* **Der Runner beendet sich beim Start mit `cannot create or write to base directory`**: Der Runner kann `--base-dir`, standardmäßig `/workspace`, weder anlegen noch darin schreiben. Korrigieren Sie den Besitzer des Verzeichnisses oder lassen Sie `--base-dir` auf einen beschreibbaren Pfad zeigen, wie in [Basisverzeichnis und Kapazität über alle Runner hinweg identisch halten](#keep-the-base-directory-and-capacity-identical-across-runners) beschrieben. Protokolliert der Runner stattdessen `[runner:fatal]` mit dem Hinweis, dass bei der Prüfung des Basisverzeichnisses ein Timeout aufgetreten ist, liegt das Verzeichnis auf einem hängenden NFS- oder CSI-Mount. Prüfen Sie dann den Zustand des Mounts statt der Berechtigungen. Der Runner gibt beide Startfehler auf stderr aus, bevor er `--log-file` öffnet. Suchen Sie sie daher im Terminal oder in den Container-Logs Ihrer Plattform statt in der Logdatei. Vor v2.1.225 prüfte der Runner das Basisverzeichnis beim Start nicht, und diese Fehlkonfiguration ließ stattdessen Sitzungen nach der Übernahme fehlschlagen.

838* **Runner beendet sich beim Start mit `RegisterRunner failed:` und einem TLS-Zertifikatsfehler**: Der Fehler kann zum Beispiel `self signed certificate in certificate chain` lauten. Der Runner vertraut der Zertifizierungsstelle (CA) hinter dem empfangenen Zertifikat nicht, wie es hinter einem TLS-inspizierenden Proxy vorkommt. Setzen Sie [`NODE_EXTRA_CA_CERTS`](https://code.claude.com/docs/de/network-config#custom-ca-certificates) in der Umgebung des Runners auf eine PEM-Datei mit der Root-CA des Proxys.847* **Der Runner beendet sich beim Start mit `RegisterRunner failed:` und einem TLS-Zertifikatsfehler**: Der Fehler kann zum Beispiel `self signed certificate in certificate chain` lauten. Der Runner vertraut der Zertifizierungsstelle (CA) hinter dem erhaltenen Zertifikat nicht, wie es hinter einem TLS-inspizierenden Proxy vorkommt. Setzen Sie [`NODE_EXTRA_CA_CERTS`](https://code.claude.com/docs/de/network-config#custom-ca-certificates) in der Umgebung des Runners auf eine PEM-Datei mit der Root-CA des Proxys.

839 848 

840 Für Sitzungen müssen Sie die Variable nicht erneut setzen, da diese sie erben. Git liest sie nicht: Für Clones über diesen Proxy setzen Sie zusätzlich [`GIT_SSL_CAINFO`](#trust-a-private-certificate-authority-with-anthropic-managed-git).849 Für Sitzungen setzen Sie die Variable nicht erneut, da diese sie erben. Git liest sie nicht: Für Klonvorgänge über diesen Proxy setzen Sie zusätzlich [`GIT_SSL_CAINFO`](#trust-a-private-certificate-authority-with-anthropic-managed-git).

841* **Ihr Startskript gibt einen Schreibfehler mit `Resource temporarily unavailable` aus und beendet sich**: Ihr Skript teilt seine stdout oder stderr mit dem Prozess `claude self-hosted-runner` oder [Orchestrator](https://code.claude.com/docs/de/self-hosted-environments-configuration.md#on-demand-runners), den es startet, und dieser Prozess hat die gemeinsame Pipe bzw. den gemeinsamen Socket in den nicht blockierenden Modus umgeschaltet. Wenn die Pipe voll ist, schlägt ein Schreibvorgang Ihres Skripts mit diesem Betriebssystemfehler fehl, anstatt zu warten, und unter `set -e` beendet sich das Skript.850* **Ihr Startskript gibt einen Schreibfehler mit `Resource temporarily unavailable` aus und beendet sich**: Ihr Skript teilt sein stdout oder stderr mit dem Prozess `claude self-hosted-runner` oder [Orchestrator](https://code.claude.com/docs/de/self-hosted-environments-configuration.md#on-demand-runners), den es startet, und dieser hat die gemeinsam genutzte Pipe bzw. den Socket in den nicht blockierenden Modus versetzt. Ist die Pipe voll, schlägt ein Schreibvorgang Ihres Skripts mit diesem Betriebssystemfehler fehl, statt zu warten, und unter `set -e` beendet sich das Skript.

842 851 

843 Um den Fehler zu vermeiden, leiten Sie die Ausgabe des Runners oder Orchestrators in eine Datei um, die der Benutzer Ihres Skripts erstellen kann. Hängen Sie `>> "$HOME/claude-runner.log" 2>&1` an den Befehl an, der ihn startet, und zwar vor einem eventuellen `&`, das ihn in den Hintergrund schickt:852 Um den Fehler zu beheben, leiten Sie die Ausgabe des Runners bzw. Orchestrators in eine Datei um, die der Benutzer Ihres Skripts anlegen kann. Hängen Sie `>> "$HOME/claude-runner.log" 2>&1` an den Befehl an, der ihn startet, und zwar vor einem eventuellen `&`, das ihn in den Hintergrund schickt, und ersetzen Sie `<writable-dir>` wie im [Schnellstart](https://code.claude.com/docs/de/self-hosted-environments-quickstart.md#set-up-manually) beschrieben:

844 853 

845 ```bash theme={null}854 ```bash theme={null}

846 claude self-hosted-runner --environment-secret-file /etc/claude/environment-secret >> "$HOME/claude-runner.log" 2>&1855 claude self-hosted-runner --environment-secret-file /etc/claude/environment-secret --base-dir '<writable-dir>' >> "$HOME/claude-runner.log" 2>&1

847 ```856 ```

848 857 

849 Die eigene Ausgabe Ihres Skripts geht weiterhin dorthin, wohin sie vorher ging, während das, was der Runner nach stdout und stderr schreibt, einschließlich seiner Startfehler, in diese Datei geht. Verwenden Sie diese Shell-Umleitung statt [`--log-file`](https://code.claude.com/docs/de/self-hosted-environments-reference#runner-cli-flags) allein, das das Log in eine Datei spiegelt, während der Runner weiterhin nach stdout und stderr schreibt. Wenn Sie bereits `--log-file` übergeben, behalten Sie es ebenfalls bei, denn die Umleitung ändert nicht, was diese Datei empfängt.858 Die eigene Ausgabe Ihres Skripts landet weiterhin dort, wo sie bisher landete, während alles, was der Runner auf stdout und stderr schreibt, einschließlich seiner Startfehler, in diese Datei geht. Verwenden Sie diese Shell-Umleitung statt [`--log-file`](https://code.claude.com/docs/de/self-hosted-environments-reference#runner-cli-flags) allein, denn dieses Flag spiegelt das Log in eine Datei, während der Runner weiterhin auf stdout und stderr schreibt. Wenn Sie `--log-file` bereits übergeben, behalten Sie es ebenfalls bei, denn die Umleitung ändert nicht, was diese Datei erhält.

850* **Orchestrator protokolliert `poll failed:` mit einem TLS-Zertifikatsfehler und versucht es fortlaufend erneut**: Der Orchestrator vertraut der CA hinter dem empfangenen Zertifikat nicht, wie es hinter einem TLS-inspizierenden Proxy vorkommt. Setzen Sie [`NODE_EXTRA_CA_CERTS`](https://code.claude.com/docs/de/network-config#custom-ca-certificates) in der Umgebung des Orchestrators auf eine PEM-Datei mit der Root-CA des Proxys. Setzen Sie die Variable auch für die Runner, die Ihr `spawn-runner`-Hook startet.859* **Der Orchestrator protokolliert `poll failed:` mit einem TLS-Zertifikatsfehler und versucht es immer wieder erneut**: Der Orchestrator vertraut der CA hinter dem erhaltenen Zertifikat nicht, wie es hinter einem TLS-inspizierenden Proxy vorkommt. Setzen Sie [`NODE_EXTRA_CA_CERTS`](https://code.claude.com/docs/de/network-config#custom-ca-certificates) in der Umgebung des Orchestrators auf eine PEM-Datei mit der Root-CA des Proxys. Setzen Sie die Variable auch für die Runner, die Ihr `spawn-runner`-Hook startet.

851 860 

852 Zum Beispiel kann eine Zeile mit `poll failed: self signed certificate in certificate chain — retrying in 1s` enden, wobei zwischen dem Doppelpunkt und dem Gedankenstrich die Worte der TLS-Bibliothek stehen. Um die Behebung zu bestätigen, prüfen Sie, dass `connected` im Body von [`/healthz`](https://code.claude.com/docs/de/self-hosted-environments-reference#health-endpoint) des Orchestrators `true` ist.861 Eine Zeile kann zum Beispiel mit `poll failed: self signed certificate in certificate chain — retrying in 1s` enden, wobei zwischen Doppelpunkt und Gedankenstrich der Wortlaut der TLS-Bibliothek steht. Um die Behebung zu bestätigen, prüfen Sie, ob `connected` im Body von [`/healthz`](https://code.claude.com/docs/de/self-hosted-environments-reference#health-endpoint) des Orchestrators `true` ist.

853* **Sitzungen bleiben in der Warteschlange**: Jeder Online-Runner kann auf einen anderen Owner gesperrt sein. Überprüfen Sie die `claude_code_self_hosted_runner_locked_account`-[Metrik](https://code.claude.com/docs/de/self-hosted-environments-reference.md#prometheus-metrics) jedes Runners oder das `locked_account`-Feld seiner `[runner:health]`-Log-Zeile, um zu sehen, wer sie hält. Beide zeigen die Email des Owners nur, nachdem der Runner ein Sitzungs-Token mit einem `act.email`-Claim ausgestellt bekommen hat, das die Sitzungen eines Claude Tag-Agenten niemals tun. Ohne den Claim sendet der Runner keine `locked_account`-Serie aus und protokolliert `locked_account=yes`, was Ihnen sagt, dass der Runner gesperrt ist, aber nicht auf welchen Owner. Fügen Sie Replicas hinzu, oder warten Sie, bis ein bestehender Runner drainiert und neu startet. Wenn die Umgebung On-Demand-Runner verwendet, überprüfen Sie stattdessen den Orchestrator; siehe [On-Demand-Runner](https://code.claude.com/docs/de/self-hosted-environments-configuration.md#on-demand-runners).862* **Sitzungen bleiben in der Warteschlange**: Möglicherweise ist jeder Online-Runner an einen anderen Besitzer gebunden. Prüfen Sie die [Metrik](https://code.claude.com/docs/de/self-hosted-environments-reference.md#prometheus-metrics) `claude_code_self_hosted_runner_locked_account` jedes Runners oder das Feld `locked_account` seiner `[runner:health]`-Logzeile, um zu sehen, wer ihn hält. Beide zeigen die E-Mail-Adresse des Besitzers erst, nachdem dem Runner ein Sitzungs-Token mit einem `act.email`-Claim ausgestellt wurde, was bei den Sitzungen eines Claude Tag-Agenten nie der Fall ist. Ohne den Claim gibt der Runner keine `locked_account`-Zeitreihe aus und protokolliert `locked_account=yes`, was Ihnen sagt, dass der Runner gebunden ist, aber nicht an welchen Besitzer. Fügen Sie Replikate hinzu oder warten Sie, bis ein vorhandener Runner seine Sitzungen abgeschlossen hat und neu startet. Wenn die Umgebung On-Demand-Runner verwendet, prüfen Sie stattdessen den Orchestrator; siehe [On-Demand-Runner](https://code.claude.com/docs/de/self-hosted-environments-configuration.md#on-demand-runners).

854* **Sitzungen schlagen sofort nach der Aufnahme fehl**: Öffnen Sie die Sitzung in claude.ai/code, um den Fehler zu sehen. Wenn der Fehler zeigt, dass Git sich nicht authentifizieren konnte, überprüfen Sie die [Git-Anmeldedaten](#configure-git) des Runners. Bei einem Runner, der mit `--use-anthropic-git-proxy` gestartet wurde, siehe [Wenn Sitzungen auf einem Runner mit dem Git-Proxy nicht starten](#when-anthropic-doesnt-serve-a-session).863* **Sitzungen schlagen unmittelbar nach der Übernahme fehl**: Öffnen Sie die Sitzung in claude.ai/code, um den Fehler zu sehen. Zeigt der Fehler, dass sich git nicht authentifizieren konnte, prüfen Sie die [git-Anmeldedaten](#configure-git) des Runners. Bei einem Runner, der mit `--use-anthropic-git-proxy` gestartet wurde, siehe [Wenn Sitzungen auf einem Runner mit dem git-Proxy nicht starten](#when-anthropic-doesnt-serve-a-session).

855 864 

856 Ein nicht beschreibbares Basis-Verzeichnis stoppt den Runner beim Start, anstatt Sitzungen fehlschlagen zu lassen. Siehe den **Runner beendet sich beim Start mit `cannot create or write to base directory`**-Eintrag in dieser Liste.865 Ein nicht beschreibbares Basisverzeichnis hält den Runner beim Start an, statt Sitzungen fehlschlagen zu lassen. Siehe den Eintrag **Der Runner beendet sich beim Start mit `cannot create or write to base directory`** in dieser Liste.

857* **Eine Sitzung wird aufgenommen, aber Claude beantwortet ihre erste Nachricht nie**: Wenn Ihre Runner `api.anthropic.com` über einen Proxy erreichen, konfigurieren Sie ihn so, dass er die `/worker/events/stream`-Antwort der Sitzung so durchreicht, wie sie eintrifft. Das Erhöhen der Timeouts des Runners hilft nicht. Um die Ursache im Log des Runners zu bestätigen, siehe [Eine Sitzung wird aufgenommen, aber Claude beantwortet ihre erste Nachricht nie](#when-a-sessions-first-message-is-never-answered).866* **Eine Sitzung wird übernommen, aber Claude beantwortet ihre erste Nachricht nie**: Wenn Ihre Runner `api.anthropic.com` über einen Proxy erreichen, konfigurieren Sie ihn so, dass er die `/worker/events/stream`-Antwort der Sitzung beim Eintreffen unmittelbar durchreicht. Die Timeouts des Runners zu erhöhen hilft nicht. Um die Ursache im Log des Runners zu bestätigen, siehe [Eine Sitzung wird übernommen, aber Claude beantwortet ihre erste Nachricht nie](#when-a-sessions-first-message-is-never-answered).

858* **Sitzungen starten nicht auf einem Runner, der `--use-anthropic-git-proxy` gesetzt hat**: Suchen Sie im Log des Runners nach `access denied by the git proxy` oder nach einem Git-Fehler, der eine `api.anthropic.com`-Adresse mit `/git_proxy/` nennt. Um festzustellen, ob Anthropic die Sitzung bedient hat, und die Ursache zu beheben, siehe [Wenn Sitzungen auf einem Runner mit dem Git-Proxy nicht starten](#when-anthropic-doesnt-serve-a-session).867* **Sitzungen starten nicht auf einem Runner, der `--use-anthropic-git-proxy` gesetzt hat**: Suchen Sie im Log des Runners nach `access denied by the git proxy` oder nach einem git-Fehler, der eine `api.anthropic.com`-Adresse mit `/git_proxy/` nennt. Um festzustellen, ob Anthropic die Sitzung bedient hat, und die Ursache zu beheben, siehe [Wenn Sitzungen auf einem Runner mit dem git-Proxy nicht starten](#when-anthropic-doesnt-serve-a-session).

859* **Sitzungen können das Netzwerk nicht durch einen authentifizierenden Egress-Proxy erreichen**: Wenn die Quelle, die Sie mit [`--proxy-authorization-command` oder `--proxy-authorization-file`](#authenticate-to-an-egress-proxy) setzen, fehlschlägt, nach 30 Sekunden abläuft oder einen leeren Wert ergibt, antwortet der Runner dieser Verbindung `502 Bad Gateway` und protokolliert warum. Der Runner schwärzt die stderr-Ausgabe des Befehls in diesem Log und protokolliert niemals den Header-Wert. Mit `--proxy-authorization-command` führen Sie den Befehl selbst auf dem Host aus, um zu bestätigen, dass er den ganzen Header-Wert auf stdout druckt. Wenn der Runner stattdessen beim Start mit `could not start the proxy-authorization listener` beendet wird, konnte er seinen Loopback-Listener nicht öffnen.868* **Sitzungen erreichen das Netzwerk nicht über einen authentifizierenden Egress-Proxy**: Wenn die Quelle, die Sie mit [`--proxy-authorization-command` oder `--proxy-authorization-file`](#authenticate-to-an-egress-proxy) festgelegt haben, fehlschlägt, nach 30 Sekunden in ein Timeout läuft oder einen leeren Wert liefert, beantwortet der Runner diese Verbindung mit `502 Bad Gateway` und protokolliert den Grund. Der Runner schwärzt das stderr des Befehls in diesem Log und protokolliert den Header-Wert nie. Führen Sie bei `--proxy-authorization-command` den Befehl selbst auf dem Host aus, um zu bestätigen, dass er den vollständigen Header-Wert auf stdout ausgibt. Beendet sich der Runner stattdessen beim Start mit `could not start the proxy-authorization listener`, konnte er seinen Loopback-Listener nicht öffnen.

860* **Runner protokolliert `Poll failed`-Zeilen, die `rejecting the malformed poll response` enthalten**: Der Runner erhielt eine Work-Poll-Antwort, deren Body nicht das erwartete JSON der Warteschlange ist. Eine mögliche Ursache ist ein abfangender Proxy oder ein Captive Portal, der mit seiner eigenen Seite antwortet. Wenn sich der Runner über einen Proxy verbindet, konfigurieren Sie den Proxy so, dass er Antworten von `api.anthropic.com` unverändert durchlässt.869* **Der Runner protokolliert `Poll failed`-Zeilen mit `rejecting the malformed poll response`**: Der Runner hat eine Antwort auf eine Arbeitsabfrage erhalten, deren Body nicht das von der Warteschlange erwartete JSON ist. Eine mögliche Ursache ist ein abfangender Proxy oder ein Captive Portal, das mit einer eigenen Seite antwortet. Wenn sich der Runner über einen Proxy verbindet, konfigurieren Sie den Proxy so, dass er Antworten von `api.anthropic.com` unverändert durchreicht.

861 870 

862 Der Runner lehnt die fehlerhafte Antwort ab, zählt sie unter der `transport`-Art der `claude_code_self_hosted_runner_poll_errors_total`-[Metrik](https://code.claude.com/docs/de/self-hosted-environments-reference.md#prometheus-metrics) und versucht es gemäß dem Zeitplan für fehlgeschlagene Polls, der in [Sitzungs-Lebenszyklus](https://code.claude.com/docs/de/self-hosted-environments#session-lifecycle) beschrieben ist, erneut. Der Runner bedient weiterhin seine Live-Sitzungen. Vor v2.1.246 las der Runner eine solche Antwort als eine leere Warteschlange, die seine Live-Sitzungen beenden oder ihn zum Exit bringen könnte.871 Der Runner verwirft die fehlerhafte Antwort, zählt sie unter der Art `transport` der [Metrik](https://code.claude.com/docs/de/self-hosted-environments-reference.md#prometheus-metrics) `claude_code_self_hosted_runner_poll_errors_total` und versucht es nach dem Zeitplan für fehlgeschlagene Abfragen erneut, der unter [Sitzungslebenszyklus](https://code.claude.com/docs/de/self-hosted-environments#session-lifecycle) beschrieben ist. Der Runner bedient seine laufenden Sitzungen weiter. Vor v2.1.246 las der Runner eine solche Antwort als leere Arbeitswarteschlange, was seine laufenden Sitzungen beenden oder ihn zum Beenden bringen konnte.

863* **Eine Sitzung schlägt mit `no longer exists on the remote` oder `couldn't find remote ref` fehl**: Der Runner wertet das `couldn't find remote ref` von Git als gelöschten Branch. Der Branch kann trotzdem noch existieren. Suchen Sie ihn auf Ihrem Git-Host unter genau dem Namen aus der Meldung, und prüfen Sie dann jede zutreffende Ursache:872* **Eine Sitzung schlägt mit `no longer exists on the remote` oder `couldn't find remote ref` fehl**: Der Runner interpretiert git's `couldn't find remote ref` als gelöschten Branch. Der Branch kann aber noch existieren. Suchen Sie ihn auf Ihrem git-Host unter genau dem Namen aus der Meldung und prüfen Sie dann jede zutreffende Ursache:

864 873 

865 * **Der Branch ist weg**: Stellen Sie ihn wieder her, wie die Meldung es verlangt.874 * **Der Branch existiert nicht mehr**: Stellen Sie ihn wieder her, wie es die Meldung verlangt.

866 * **Der Branch existiert und Sie administrieren den Runner nicht**: Senden Sie dem Administrator des Runners die vollständige Meldung und teilen Sie ihm mit, dass der Branch existiert.875 * **Der Branch existiert, und Sie administrieren den Runner nicht**: Senden Sie dem Administrator des Runners die vollständige Meldung und teilen Sie ihm mit, dass der Branch existiert.

867 * **Der Branch existiert und der Runner hat einen `checkout`-Hook**: Ein Git-Befehl in Ihrem Hook kann `couldn't find remote ref` nach stderr ausgeben, bevor der Hook mit einem Exit-Code ungleich null endet. Finden Sie diesen Befehl, und korrigieren Sie die Ref, die er anfordert, oder das Remote, von dem er abruft. Der Runner übergibt Ihrem Hook die von der Sitzung angeforderte Revision als [`CLAUDE_RUNNER_REPO_REF`](https://code.claude.com/docs/de/self-hosted-environments-configuration#checkout).876 * **Der Branch existiert, und der Runner hat einen `checkout`-Hook**: Ein git-Befehl in Ihrem Hook kann `couldn't find remote ref` auf stderr ausgeben, bevor der Hook mit einem Wert ungleich null endet. Finden Sie diesen Befehl und korrigieren Sie die angeforderte Ref oder das Remote, von dem er abruft. Der Runner übergibt Ihrem Hook die von der Sitzung angeforderte Revision als [`CLAUDE_RUNNER_REPO_REF`](https://code.claude.com/docs/de/self-hosted-environments-configuration#checkout).

868 * **Der Branch existiert und der Runner hat keinen `checkout`-Hook**: Der Runner ruft den Branch selbst ab. Wenn ein [`--git-host-rewrite`](#rewrite-git-urls-for-private-networks) für das Repository gilt, prüfen Sie, ob der Host, auf den umgeschrieben wird, den Branch unter demselben Namen hat, und pushen Sie den Branch dorthin, falls nicht.877 * **Der Branch existiert, und der Runner hat keinen `checkout`-Hook**: Der Runner ruft den Branch selbst ab. Wenn für das Repository ein [`--git-host-rewrite`](#rewrite-git-urls-for-private-networks) gilt, prüfen Sie, ob der Host, auf den umgeschrieben wird, den Branch unter demselben Namen hat, und pushen Sie den Branch dorthin, falls nicht.

869 * **Der Branch existiert und der Runner ist älter als v2.1.301**: Aktualisieren Sie den Runner wie in [Version festlegen](#pin-the-version) beschrieben, damit ein anderer Fehler seine eigene Fehlermeldung anzeigt. Vor v2.1.301 wurden auch andere Fehler mit `couldn't find remote ref` in ihrer Fehlerausgabe als gelöschter Branch gemeldet.878 * **Der Branch existiert, und der Runner ist älter als v2.1.301**: Aktualisieren Sie den Runner wie in [Version festlegen](#pin-the-version) beschrieben, damit ein anderer Fehler seine eigene Fehlermeldung zeigt. Vor v2.1.301 wurden auch andere Fehler mit `couldn't find remote ref` in ihrer Fehlerausgabe als gelöschter Branch gemeldet.

870 879 

871 Sobald der Runner aktualisiert oder die Ursache behoben ist, versuchen Sie die Sitzung erneut oder starten Sie eine neue. Wenn keine dieser Prüfungen die Ursache findet, [melden Sie ein Problem](#report-an-issue).880 Sobald der Runner aktualisiert oder die Ursache behoben ist, versuchen Sie die Sitzung erneut oder starten Sie eine neue. Findet keine dieser Prüfungen die Ursache, [melden Sie ein Problem](#report-an-issue).

872 881 

873 Bei der Quelle, zu der die Sitzung Ergebnisse pusht, lässt ein gelöschter Branch die Sitzung fehlschlagen. Bei einer Git-Quelle, die die Sitzung nur liest, überspringt der Runner diese Quelle und setzt auf den verbleibenden fort. Der Runner lässt die Sitzung fehlschlagen, wenn das Überspringen sie ohne jedes Repository zurücklassen würde. Vor v2.1.228 startete eine solche Sitzung in einem leeren Verzeichnis.882 Für die Quelle, in die die Sitzung Ergebnisse pusht, lässt ein gelöschter Branch die Sitzung fehlschlagen. Für eine git-Quelle, aus der die Sitzung nur liest, überspringt der Runner diese Quelle und fährt mit den übrigen fort. Der Runner lässt die Sitzung fehlschlagen, wenn ihr durch das Überspringen überhaupt kein Repository bliebe. Vor v2.1.228 startete eine solche Sitzung in einem leeren Verzeichnis.

874* **Claude Tag postet seine Antwort in Slack manchmal nicht**: Die Antwort-Erinnerung ist ein [Hook, den die Control Plane bereitstellt](https://code.claude.com/docs/de/self-hosted-environments-configuration.md#how-each-session’s-config-is-assembled). Prüfen Sie mit `claude --version`, ob der Runner Claude Code v2.1.229 oder neuer ist, da ältere Runner bereitgestellte Hooks ignorieren; prüfen Sie, ob `python3 --version` im Runner-Image erfolgreich ausgeführt wird, da die Hooks `python3` ausführen; und prüfen Sie, dass keine Einstellungsdatei Hooks ausschaltet, sei es `disableAllHooks` in `managed-settings.json`, in der `~/.claude/settings.json` des Runner-Benutzers oder in der `.claude/settings.json` oder `.claude/settings.local.json` des Repositorys, oder `allowManagedHooksOnly` oder eine [`strictPluginOnlyCustomization`](https://code.claude.com/docs/de/settings-reference#strictpluginonlycustomization) in den verwalteten Einstellungen, die Hooks abdeckt.883* **Claude Tag postet seine Antwort in Slack manchmal nicht**: Die Antwort-Erinnerung ist ein [Hook, den die Control Plane bereitstellt](https://code.claude.com/docs/de/self-hosted-environments-configuration.md#how-each-session’s-config-is-assembled). Prüfen Sie mit `claude --version`, dass der Runner Claude Code v2.1.229 oder neuer ist, da ältere Runner bereitgestellte Hooks ignorieren; prüfen Sie, dass `python3 --version` im Runner-Image erfolgreich ist, da die Hooks `python3` ausführen; und prüfen Sie, dass keine Einstellungsdatei Hooks ausschaltet, sei es `disableAllHooks` in `managed-settings.json`, in der `~/.claude/settings.json` des Runner-Benutzers oder in der `.claude/settings.json` bzw. `.claude/settings.local.json` des Repositorys, oder `allowManagedHooksOnly` bzw. eine [`strictPluginOnlyCustomization`](https://code.claude.com/docs/de/settings-reference#strictpluginonlycustomization), die Hooks in den verwalteten Einstellungen abdeckt.

875* **Eine Sitzung startet ohne eines ihrer Repositories**: Auf einem Runner ohne [`checkout` Hook](https://code.claude.com/docs/de/self-hosted-environments-configuration#checkout) kann der Git-Host den Zugriffsprüfung des Runners für ein Repository, das die Sitzung nur liest, ablehnen. Der Runner überspringt dann dieses Repository, protokolliert eine `[runner:warn] could not access context source`-Zeile, die die Ablehnung benennt, und startet die Sitzung auf den verbleibenden.884* **Eine Sitzung startet ohne eines ihrer Repositorys**: Auf einem Runner ohne [`checkout`-Hook](https://code.claude.com/docs/de/self-hosted-environments-configuration#checkout) kann der git-Host die Zugriffsprüfung des Runners für ein Repository ablehnen, aus dem die Sitzung nur liest. Der Runner überspringt dann dieses Repository, protokolliert eine Zeile `[runner:warn] could not access context source`, die die Ablehnung nennt, und startet die Sitzung mit den übrigen.

876 885 

877 Mit seinen eigenen Git-Anmeldedaten kann der Runner ein Repository überspringen, wenn der Host antwortet, dass das Repository nicht gefunden wurde, Git keine Anmeldedaten für den Host findet oder die Authentifizierung fehlschlägt.886 Mit eigenen git-Anmeldedaten kann der Runner ein Repository überspringen, wenn der Host antwortet, dass das Repository nicht gefunden wurde, git keine Anmeldedaten für den Host findet oder die Authentifizierung fehlschlägt.

878 887 

879 Mit [`--use-anthropic-git-proxy`](#use-the-anthropic-git-proxy) überspringt der Runner ein Repository, wenn der Git-Proxy es mit `access denied by the git proxy` ablehnt. Die Log-Zeile lautet dann `blocked by the git proxy`. Welche Ursachen Sie prüfen sollten, erfahren Sie im Fall `remote: access denied by the git proxy` unter [Wenn Sitzungen auf einem Runner mit dem Git-Proxy nicht starten](#when-anthropic-doesnt-serve-a-session).888 Mit [`--use-anthropic-git-proxy`](#use-the-anthropic-git-proxy) überspringt der Runner ein Repository, wenn der git-Proxy es mit `access denied by the git proxy` ablehnt. Die Logzeile lautet dann `blocked by the git proxy`. Welche Ursachen Sie prüfen sollten, finden Sie beim Fall `remote: access denied by the git proxy` in [Wenn Sitzungen auf einem Runner mit dem git-Proxy nicht starten](#when-anthropic-doesnt-serve-a-session).

880 889 

881 Ein Netzwerkfehler, ein Timeout oder ein anderer HTTP-`403` lässt den Sitzungsstart weiterhin fehlschlagen, ebenso wie eine Ablehnung für ein Repository, zu dem die Sitzung Ergebnisse pusht. Der Runner lässt eine Sitzung weiterhin fehlschlagen, wenn das Überspringen sie ohne jedes Repository zurücklassen würde.890 Ein Netzwerkfehler, ein Timeout oder ein anderer HTTP-`403` lässt den Sitzungsstart weiterhin fehlschlagen, ebenso eine Ablehnung für ein Repository, in das die Sitzung Ergebnisse pusht. Der Runner lässt eine Sitzung weiterhin fehlschlagen, der durch das Überspringen überhaupt kein Repository bliebe.

882 891 

883 Die Zugriffsprüfung läuft jedes Mal erneut, wenn die Sitzung auf einem Runner startet, daher sobald die Git-Identität des Runners Lesezugriff hat, klont der nächste Start das Repository. Vor v2.1.274 schlugen jede dieser Ablehnungen den Sitzungsstart fehl.892 Die Zugriffsprüfung läuft jedes Mal erneut, wenn die Sitzung auf einem Runner startet. Sobald die git-Identität des Runners Lesezugriff hat, klont der nächste Start das Repository. Vor v2.1.274 ließ jede dieser Ablehnungen den Sitzungsstart fehlschlagen.

884* **Das Log zeigt `could not read context source`**: Diese Zeile bedeutet, anders als `could not access context source`, dass der Git-Host wiederholt mit HTTP `429` antwortete oder ein Wrapper, den Sie als `git` installiert haben, wiederholt mit dem Exit-Code `75` endete. Der Runner hat dieses Repository übersprungen. Um es erneut zu versuchen, starten Sie eine neue Sitzung. Der Runner versucht das Repository außerdem jedes Mal erneut, wenn diese Sitzung auf einem Runner startet.893* **Das Log zeigt `could not read context source`**: Diese Zeile bedeutet, anders als `could not access context source`, dass der git-Host wiederholt mit HTTP `429` antwortete oder ein Wrapper, den Sie als `git` installiert haben, wiederholt mit `75` endete. Der Runner hat dieses Repository übersprungen. Um es erneut zu versuchen, starten Sie eine neue Sitzung. Der Runner versucht das Repository außerdem jedes Mal erneut, wenn diese Sitzung auf einem Runner startet.

885 894 

886 Ohne `checkout`-Hook kann der Runner ein Repository, das die Sitzung nur liest, überspringen, es sei denn, es steht an erster Stelle unter den Repositorys der Sitzung. Vor v2.1.311 schlug der Sitzungsstart fehl.895 Ohne `checkout`-Hook kann der Runner ein Repository überspringen, aus dem die Sitzung nur liest, sofern es nicht das erste unter den Repositorys der Sitzung ist. Vor v2.1.311 schlug der Sitzungsstart fehl.

887* **Eine Sitzung startet nicht mit `This runner couldn't read`**: Der Runner hat den Git-Host mit seinen [Git-Anmeldedaten](#configure-git) nach einem Repository gefragt und die Antwort erhalten, dass es nicht gefunden wurde. Das Repository existiert nicht, oder diese Anmeldedaten können das Repository nicht erreichen.896* **Eine Sitzung startet nicht und meldet `This runner couldn't read`**: Der Runner hat den git-Host mit seinen [git-Anmeldedaten](#configure-git) nach einem Repository gefragt und eine Nicht-gefunden-Antwort erhalten. Das Repository existiert nicht, oder diese Anmeldedaten erreichen das Repository nicht.

888 * **Wenn Sie den Runner administrieren**: Gewähren Sie seinen Git-Anmeldedaten Lesezugriff auf das Repository, und starten Sie dann eine neue Sitzung.897 * **Wenn Sie den Runner administrieren**: Geben Sie seinen git-Anmeldedaten Lesezugriff auf das Repository und starten Sie dann eine neue Sitzung.

889 * **Wenn Sie die Sitzung gestartet haben**: Wenn das Repository nicht existiert, starten Sie eine neue Sitzung mit dem richtigen Repository. Wenn der Runner das Repository nicht erreichen kann, bitten Sie den Administrator des Runners, Zugriff zu gewähren, und starten Sie dann eine neue Sitzung.898 * **Wenn Sie die Sitzung gestartet haben**: Wenn das Repository nicht existiert, starten Sie eine neue Sitzung mit dem richtigen Repository. Wenn der Runner das Repository nicht erreichen kann, bitten Sie den Administrator des Runners, Zugriff zu gewähren, und starten Sie dann eine neue Sitzung.

890* **Sitzungen brauchen Minuten zum Starten oder Fortsetzen**: Eine Ursache ist ein frischer Clone. In einer Flotte, die jeden Runner auf einer leeren Festplatte startet, ohne [`checkout`-Hook](https://code.claude.com/docs/de/self-hosted-environments-configuration#checkout), klont der Runner die Repositorys der Sitzung neu, bevor er Claude Code startet. Eine Sitzung, die auf einer leeren Festplatte fortgesetzt wird, wartet erneut auf denselben Clone.899* **Sitzungen brauchen Minuten zum Starten oder Fortsetzen**: Eine Ursache ist ein frischer Klon. In einer Flotte, die jeden Runner auf einer leeren Festplatte und ohne [`checkout`-Hook](https://code.claude.com/docs/de/self-hosted-environments-configuration#checkout) startet, klont der Runner die Repositorys der Sitzung neu, bevor er Claude Code startet. Eine Sitzung, die auf einer leeren Festplatte fortgesetzt wird, wartet erneut auf denselben Klon.

891 900 

892 Um den frischen Clone zu überspringen, stellen Sie einen [vorgewärmten Checkout](#reuse-a-pre-warmed-checkout) bereit. Wenn Sie bereits einen bereitstellen, [bestätigen Sie, dass der Runner ihn verwendet](#confirm-that-the-runner-uses-your-clone). Wo der Runner den Clone selbst erstellt und sich nach einer Sitzung beendet, senken Sie [`CLAUDE_RUNNER_FETCH_DEPTH`](https://code.claude.com/docs/de/self-hosted-environments-reference#environment-variable-only-settings) von seinem Standardwert von 50 Commits, um weniger Verlauf abzurufen.901 Um den frischen Klon zu überspringen, stellen Sie einen [vorgewärmten Checkout](#reuse-a-pre-warmed-checkout) bereit. Wenn Sie bereits einen bereitstellen, [prüfen Sie, ob der Runner ihn verwendet](#confirm-that-the-runner-uses-your-clone). Wo der Runner den Klon selbst erstellt und sich nach einer Sitzung beendet, senken Sie [`CLAUDE_RUNNER_FETCH_DEPTH`](https://code.claude.com/docs/de/self-hosted-environments-reference#environment-variable-only-settings) von seinem Standardwert von 50 Commits, um weniger Historie abzurufen.

893 902 

894 Wenn Sie einen Hook verwenden, läuft er anstelle des Clones des Runners, prüfen Sie also stattdessen, was Ihr Hook tut. Beobachten Sie die `claude_code_self_hosted_runner_session_init_duration_seconds`-[Metrik](https://code.claude.com/docs/de/self-hosted-environments-reference.md#prometheus-metrics), um zu sehen, wie lange Starts dauern.903 Wenn Sie einen Hook verwenden, läuft er anstelle des Klons des Runners. Prüfen Sie dann stattdessen, was Ihr Hook tut. Beobachten Sie die [Metrik](https://code.claude.com/docs/de/self-hosted-environments-reference.md#prometheus-metrics) `claude_code_self_hosted_runner_session_init_duration_seconds`, um zu sehen, wie lange Starts dauern.

895* **Turns schlagen mit einem 401 fehl**: Wenn ein Turn mit einem 401 oder 403 von der Anthropic API endet, ruft der Runner ein frisches [`CLAUDE_CODE_OAUTH_TOKEN`](https://code.claude.com/docs/de/self-hosted-environments-configuration#wrapper-scripts) von Anthropic ab und übergibt es der Sitzung. Der fehlgeschlagene Turn wird nicht erneut versucht. Dieses Token ist kurzlebig, und der Runner rotiert es über die stdin der Sitzung.904* **Turns schlagen mit einem 401 fehl**: Wenn ein Turn mit einem 401 oder 403 von der Anthropic API endet, ruft der Runner ein neues [`CLAUDE_CODE_OAUTH_TOKEN`](https://code.claude.com/docs/de/self-hosted-environments-configuration#wrapper-scripts) von Anthropic ab und übergibt es der Sitzung. Der fehlgeschlagene Turn wird nicht wiederholt. Dieses Token ist kurzlebig, und der Runner rotiert es über das stdin der Sitzung.

896 905 

897 Wenn ein Abruf fehlschlägt, protokolliert der Runner eine `inference_token refresh failed`-Zeile, die sagt, wann er erneut versuchen wird, und er versucht es weiterhin erneut, solange die Sitzung läuft.906 Wenn ein Abruf fehlschlägt, protokolliert der Runner eine Zeile `inference_token refresh failed`, die angibt, wann er es erneut versucht, und er versucht es so lange erneut, wie die Sitzung läuft.

898 907 

899 Wenn jeder Aufruf etwa 30 Minuten in eine Sitzung hinein fehlschlägt, hat ein Wrapper-Skript wahrscheinlich die Sitzungs-stdin unterbrochen, daher können Token-Rotationen sie nicht erreichen; siehe [Halten Sie stdin und Dateideskriptor 3 angehängt](https://code.claude.com/docs/de/self-hosted-environments-configuration.md#keep-stdin-and-file-descriptor-3-attached).908 Wenn etwa 30 Minuten nach Sitzungsbeginn jeder Aufruf fehlschlägt, hat wahrscheinlich ein Wrapper-Skript das stdin der Sitzung getrennt, sodass Token-Rotationen sie nicht erreichen; siehe [stdin und Dateideskriptor 3 verbunden lassen](https://code.claude.com/docs/de/self-hosted-environments-configuration.md#keep-stdin-and-file-descriptor-3-attached).

900 909 

901 Vor v2.1.274 stoppte der Runner das erneute Versuchen eines fehlgeschlagenen Abrufs nach einigen Versuchen und wartete auf den nächsten geplanten. Ein fehlgeschlagener Turn löste keinen Abruf aus, daher schlugen alle Turns mit einem 401 fehl, bis zum nächsten geplanten Abruf.910 Vor v2.1.274 gab der Runner einen fehlgeschlagenen Abruf nach einigen Versuchen auf und wartete auf den nächsten geplanten Abruf. Ein fehlgeschlagener Turn löste keinen Abruf aus, sodass bis zum nächsten geplanten Abruf jeder Turn mit einem 401 fehlschlug.

902* **Ein Turn schlägt in claude.ai/code mit `This model needs a newer version of Claude Code` fehl**: Die Claude Code-Version, mit der Ihre Runner Sitzungen starten, ist älter, als das Modell der Sitzung erfordert, daher [lehnt die API die Anfrage ab](https://code.claude.com/docs/de/errors.md#claude-code-does-not-support-this-model). Aktualisieren Sie die Runner auf die Version, die die Meldung verlangt, oder auf eine neuere, wie in [Version festlegen](#pin-the-version) beschrieben. Bis dahin können Benutzer in der Sitzung ein anderes Modell auswählen.911* **Ein Turn schlägt in claude.ai/code mit `This model needs a newer version of Claude Code` fehl**: Die Claude Code-Version, mit der Ihre Runner Sitzungen starten, ist älter, als das Modell der Sitzung erfordert, sodass die API [die Anfrage ablehnt](https://code.claude.com/docs/de/errors.md#claude-code-does-not-support-this-model). Aktualisieren Sie die Runner auf die in der Meldung genannte oder eine neuere Version, wie in [Version festlegen](#pin-the-version) beschrieben. Bis dahin können Benutzer in der Sitzung ein anderes Modell wählen.

903* **Pod wird Mid-Drain getötet**: Erhöhen Sie `terminationGracePeriodSeconds` auf mindestens den Wert, den der Runner beim Start protokolliert. Siehe [Shutdown-Timing](#shutdown-timing).912* **Der Pod wird mitten im Drain beendet**: Erhöhen Sie `terminationGracePeriodSeconds` mindestens auf den Wert, den der Runner beim Start protokolliert. Siehe [Timing beim Herunterfahren](#shutdown-timing).

913* **Der Runner protokolliert eine `[runner:log]`-Zeile, die mit `was paused or too slow` endet**: Der Runner lief weiter und muss nicht neu gestartet werden. Bis der in der Zeile genannte stdout- oder stderr-Stream wieder gelesen wurde, verwarf der Runner alle Zeilen dieses Streams außer den neuesten 256 KiB. Wenn Sie [`--log-file`](https://code.claude.com/docs/de/self-hosted-environments-reference#runner-cli-flags) übergeben haben, finden Sie die verworfenen Zeilen dort.

914* **Der Runner protokolliert `Nobody can read this process's stdout anymore`**: Was auch immer das stdout des Runners gelesen hat, ist nicht mehr vorhanden. Der Runner schreibt daher für den Rest seiner Laufzeit nicht mehr dorthin und läuft weiter. Solange stderr noch offen ist, gehen diese Zeile und die späteren Statuszeilen des Runners, einschließlich `[runner:fatal]`-Zeilen, an stderr. Lesen Sie sie also dort.

904 915 

905Sobald das Logging initialisiert ist, schreibt der Runner sein Lebenszyklus-Log, einschließlich `[runner:fatal]`-Zeilen, nach stdout und Debug-Ausgabe nach stderr, alles als Plain-Text-Zeilen anstatt JSON. Die Fehler beim Basis-Verzeichnis, die in den Fehlerbehebungs-Einträgen oben beschrieben sind, werden vor diesem Punkt nach stderr ausgegeben. Erfassen Sie beide Streams mit `--log-file`, was auch `self-hosted-runner doctor` ermöglicht, sie mitzulesen, oder mit der Log-Sammlung Ihrer Plattform.916Sobald das Logging initialisiert ist, schreibt der Runner sein Lebenszyklus-Log, einschließlich `[runner:fatal]`-Zeilen, auf stdout und Debug-Ausgaben auf stderr, jeweils als Klartextzeilen statt als JSON. Die in den obigen Einträgen zur Fehlerbehebung beschriebenen Fehler beim Basisverzeichnis werden vor diesem Zeitpunkt auf stderr ausgegeben. Erfassen Sie beide Streams mit `--log-file`, womit `self-hosted-runner doctor` sie auch verfolgen kann, oder mit der Log-Erfassung Ihrer Plattform.

906 917 

907Jeder Sitzungs-Kind-Prozess schreibt ein separates Debug-Log. Bei Fehler bewahrt der Runner das Log's Tail neben der Sitzung in claude.ai/code. Sofern Sie den Runner nicht mit [`--remove-session-state`](https://code.claude.com/docs/de/self-hosted-environments-reference#runner-cli-flags) gestartet haben, behält er auch das Log einer fehlgeschlagenen Sitzung auf der Festplatte und druckt seinen Pfad im Runner-Log.918Der Kindprozess jeder Sitzung schreibt ein eigenes Debug-Log. Bei einem Fehler zeigt der Runner das Ende dieses Logs neben der Sitzung in claude.ai/code an. Sofern Sie den Runner nicht mit [`--remove-session-state`](https://code.claude.com/docs/de/self-hosted-environments-reference#runner-cli-flags) gestartet haben, behält er außerdem das Log einer fehlgeschlagenen Sitzung auf der Festplatte und gibt dessen Pfad im Runner-Log aus.

908 919 

909### Wenn der Runner beendet wird920### Wenn sich der Runner beendet

910 921 

911Starten Sie einen [On-Demand-Runner](https://code.claude.com/docs/de/self-hosted-environments-configuration.md#on-demand-runners) nicht neu, da seine Arbeitsorder einmalig ist. Ein Runner, der sich direkt nach dem Start beendet, benötigt eine andere Behandlung als einer, der sich aus einem anderen Grund beendet.922Starten Sie einen [On-Demand-Runner](https://code.claude.com/docs/de/self-hosted-environments-configuration.md#on-demand-runners) nicht neu, da sein Arbeitsauftrag nur einmal verwendbar ist. Ein Runner, der sich direkt nach dem Start beendet, erfordert eine andere Behandlung als einer, der sich aus einem anderen Grund beendet.

912 923 

913* **Ein normaler Exit**: Der Runner hat seine Sitzungen beendet und drainiert, seine Ruhezeit erreicht oder wurde angewiesen zu stoppen. Starten Sie ihn neu, damit die Umgebung wieder Kapazität hat. [Runner-Lebenszyklus](https://code.claude.com/docs/de/self-hosted-environments#runner-lifecycle) beschreibt diese Exits.924* **Ein normales Beenden**: Der Runner hat seine Sitzungen abgeschlossen und ist ausgelaufen, hat seine Ruhestandszeit erreicht oder wurde zum Anhalten aufgefordert. Starten Sie ihn neu, damit die Umgebung wieder Kapazität hat. [Runner-Lebenszyklus](https://code.claude.com/docs/de/self-hosted-environments#runner-lifecycle) beschreibt diese Arten des Beendens.

914* **Ein fehlgeschlagener Start**: Der Runner kann nicht mit der Konfiguration oder dem Host starten, der ihm gegeben wurde, daher beendet er sich Sekunden nach dem Start, und er beendet sich jedes Mal auf die gleiche Weise, wenn Sie ihn neu starten. Ein schnellerer Neustart hilft nicht. Jemand muss seine Ausgabe lesen und die Ursache beheben.925* **Ein fehlgeschlagener Start**: Der Runner kann mit der ihm gegebenen Konfiguration oder dem Host nicht starten. Er beendet sich daher Sekunden nach dem Start, und zwar jedes Mal auf dieselbe Weise, wenn Sie ihn neu starten. Ihn schneller neu zu starten hilft nicht. Jemand muss seine Ausgabe lesen und die Ursache beheben.

915* **Verlorener Kontakt**: Ein Runner, der Anthropic länger als seinen [Lease](https://code.claude.com/docs/de/self-hosted-environments#session-lifecycle) nicht erreichen kann, zum Beispiel während sein Host schläft, kann aus der Umgebung entfernt werden. Wenn sich ein entfernter Runner wieder verbindet, beendet er sich. Sein Log kann eine `[runner:fatal]`-Zeile zeigen, die `runner record gone server-side` oder, nach einem längeren Ausfall, [`poll auth failed`](https://code.claude.com/docs/de/self-hosted-environments-quickstart#set-up-an-environment-and-runner) enthält. Der Runner registriert sich nicht von selbst erneut, starten Sie ihn also neu.926* **Verlorener Kontakt**: Ein Runner, der Anthropic länger als seine [Lease](https://code.claude.com/docs/de/self-hosted-environments#session-lifecycle) nicht erreichen kann, zum Beispiel während sein Host im Ruhezustand ist, kann aus der Umgebung entfernt werden. Wenn sich ein entfernter Runner wieder verbindet, beendet er sich. Sein Log kann eine `[runner:fatal]`-Zeile zeigen, die `runner record gone server-side` oder nach einem längeren Ausfall [`poll auth failed`](https://code.claude.com/docs/de/self-hosted-environments-quickstart#set-up-an-environment-and-runner) enthält. Der Runner registriert sich nicht von selbst erneut, starten Sie ihn also neu.

916 927 

917Konfigurieren Sie Ihren Supervisor, um den Runner jedes Mal neu zu starten, wenn er beendet wird, länger zwischen Neustarts zu warten, wenn der Runner sich weiterhin direkt nach dem Start beendet, und jemandem zu sagen, wenn das weiterhin passiert.928Konfigurieren Sie Ihren Supervisor so, dass er den Runner bei jedem Beenden neu startet, zwischen Neustarts länger wartet, wenn sich der Runner wiederholt direkt nach dem Start beendet, und jemanden benachrichtigt, wenn das wiederholt geschieht.

918 929 

919Für die Produktion sollte Ihr Supervisor den Runner auf einer frischen Festplatte neu starten, in einem neuen Container oder einer neuen VM, wie es [Ihr Deployment absichern](#harden-your-deployment) empfiehlt.930Lassen Sie Ihren Supervisor den Runner in der Produktion auf einer frischen Festplatte in einem neuen Container oder einer neuen VM neu starten, wie es [Ihr Deployment härten](#harden-your-deployment) empfiehlt.

920 931 

921#### Erkennen Sie einen fehlgeschlagenen Start932#### Einen fehlgeschlagenen Start erkennen

922 933 

923Wenn der Runner nicht starten kann, druckt er eine Zeile, die sagt warum, und dann beendet er sich. Für die meisten Ursachen enthält die Zeile `[runner:fatal]`. Für einige Ursachen beginnt die Zeile stattdessen mit `error:`, einschließlich wenn der Runner seine Flags nicht parsen kann, das Umgebungsgeheimnis nicht lesen kann oder das Basis-Verzeichnis nicht erstellen oder schreiben kann. Die nächste Zeile zeigt dann auf `--help`.934Wenn der Runner nicht starten kann, gibt er eine Zeile aus, die den Grund nennt, und beendet sich dann. Bei den meisten Ursachen enthält die Zeile `[runner:fatal]`. Bei einigen Ursachen beginnt die Zeile stattdessen mit `error:`, unter anderem wenn der Runner seine Flags nicht parsen, das Umgebungs-Secret nicht lesen oder das Basisverzeichnis nicht anlegen oder nicht darin schreiben kann. Die nächste Zeile verweist dann auf `--help`.

924 935 

925Die meisten Log-Zeilen beginnen mit einem Zeitstempel und `[self-hosted-runner]`, das die Beispiel unten auslässt. Zum Beispiel druckt ein Runner, der mit dem Anthropic Git-Proxy gestartet wurde und eine Kapazität über eins hat, eine Zeile wie diese:936Die meisten Logzeilen beginnen mit einem Zeitstempel und `[self-hosted-runner]`, was im folgenden Beispiel weggelassen ist. Ein Runner, der zum Beispiel mit dem Anthropic git-Proxy und einer Kapazität über eins gestartet wurde, gibt eine Zeile wie diese aus:

926 937 

927```text theme={null}938```text theme={null}

928[runner:fatal] --use-anthropic-git-proxy requires --capacity 1 (the proxy URL is per-session and linked worktrees share origin). Omit --use-anthropic-git-proxy or set --capacity 1.939[runner:fatal] --use-anthropic-git-proxy requires --capacity 1 (the proxy URL is per-session and linked worktrees share origin). Omit --use-anthropic-git-proxy or set --capacity 1.

929```940```

930 941 

931Suchen Sie nach der Zeile in der Standard-Ausgabe und Standard-Fehler des Runners, in Ihren Plattform-Container-Logs oder in der Datei, die Sie mit [`--log-file`](https://code.claude.com/docs/de/self-hosted-environments-reference#runner-cli-flags) setzen. Der Runner druckt eine `error:`-Zeile, bevor er die Log-Datei öffnet, daher suchen Sie nach ihr im Terminal oder Ihren Container-Logs, wie [Fehlerbehebung](#troubleshooting) notiert.942Suchen Sie die Zeile in der Standardausgabe und der Standardfehlerausgabe des Runners, in den Container-Logs Ihrer Plattform oder in der Datei, die Sie mit [`--log-file`](https://code.claude.com/docs/de/self-hosted-environments-reference#runner-cli-flags) festgelegt haben. Der Runner gibt eine `error:`-Zeile aus, bevor er die Logdatei öffnet. Suchen Sie sie daher im Terminal oder in Ihren Container-Logs, wie unter [Fehlerbehebung](#troubleshooting) angemerkt.

932 943 

933Diese helfen auch, wenn Sie einen fehlgeschlagenen Start lesen:944Diese Punkte helfen ebenfalls beim Lesen eines fehlgeschlagenen Starts:

934 945 

935* **Keine Zeile überhaupt**: Ein Runner, den der Host tötet, druckt keine. Wenn die Ausgabe mit keiner `[runner:fatal]`-Zeile und keiner `error:`-Zeile endet, überprüfen Sie, ob der Host oder Ihr Orchestrator den Prozess gestoppt hat, zum Beispiel für das Überschreiten eines Speicherlimits.946* **Gar keine Zeile**: Ein Runner, den der Host beendet, gibt keine der beiden aus. Endet die Ausgabe ohne `[runner:fatal]`-Zeile und ohne `error:`-Zeile, prüfen Sie, ob der Host oder Ihr Orchestrator den Prozess gestoppt hat, zum Beispiel wegen Überschreitung eines Speicherlimits.

936* **Der Exit-Code**: Der Runner setzt keinen Exit-Code für Fehler beiseite, die bei jedem Start wiederholt werden. Er beendet sich mit dem gleichen Code für einen Konfigurationsfehler, wie eine nicht unterstützte Kombination von Flags, und für einen Fehler, der sich selbst löschen kann, wie die API, die durch die eigenen Wiederholungen des Runners unerreichbar bleibt. Basieren Sie die Entscheidung, länger zu warten, darauf, wie schnell der Runner beendet wurde, und lesen Sie die Ausgabe des Runners, um zu erfahren warum.947* **Der Exit-Code**: Der Runner reserviert keinen eigenen Exit-Code für Fehler, die sich bei jedem Start wiederholen. Er beendet sich mit demselben Code bei einem Konfigurationsfehler, etwa einer nicht unterstützten Kombination von Flags, und bei einem Fehler, der sich von selbst beheben kann, etwa wenn die API trotz der eigenen Wiederholungsversuche des Runners nicht erreichbar bleibt. Entscheiden Sie anhand dessen, wie schnell sich der Runner beendet hat, ob Sie länger warten, und lesen Sie die Ausgabe des Runners, um den Grund zu erfahren.

937* **Eine Umgebung, die gesund aussieht**: Einige Startup-Schritte laufen, nachdem sich der Runner bei Ihrer Umgebung registriert hat, wie [`--configure-git`](#let-the-runner-configure-git) und die Credential-Einrichtung des Anthropic Git-Proxy. Wenn einer dieser Schritte fehlschlägt, kann die Umgebung diesen Runner für ein paar Minuten nach dem Prozessende weiterhin auflisten, und die **Cloud-Umgebungen**-Seite kann **Gesund** lesen, während kein Runner Arbeit aufnimmt. Wenn Sitzungen in einer Umgebung, die gesund aussieht, in der Warteschlange bleiben, überprüfen Sie, ob Ihr Supervisor den Runner neu startet.948* **Eine Umgebung, die gesund aussieht**: Einige Startschritte laufen, nachdem sich der Runner bei Ihrer Umgebung registriert hat, etwa [`--configure-git`](#let-the-runner-configure-git) und die Einrichtung der Anmeldedaten für den Anthropic git-Proxy. Schlägt einer dieser Schritte fehl, kann die Umgebung diesen Runner noch einige Minuten nach dem Beenden des Prozesses auflisten, und die Seite **Cloud environments** kann **Healthy** anzeigen, obwohl kein Runner Arbeit übernimmt. Wenn Sitzungen in einer Umgebung, die gesund aussieht, in der Warteschlange bleiben, prüfen Sie, ob Ihr Supervisor den Runner wiederholt neu startet.

938 949 

939#### Neustart mit einer wachsenden Wartezeit950#### Mit wachsender Wartezeit neu starten

940 951 

941Wie Sie eine wachsende Wartezeit bekommen, hängt von Ihrem Supervisor ab.952Wie Sie eine wachsende Wartezeit erreichen, hängt von Ihrem Supervisor ab.

942 953 

943* **Kubernetes**: Die [Deployment](#kubernetes) auf dieser Seite benötigt keine Änderung. Nachdem ein Container beendet wird, wartet das kubelet standardmäßig, bevor es den Container neu startet, und die Wartezeit wächst bei jedem Neustart bis zu einer Obergrenze. Die Wartezeit startet von vorne, sobald der Container eine Weile ohne Beendigung läuft.954* **Kubernetes**: Das [Deployment](#kubernetes) auf dieser Seite muss nicht geändert werden. Nachdem sich ein Container beendet hat, wartet das Kubelet standardmäßig, bevor es den Container neu startet, und die Wartezeit wächst mit jedem Neustart bis zu einer Obergrenze. Die Wartezeit beginnt von vorn, sobald der Container eine Weile gelaufen ist, ohne sich zu beenden.

944 955 

945 Das kubelet wendet die gleiche Wartezeit nach einem normalen Exit an, wenn der Container nur kurz lief. Ein Runner, der oft drainiert, kann daher auch den `CrashLoopBackOff`-Status zeigen, daher lesen Sie die Ausgabe, bevor Sie schließen, dass der Runner nicht starten kann. Der Befehl unten liest die letzte Lauf-Ausgabe von einem Pod der Deployment:956 Das Kubelet wendet dieselbe Wartezeit nach einem normalen Beenden an, wenn der Container nur kurz gelaufen ist. Ein Runner, der häufig ausläuft, kann daher ebenfalls den Status `CrashLoopBackOff` zeigen. Lesen Sie also die Ausgabe, bevor Sie schließen, dass der Runner nicht starten kann. Der folgende Befehl liest die Ausgabe des letzten Laufs aus einem Pod des Deployments:

946 957 

947 ```bash theme={null}958 ```bash theme={null}

948 kubectl logs --previous -n claude-runners deploy/claude-runner959 kubectl logs --previous -n claude-runners deploy/claude-runner

949 ```960 ```

950 961 

951 Wenn der letzte Lauf ein fehlgeschlagener Start war, ist die `[runner:fatal]`- oder `error:`-Zeile unter den letzten Zeilen der Ausgabe. Um die letzte Lauf eines anderen Pods zu lesen, benennen Sie diesen Pod anstelle von `deploy/claude-runner`.962 War der letzte Lauf ein fehlgeschlagener Start, steht die `[runner:fatal]`- oder `error:`-Zeile unter den letzten Zeilen der Ausgabe. Um den letzten Lauf eines anderen Pods zu lesen, nennen Sie diesen Pod anstelle von `deploy/claude-runner`.

952* **Docker und Docker Compose**: Die [Compose-Rezept](#docker-compose) auf dieser Seite benötigt keine Änderung. Mit `restart: always` wartet Docker länger vor jedem Neustart eines Containers, der weiterhin beendet wird, bis zu einer Obergrenze. Ersetzen Sie `<container>` mit dem Namen des Containers im Befehl unten, der liest, wie oft Docker den Container neu gestartet hat:963* **Docker und Docker Compose**: Das [Compose-Rezept](#docker-compose) auf dieser Seite muss nicht geändert werden. Mit `restart: always` wartet Docker vor jedem Neustart eines Containers, der sich wiederholt beendet, länger, bis zu einer Obergrenze. Ersetzen Sie `<container>` im folgenden Befehl durch den Namen des Containers. Der Befehl liest aus, wie oft Docker den Container neu gestartet hat:

953 964 

954 ```bash theme={null}965 ```bash theme={null}

955 docker inspect --format '{{.RestartCount}}' <container>966 docker inspect --format '{{.RestartCount}}' <container>

956 ```967 ```

957 968 

958 Der Befehl druckt eine Zahl. Eine Zahl, die weiterhin klettert, bedeutet Docker startet den Runner weiterhin neu.969 Der Befehl gibt eine Zahl aus. Eine Zahl, die immer weiter steigt, bedeutet, dass Docker den Runner wiederholt neu startet.

959* **Eine systemd-Unit**: Standardmäßig wartet systemd die gleiche `RestartSec` vor jedem Neustart und verlängert sie nicht, daher startet eine Unit mit `Restart=always` einen Runner, der nicht starten kann, in diesem gleichen Intervall jedes Mal neu. Wenn die Starts schnell genug kommen, um die Start-Rate-Grenze der Unit zu erreichen, fünf Starts in 10 Sekunden standardmäßig, stoppt systemd das Neustarten der Unit. Die Unit bleibt gestoppt, bis jemand sie wieder startet, was systemd erlaubt, sobald das Intervall der Rate-Grenze vergangen ist oder nach `systemctl reset-failed`. Weil `RestartSec` auf jeden Neustart angewendet wird, verzögert ein längerer Wert auch den Neustart nach einem normalen Exit. Wählen Sie einen Wert, der die beiden ausgleicht, und warnen Sie bei der Neustart-Zählung der Unit.970* **Eine systemd-Unit**: Standardmäßig wartet systemd vor jedem Neustart dieselbe `RestartSec` und verlängert sie nicht, sodass eine Unit mit `Restart=always` einen Runner, der nicht starten kann, jedes Mal im selben Intervall neu startet. Wenn die Starts schnell genug aufeinander folgen, um das Start-Rate-Limit der Unit zu erreichen, standardmäßig fünf Starts in 10 Sekunden, hört systemd auf, die Unit neu zu starten. Die Unit bleibt gestoppt, bis jemand sie erneut startet, was systemd erlaubt, sobald das Intervall des Rate-Limits verstrichen ist, oder nach `systemctl reset-failed`. Da `RestartSec` für jeden Neustart gilt, verzögert ein längerer Wert auch den Neustart nach einem normalen Beenden. Wählen Sie einen Wert, der beides ausbalanciert, und richten Sie eine Warnung auf den Neustartzähler der Unit ein.

960* **Eine Shell-Schleife oder Ihr eigener Supervisor**: Wenden Sie die gleiche Regel selbst an. Beginnen Sie mit einer Wartezeit von fünf Sekunden. Nach jedem Lauf, der innerhalb einer Minute endete, verdoppeln Sie die Wartezeit für den nächsten Neustart, bis zu fünf Minuten. Nach einem Lauf, der eine Minute oder länger dauerte, gehen Sie zurück zu fünf Sekunden.971* **Eine Shell-Schleife oder Ihr eigener Supervisor**: Wenden Sie dieselbe Regel selbst an. Beginnen Sie mit einer Wartezeit von fünf Sekunden. Verdoppeln Sie nach jedem Lauf, der innerhalb einer Minute endete, die Wartezeit für den nächsten Neustart, bis zu fünf Minuten. Kehren Sie nach einem Lauf, der eine Minute oder länger dauerte, zu fünf Sekunden zurück.

961 972 

962#### Überprüfen Sie, warum der Runner weiterhin beendet wird973#### Prüfen, warum sich der Runner wiederholt beendet

963 974 

964Wenn der Runner mehrmals hintereinander direkt nach dem Start beendet wurde, stoppen Sie und überprüfen Sie diese, bevor Sie ihn erneut neu starten.975Wenn sich der Runner mehrmals hintereinander direkt nach dem Start beendet hat, halten Sie an und prüfen Sie Folgendes, bevor Sie ihn erneut starten.

965 976 

966* **Die letzte `[runner:fatal]`- oder `error:`-Zeile**: Sie sagt, warum der Runner gestoppt wurde. [Fehlerbehebung](#troubleshooting) listet die häufigen Ursachen auf.977* **Die letzte `[runner:fatal]`- oder `error:`-Zeile**: Sie nennt den Grund, warum der Runner angehalten hat. [Fehlerbehebung](#troubleshooting) listet die häufigen Ursachen auf.

967* **Die Kombination von Flags**: Der [Anthropic Git-Proxy](#use-the-anthropic-git-proxy) erfordert `--capacity 1`. Die Rezepte auf dieser Seite verwenden eine höhere Kapazität, daher senken Sie sie, wenn Sie den Proxy zu einem von ihnen hinzufügen.978* **Die Kombination von Flags**: Der [Anthropic git-Proxy](#use-the-anthropic-git-proxy) erfordert `--capacity 1`. Die Rezepte auf dieser Seite verwenden eine höhere Kapazität. Senken Sie sie also, wenn Sie einem davon den Proxy hinzufügen.

968* **Was die Umgebung des Service erreichen kann**: Wenn der Runner von Hand startet und unter Ihrem Supervisor fehlschlägt, vergleichen Sie den Benutzer, das Home-Verzeichnis, den `PATH` und das Speicherlimit. `--configure-git` und der Anthropic Git-Proxy benötigen Git auf dem `PATH` und ein beschreibbares `~/.gitconfig`.979* **Was die Umgebung des Dienstes erreichen kann**: Wenn der Runner von Hand startet, unter Ihrem Supervisor aber fehlschlägt, vergleichen Sie den Benutzer, das Home-Verzeichnis, den `PATH` und das Speicherlimit. `--configure-git` und der Anthropic git-Proxy benötigen git im `PATH` und eine beschreibbare `~/.gitconfig`.

969* **Das Umgebungsgeheimnis**: Wenn Sie das Geheimnis widerrufen oder falsch eingegeben haben, druckt der Runner eine Zeile, die `RegisterRunner auth failed` enthält.980* **Das Umgebungs-Secret**: Wenn Sie das Secret widerrufen oder falsch eingegeben haben, gibt der Runner eine Zeile aus, die `RegisterRunner auth failed` enthält.

970* **Die Aktivitäts-Registerkarte der Umgebung**: Öffnen Sie die Umgebung und wählen Sie **Aktivität**. Wenn neue Runner dort weiterhin erscheinen und keiner Arbeit aufnimmt, startet Ihr Supervisor den Runner neu.981* **Der Tab „Activity“ der Umgebung**: Öffnen Sie die Umgebung und wählen Sie **Activity**. Wenn dort immer wieder neue Runner erscheinen und keiner Arbeit übernimmt, startet Ihr Supervisor den Runner wiederholt neu.

971 982 

972Für geführte Diagnose auf dem Runner-Host führen Sie den [Doctor-Subcommand](#troubleshooting) aus.983Für eine geführte Diagnose auf dem Runner-Host führen Sie den [Unterbefehl doctor](#troubleshooting) aus.

973 984 

974### Eine Sitzung wird aufgenommen, aber Claude beantwortet ihre erste Nachricht nie985### Eine Sitzung wird übernommen, aber Claude beantwortet ihre erste Nachricht nie

975 986 

976Wenn ein Runner eine Sitzung aufnimmt, Claude aber nie auf die erste Nachricht antwortet, und Ihre Runner `api.anthropic.com` über einen Proxy erreichen, kann der Proxy die Ursache sein. Anthropic sendet einer Sitzung ihre Nachrichten über eine einzige Streaming-Antwort, die offen bleibt. Wenn Ihr Proxy sie puffert oder beendet, bevor er etwas weitergibt, kommt die erste Nachricht nie an. Andere Anfragen der Sitzung sind weiterhin erfolgreich.987Wenn ein Runner eine Sitzung übernimmt, Claude die erste Nachricht aber nie beantwortet, und Ihre Runner `api.anthropic.com` über einen Proxy erreichen, kann der Proxy die Ursache sein. Anthropic sendet einer Sitzung ihre Nachrichten über eine einzige Streaming-Antwort, die offen bleibt. Wenn Ihr Proxy sie puffert oder beendet, bevor er etwas weiterreicht, kommt die erste Nachricht nie an. Andere Anfragen der Sitzung gelingen trotzdem.

977 988 

978Um das zu beheben, ändern Sie, wie der Proxy diese Anfrage behandelt:989Um das zu beheben, ändern Sie, wie der Proxy diese Anfrage behandelt:

979 990 


981GET https://api.anthropic.com/v1/code/sessions/<session-id>/worker/events/stream992GET https://api.anthropic.com/v1/code/sessions/<session-id>/worker/events/stream

982```993```

983 994 

984* **Puffern Sie die Antwort nicht**: Reichen Sie sie so durch, wie sie eintrifft. Ihr Content-Type ist `text/event-stream`.995* **Die Antwort nicht puffern**: Reichen Sie sie beim Eintreffen unmittelbar durch. Ihr Content-Type ist `text/event-stream`.

985* **Lassen Sie die Antwort offen**: Sie kann bis zu einer Stunde offen bleiben. Wenn der Proxy einen Leerlauf-Timeout hat, halten Sie ihn deutlich über 15 Sekunden, da Anthropic standardmäßig mindestens so oft ein Keep-alive sendet.996* **Die Antwort offen bleiben lassen**: Sie kann bis zu einer Stunde offen bleiben. Wenn der Proxy einen Leerlauf-Timeout hat, halten Sie ihn deutlich über 15 Sekunden, denn Anthropic sendet standardmäßig mindestens so oft ein Keep-alive.

986 997 

987Starten Sie dann eine neue Sitzung und prüfen Sie, ob Claude antwortet. Das Erhöhen der Timeouts des Runners hilft nicht: Sie warten nur länger, bevor der Runner die Sitzung stoppt.998Starten Sie dann eine neue Sitzung und prüfen Sie, ob Claude antwortet. Die Timeouts des Runners zu erhöhen hilft nicht: Sie warten dadurch nur länger, bevor der Runner die Sitzung stoppt.

988 999 

989#### Bestätigen Sie die Ursache im Log des Runners1000#### Die Ursache im Log des Runners bestätigen

990 1001 

991Diese Schritte gelten für Runner mit Claude Code v2.1.287 oder neuer auf der Standardstufe `--log-level info`. Ältere Runner protokollieren diese Zeilen später oder gar nicht.1002Diese Schritte gelten für Runner ab Claude Code v2.1.287 mit dem Standard `--log-level info`. Ältere Runner protokollieren diese Zeilen später oder gar nicht.

992 1003 

9931. Warten Sie, bis [`--startup-timeout-min`](https://code.claude.com/docs/de/self-hosted-environments-reference#runner-cli-flags) abgelaufen ist, standardmäßig 15 Minuten. Der Runner stoppt dann die Sitzung und protokolliert eine Zeile, die `no child output for` enthält und mit `— releasing` endet.10041. Warten Sie, bis [`--startup-timeout-min`](https://code.claude.com/docs/de/self-hosted-environments-reference#runner-cli-flags) verstrichen ist, standardmäßig 15 Minuten. Der Runner stoppt dann die Sitzung und protokolliert eine Zeile, die `no child output for` enthält und mit `— releasing` endet.

9942. Durchsuchen Sie das Log des Runners nach `SDKStartup: SSE`. Diese Zeilen folgen auf eine `finished: interrupted`-Zeile, einige Zeilen nach der aus Schritt 1. Die meisten haben keinen Zeitstempel, daher zeigt ein Log-Collector sie möglicherweise an anderer Stelle an.10052. Durchsuchen Sie das Log des Runners nach `SDKStartup: SSE`. Diese Zeilen folgen auf eine `finished: interrupted`-Zeile, einige Zeilen nach der aus Schritt 1. Die meisten haben keinen Zeitstempel, sodass ein Log-Collector sie möglicherweise an anderer Stelle anzeigt.

9953. Suchen Sie die Zeile in dieser Tabelle:10063. Suchen Sie die Zeile in dieser Tabelle:

996 1007 

997| Log-Zeile enthält | Vorgehen |1008| Logzeile enthält | Was zu tun ist |

998| :- | :- |1009| :- | :- |

999| `SSE connect failed (no response in 30s)` oder `SSE liveness timeout` | Prüfen Sie, ob der Proxy die Anfrage weiterleitet, die Header und Daten der Antwort so durchreicht, wie sie eintreffen, und die Verbindung nicht trennt |1010| `SSE connect failed (no response in 30s)` oder `SSE liveness timeout` | Prüfen Sie, ob der Proxy die Anfrage weiterleitet, die Header und Daten der Antwort beim Eintreffen unmittelbar durchreicht und die Verbindung nicht abbricht |

1000| `SSE connect failed (HTTP` und ein Statuscode | Prüfen Sie das eigene Log des Proxys. Wenn der Proxy die Anfrage selbst beantwortet hat, lassen Sie die Anfrage durch ihn hindurch. |1011| `SSE connect failed (HTTP` und ein Statuscode | Prüfen Sie das eigene Log des Proxys. Hat der Proxy die Anfrage selbst beantwortet, lassen Sie die Anfrage durch ihn hindurch. |

1001| `SSE connect failed (` und beliebiger anderer Text | Der Text in den Klammern ist der Fehler. Suchen Sie dieselbe Verbindung im eigenen Log des Proxys. |1012| `SSE connect failed (` und beliebiger anderer Text | Der Text in den Klammern ist der Fehler. Suchen Sie dieselbe Verbindung im eigenen Log des Proxys. |

1002| `SSE stream ended by server`, immer wieder | Prüfen Sie das Zeitlimit des Proxys für langlebige Antworten. Eine einzelne solche Zeile ist normal. |1013| `SSE stream ended by server`, immer wieder | Prüfen Sie das Zeitlimit des Proxys für langlebige Antworten. Eine einzelne solche Zeile ist normal. |

1003| `SSE reconnected after` | Suchen Sie nach einer der anderen Zeilen danach. Diese Zeile bedeutet nicht, dass etwas die Sitzung erreicht hat. |1014| `SSE reconnected after` | Suchen Sie danach nach einer der anderen Zeilen. Diese Zeile bedeutet nicht, dass etwas die Sitzung erreicht hat. |

1004 1015 

1005Wenn das Log keine dieser Zeilen enthält oder das Log des Proxys nichts Auffälliges zeigt, [melden Sie ein Problem](#report-an-issue).1016Wenn das Log keine dieser Zeilen enthält oder das Log des Proxys nichts Auffälliges zeigt, [melden Sie ein Problem](#report-an-issue).

1006 1017 

1007#### Verhindern Sie, dass die Sitzung es erneut versucht1018#### Verhindern, dass die Sitzung es erneut versucht

1008 1019 

1009Die Sitzung hält die Nachricht ausstehend, und ein Runner, der den Owner der Sitzung bedienen kann, nimmt die Sitzung erneut auf. Bis Sie den Proxy ändern, wartet die Sitzung jedes Mal auf die gleiche Weise. Um das zu beenden, archivieren Sie die Sitzung in claude.ai/code.1020Die Sitzung hält die Nachricht weiter ausstehend, und ein Runner, der den Besitzer der Sitzung bedienen kann, übernimmt die Sitzung erneut. Bis Sie den Proxy ändern, wartet die Sitzung jedes Mal auf dieselbe Weise. Um das zu beenden, archivieren Sie die Sitzung in claude.ai/code.

1010 1021 

1011## Was kommt als nächstes1022## Was kommt als nächstes

1012 1023 

Details

29 29 

30* Einen Linux- oder macOS-Host oder Container mit ausgehendem HTTPS zu `api.anthropic.com`, zu `claude.ai` und den Download-Hosts, auf die es für den Installationsschritt unten umleitet, und zu Ihrem Git-Host für den Klon; die [Netzwerkanforderungstabelle](https://code.claude.com/docs/de/self-hosted-environments-deploy.md#network-requirements) hat die vollständige Liste. Windows wird nicht als Runner-Host unterstützt; führen Sie den Runner stattdessen in einem Linux-Container aus. Entwickler-Workstations sind nicht betroffen, da Sitzungen von claude.ai in einem Browser aus gestartet werden.30* Einen Linux- oder macOS-Host oder Container mit ausgehendem HTTPS zu `api.anthropic.com`, zu `claude.ai` und den Download-Hosts, auf die es für den Installationsschritt unten umleitet, und zu Ihrem Git-Host für den Klon; die [Netzwerkanforderungstabelle](https://code.claude.com/docs/de/self-hosted-environments-deploy.md#network-requirements) hat die vollständige Liste. Windows wird nicht als Runner-Host unterstützt; führen Sie den Runner stattdessen in einem Linux-Container aus. Entwickler-Workstations sind nicht betroffen, da Sitzungen von claude.ai in einem Browser aus gestartet werden.

31* Ein Repository für die Testsitzung: ein öffentliches oder eines, das dieser Host bereits über seine HTTPS-URL klonen kann, ohne nach Anmeldedaten gefragt zu werden. Ein SSH-Schlüssel allein reicht nicht aus, da der Runner die `https://`-URL des Repositorys klont. Um stattdessen über SSH zu klonen, siehe [Git-URLs für private Netzwerke umschreiben](https://code.claude.com/docs/de/self-hosted-environments-deploy.md#rewrite-git-urls-for-private-networks).31* Ein Repository für die Testsitzung: ein öffentliches oder eines, das dieser Host bereits über seine HTTPS-URL klonen kann, ohne nach Anmeldedaten gefragt zu werden. Ein SSH-Schlüssel allein reicht nicht aus, da der Runner die `https://`-URL des Repositorys klont. Um stattdessen über SSH zu klonen, siehe [Git-URLs für private Netzwerke umschreiben](https://code.claude.com/docs/de/self-hosted-environments-deploy.md#rewrite-git-urls-for-private-networks).

32* Eine Uhr, die mit der Realzeit synchronisiert ist, beispielsweise mit NTP. Die Authentifizierung schlägt fehl, wenn die Uhr um mehr als fünf Minuten abweicht; siehe [Troubleshooting](https://code.claude.com/docs/de/self-hosted-environments-deploy.md#troubleshooting).32* Eine Uhr, die mit der Realzeit synchronisiert ist, beispielsweise mit NTP.

33 33 

34### Software auf dem Runner-Host34### Software auf dem Runner-Host

35 35 

Details

95| `--hook-timeout <sec>` | `60` | Beenden Sie den Prozessbaum des Hooks nach dieser vielen Sekunden. Das Timeout plus seine 5-Sekunden-Kill-Gnadenfrist müssen unter `--expected-spawn-seconds` bleiben; der Orchestrator erzwingt dies beim Start. |95| `--hook-timeout <sec>` | `60` | Beenden Sie den Prozessbaum des Hooks nach dieser vielen Sekunden. Das Timeout plus seine 5-Sekunden-Kill-Gnadenfrist müssen unter `--expected-spawn-seconds` bleiben; der Orchestrator erzwingt dies beim Start. |

96| `--expected-spawn-seconds <sec>` | `120` | Erwartete p99-Zeit vom Empfang einer Spawn-Anfrage durch den Orchestrator bis zur Registrierung des Runners, einschließlich einer etwaigen Wartezeit auf Kapazität auf Ihrer Plattform. Der Server erzwingt einen Bereich von 10 bis 3600. Wird bei jeder Abfrage als Server-seitige Lease gesendet: Wenn sich kein Runner registriert, bevor sie verstreicht, wird die Sitzung mit einer frischen Bestellungs-ID erneut angeboten. Alle Replikas müssen diesen Wert teilen. |96| `--expected-spawn-seconds <sec>` | `120` | Erwartete p99-Zeit vom Empfang einer Spawn-Anfrage durch den Orchestrator bis zur Registrierung des Runners, einschließlich einer etwaigen Wartezeit auf Kapazität auf Ihrer Plattform. Der Server erzwingt einen Bereich von 10 bis 3600. Wird bei jeder Abfrage als Server-seitige Lease gesendet: Wenn sich kein Runner registriert, bevor sie verstreicht, wird die Sitzung mit einer frischen Bestellungs-ID erneut angeboten. Alle Replikas müssen diesen Wert teilen. |

97| `--min-idle <n>` | `0` | Halten Sie mindestens N untätige Session-Slots frei, indem Sie proaktiv Standby-Runner erzeugen. `0` deaktiviert Vorwärmung. Koppeln Sie mit dem `--exit-if-unused-min` des Runners, sodass überschüssige Standby-Runner sich selbst zurückfordern. |97| `--min-idle <n>` | `0` | Halten Sie mindestens N untätige Session-Slots frei, indem Sie proaktiv Standby-Runner erzeugen. `0` deaktiviert Vorwärmung. Koppeln Sie mit dem `--exit-if-unused-min` des Runners, sodass überschüssige Standby-Runner sich selbst zurückfordern. |

98| `--shutdown-drain-sec <n>` | `0` | Bei `SIGTERM` werden keine Spawn-Anfragen mehr abgefragt, und laufende `spawn-runner` Hooks sowie eine etwaige unbeantwortete Abfrage erhalten bis zu diese Anzahl an Sekunden Zeit zum Abschließen, bevor alles Verbleibende gestoppt wird. Bei `0` wird sofort gestoppt. Maximum `3600`, was der Orchestrator beim Start erzwingt. Hinweise zur Wahl eines Werts finden Sie unter [`--shutdown-drain-sec` und den Stopp-Timeout des Orchestrators dimensionieren](https://code.claude.com/docs/de/self-hosted-environments-configuration#size-shutdown-drain-sec-and-the-supervisors-stop-timeout-for-the-orchestrator). Erfordert Claude Code v2.1.299 oder höher. |

98| `--debug-dir <path>` | nicht gesetzt | Schreiben Sie die Work-Order und Hook-Stderr jeder Spawn-Anfrage auf die Festplatte. Nur zum Debuggen; niemals in der Produktion setzen. |99| `--debug-dir <path>` | nicht gesetzt | Schreiben Sie die Work-Order und Hook-Stderr jeder Spawn-Anfrage auf die Festplatte. Nur zum Debuggen; niemals in der Produktion setzen. |

99 100 

100### SCM-Connector-Flags101### SCM-Connector-Flags

Details

154 * **Telemetrie-Einheit**: Die `OTEL_EXPORTER_OTLP_*`-Exporter-Schlüssel, die `OTEL_LOG_*`-Schalter zur Inhaltserfassung, `OTEL_LOGS_EXPORTER` sowie die Beta-Tracing-Variablen `ENABLE_BETA_TRACING_DETAILED` und `BETA_TRACING_ENDPOINT` folgen als Einheit der höchsten Quelle, die eine von ihnen setzt. Eine Quelle, die den Anmeldedaten-Schlüssel `otelHeadersHelper` liefert, beansprucht die Einheit ebenfalls, setzt diese Variablen aber nur, wenn sie die ausgewählte Quelle ist: Eine nicht ausgewählte Quelle, die den Schlüssel liefert, trägt keine davon bei und hindert dennoch niedrigere Quellen daran, sie zu ergänzen. In jedem Fall kann ein Exporter-Endpunkt aus einer Quelle nie mit Anmeldedaten aus einer anderen kombiniert werden.154 * **Telemetrie-Einheit**: Die `OTEL_EXPORTER_OTLP_*`-Exporter-Schlüssel, die `OTEL_LOG_*`-Schalter zur Inhaltserfassung, `OTEL_LOGS_EXPORTER` sowie die Beta-Tracing-Variablen `ENABLE_BETA_TRACING_DETAILED` und `BETA_TRACING_ENDPOINT` folgen als Einheit der höchsten Quelle, die eine von ihnen setzt. Eine Quelle, die den Anmeldedaten-Schlüssel `otelHeadersHelper` liefert, beansprucht die Einheit ebenfalls, setzt diese Variablen aber nur, wenn sie die ausgewählte Quelle ist: Eine nicht ausgewählte Quelle, die den Schlüssel liefert, trägt keine davon bei und hindert dennoch niedrigere Quellen daran, sie zu ergänzen. In jedem Fall kann ein Exporter-Endpunkt aus einer Quelle nie mit Anmeldedaten aus einer anderen kombiniert werden.

155 * **An Anmeldedaten gekoppeltes Routing**: Eine Quelle, die Routing-Variablen mit einem Anmeldedaten-Schlüssel koppelt, der nur aus der ausgewählten Quelle gilt, etwa `apiKeyHelper` oder `otelHeadersHelper`, trägt diese Routing-Variablen nur bei, wenn sie den Platz gewinnt.155 * **An Anmeldedaten gekoppeltes Routing**: Eine Quelle, die Routing-Variablen mit einem Anmeldedaten-Schlüssel koppelt, der nur aus der ausgewählten Quelle gilt, etwa `apiKeyHelper` oder `otelHeadersHelper`, trägt diese Routing-Variablen nur bei, wenn sie den Platz gewinnt.

156* **`allowedProviders`**: Eine auf dem Rechner festgelegte Liste und eine servergesteuerte Liste werden so kombiniert, wie es [der Hinweis zum Geltungsbereich in ihrem Eintrag](https://code.claude.com/docs/de/settings-reference.md#allowedproviders) angibt. Erfordert Claude Code v2.1.285 oder höher156* **`allowedProviders`**: Eine auf dem Rechner festgelegte Liste und eine servergesteuerte Liste werden so kombiniert, wie es [der Hinweis zum Geltungsbereich in ihrem Eintrag](https://code.claude.com/docs/de/settings-reference.md#allowedproviders) angibt. Erfordert Claude Code v2.1.285 oder höher

157* **Schlüssel für die First-Party-Anmeldung**: [`forceLoginOrgUUID`](https://code.claude.com/docs/de/settings-reference#forceloginorguuid) sowie die Werte `"claudeai"` und `"console"` von [`forceLoginMethod`](https://code.claude.com/docs/de/settings-reference#forceloginmethod). Wenn Sie zusätzlich eine MDM-Richtlinie oder eine Datei mit verwalteten Einstellungen bereitstellen, setzen Sie sie dort und in den servergesteuerten Einstellungen von claude.ai, bis alle Clients v2.1.299 oder höher ausführen. Wo Sie die Schlüssel danach setzen und welcher Quelle Wert gilt, erfahren Sie unter [Welche verwaltete Quelle Anmeldeschlüssel liefert](https://code.claude.com/docs/de/managed-settings.md#which-managed-source-supplies-login-keys).

157* **Schlüssel für die Gateway-Anmeldung**: Claude Code liest [`forceLoginGatewayUrl`](https://code.claude.com/docs/de/settings-reference#forcelogingatewayurl), [`gatewayInternalNetworks`](https://code.claude.com/docs/de/settings-reference#gatewayinternalnetworks) oder den Wert `"gateway"` von [`forceLoginMethod`](https://code.claude.com/docs/de/settings-reference#forceloginmethod) nie aus servergesteuerten Einstellungen, sodass ein dort gesetzter Wert weder gilt noch einen in einer MDM-Richtlinie oder Datei mit verwalteten Einstellungen gesetzten Wert verdeckt. Der [Eintrag `managedSourcesBehavior`](https://code.claude.com/docs/de/settings-reference#managedsourcesbehavior) gibt an, welche Admin-Quelle auf dem Rechner sie liefert.158* **Schlüssel für die Gateway-Anmeldung**: Claude Code liest [`forceLoginGatewayUrl`](https://code.claude.com/docs/de/settings-reference#forcelogingatewayurl), [`gatewayInternalNetworks`](https://code.claude.com/docs/de/settings-reference#gatewayinternalnetworks) oder den Wert `"gateway"` von [`forceLoginMethod`](https://code.claude.com/docs/de/settings-reference#forceloginmethod) nie aus servergesteuerten Einstellungen, sodass ein dort gesetzter Wert weder gilt noch einen in einer MDM-Richtlinie oder Datei mit verwalteten Einstellungen gesetzten Wert verdeckt. Der [Eintrag `managedSourcesBehavior`](https://code.claude.com/docs/de/settings-reference#managedsourcesbehavior) gibt an, welche Admin-Quelle auf dem Rechner sie liefert.

158 159 

159### Abruf- und Caching-Verhalten160### Abruf- und Caching-Verhalten

settings.md +65 −65

Details

203 203 

204Ein `-p` Lauf zeigt keinen Dialog. Es sei denn, [ein verwaltetes Einstellungsdokument kann nicht analysiert werden](https://code.claude.com/docs/de/errors.md#managed-settings-document-could-not-be-parsed), überspringt Claude Code die fehlerhafte Datei oder Werte und fährt mit dem Rest fort, sodass nach einem `-p` Lauf, der eine Einstellung ignoriert, `claude doctor` ausführen, um zu sehen, was es abgelegt hat.204Ein `-p` Lauf zeigt keinen Dialog. Es sei denn, [ein verwaltetes Einstellungsdokument kann nicht analysiert werden](https://code.claude.com/docs/de/errors.md#managed-settings-document-could-not-be-parsed), überspringt Claude Code die fehlerhafte Datei oder Werte und fährt mit dem Rest fort, sodass nach einem `-p` Lauf, der eine Einstellung ignoriert, `claude doctor` ausführen, um zu sehen, was es abgelegt hat.

205 205 

206## Einstellungspriorität206## Vorrang der Einstellungen

207 207 

208Wenn der gleiche Schlüssel an mehr als einer Stelle erscheint, verwendet Claude Code den Wert aus der höchsten Ebene, die ihn setzt. Der Stapel unten zeigt die Ebenen, höchste oben; ein Schlüssel auf einer höheren Ebene überschreibt den gleichen Schlüssel überall darunter.208Wenn derselbe Schlüssel an mehr als einer Stelle vorkommt, verwendet Claude Code den Wert der höchsten Ebene, die ihn setzt. Der folgende Stapel zeigt die Ebenen, die höchste oben; ein Schlüssel auf einer höheren Ebene überschreibt denselben Schlüssel auf jeder darunterliegenden Ebene.

209 209 

210Settings precedence, highest first: managed settings, command line, project local, shared project, user. A key set at a higher level overrides the same key set lower down.210Settings precedence, highest first: managed settings, command line, project local, shared project, user. A key set at a higher level overrides the same key set lower down.

211 211 

212In Reihenfolge, höchste Priorität zuerst:212In Reihenfolge, mit dem höchsten Vorrang zuerst:

213 213 

2141. **Verwaltete Einstellungen**: Einstellungen, die Ihre Organisation bereitstellt, durch eine `managed-settings.json` Datei, eine MDM-Richtlinie oder [serververwaltete Einstellungen](https://code.claude.com/docs/de/server-managed-settings.md) von der claude.ai-Konsole. Nichts in Ihren eigenen Einstellungsdateien oder `--settings` überschreibt einen verwalteten Schlüssel, und ein Flag wie `--model` wählt nur aus den Modellen, die Ihre Organisation erlaubt. Ein verwaltetes [`model`](https://code.claude.com/docs/de/settings-reference#model) ist ein Standardwert für den Start, keine Sperre; die Sperren sind [`availableModels`](https://code.claude.com/docs/de/settings-reference#availablemodels) und [`deniedModels`](https://code.claude.com/docs/de/settings-reference#deniedmodels). Wenn Ihre Organisation mehr als eine verwaltete Quelle bereitstellt, sagen die Regeln für [Priorität innerhalb der verwalteten Ebene](https://code.claude.com/docs/de/managed-settings.md#precedence-within-the-managed-tier), was Claude Code aus jeder liest.2141. **Verwaltete Einstellungen**: Einstellungen, die Ihre Organisation bereitstellt, über eine `managed-settings.json`-Datei, eine MDM-Richtlinie oder [servergesteuerte Einstellungen](https://code.claude.com/docs/de/server-managed-settings.md) aus der claude.ai-Konsole. Nichts in Ihren eigenen Einstellungsdateien oder in `--settings` überschreibt einen verwalteten Schlüssel, und ein Flag wie `--model` wählt nur aus den Modellen, die Ihre Organisation zulässt. Ein verwaltetes [`model`](https://code.claude.com/docs/de/settings-reference#model) ist ein Startwert, keine Sperre; die Sperren sind [`availableModels`](https://code.claude.com/docs/de/settings-reference#availablemodels) und [`deniedModels`](https://code.claude.com/docs/de/settings-reference#deniedmodels). Wenn Ihre Organisation mehr als eine verwaltete Quelle bereitstellt, legen die Regeln für den [Vorrang innerhalb der verwalteten Ebene](https://code.claude.com/docs/de/managed-settings.md#precedence-within-the-managed-tier) fest, was Claude Code aus jeder Quelle liest.

2152. **Befehlszeile**: JSON, das Sie mit `--settings <file-or-json>` übergeben, wenn Sie `claude` starten, nur für diese Sitzung; siehe [Ändern Sie eine Einstellung für eine Sitzung](#change-a-setting-for-one-session). Ein Schlüssel, den Sie dort setzen, überschreibt den gleichen Schlüssel in Ihren Projekt- und Benutzereinstellungsdateien, und ein Schlüssel, den Sie weglassen, behält seinen Wert aus diesen Dateien. Andere Flags wie `--model` legen eine einzelne Sache für die Sitzung fest und sind nicht Teil dieses Stapels; der Eintrag eines Schlüssels in der [Einstellungsreferenz](https://code.claude.com/docs/de/settings-reference.md) gibt an, welche Flags ihn überschreiben.2152. **Befehlszeile**: JSON, das Sie beim Starten von `claude` mit `--settings <file-or-json>` übergeben, nur für diese Sitzung; siehe [Eine Einstellung für eine Sitzung ändern](#change-a-setting-for-one-session). Ein Schlüssel, den Sie dort setzen, überschreibt denselben Schlüssel in Ihren Projekt- und Benutzereinstellungsdateien, und ein Schlüssel, den Sie weglassen, behält seinen Wert aus diesen Dateien. Andere Flags wie `--model` legen eine Sache für die Sitzung fest und sind nicht Teil dieses Stapels; der Eintrag eines Schlüssels in der [Einstellungsreferenz](https://code.claude.com/docs/de/settings-reference.md) gibt an, welche Flags ihn überschreiben.

2163. **Projekt-lokale Einstellungen** (`.claude/settings.local.json`): Ihre persönlichen Einstellungen für dieses Projekt.2163. **Lokale Projekteinstellungen** (`.claude/settings.local.json`): Ihre persönlichen Einstellungen für dieses Projekt.

2174. **Gemeinsame Projekt-Einstellungen** (`.claude/settings.json`): Einstellungen, die Ihr Team in die Versionskontrolle eincheckt.2174. **Gemeinsame Projekteinstellungen** (`.claude/settings.json`): Einstellungen, die Ihr Team in die Versionskontrolle eincheckt.

2185. **Benutzer-Einstellungen** (`~/.claude/settings.json`): Ihre persönlichen Einstellungen für jedes Projekt.2185. **Benutzereinstellungen** (`~/.claude/settings.json`): Ihre persönlichen Einstellungen für jedes Projekt.

219 219 

220Umgebungsvariablen sind keine Ebene in diesem Stapel. Wenn ein Verhalten sowohl eine Shell-Variable als auch einen Einstellungsschlüssel hat, wird entschieden, welche angewendet wird, pro Paar, nicht nach Ebene: `ANTHROPIC_MODEL`, das in Ihrer Shell exportiert wird, gilt über den `model` Schlüssel aus jeder Datei, während `ANTHROPIC_DEFAULT_MODEL` nur gilt, wenn keine Datei `model` setzt. Die [Umgebungsvariablen-Referenz](https://code.claude.com/docs/de/env-vars.md#precedence) sagt, welche Schlüssel ein Paar haben und welche Claude Code zuerst liest. Ein `env` Block in einer Einstellungsdatei ist ein gewöhnlicher Schlüssel und folgt den Ebenen oben.220Umgebungsvariablen sind keine Ebene in diesem Stapel. Wenn ein Verhalten sowohl eine Shell-Variable als auch einen Einstellungsschlüssel hat, wird pro Paar entschieden, welcher gilt, nicht nach Ebene: `ANTHROPIC_MODEL`, in Ihrer Shell exportiert, hat Vorrang vor dem Schlüssel `model` aus jeder Datei, während `ANTHROPIC_DEFAULT_MODEL` nur gilt, wenn keine Datei `model` setzt. Die [Referenz der Umgebungsvariablen](https://code.claude.com/docs/de/env-vars.md#precedence) gibt an, welche Schlüssel ein Paar haben und welchen Claude Code zuerst liest. Ein `env`-Block innerhalb einer Einstellungsdatei ist ein gewöhnlicher Schlüssel und folgt den obigen Ebenen.

221 221 

222Für ein paar sicherheitsempfindliche Schlüssel ehrt Claude Code einen strengeren Wert aus einer niedrigeren Ebene über einen verwalteten Wert; [Ausnahmen zur Priorität der verwalteten Einstellungen](#exceptions-to-managed-settings-precedence) listet sie auf.222Bei einigen sicherheitsrelevanten Schlüsseln berücksichtigt Claude Code einen strengeren Wert von einer niedrigeren Ebene gegenüber einem verwalteten Wert; [Ausnahmen vom Vorrang verwalteter Einstellungen](#exceptions-to-managed-settings-precedence) listet sie auf.

223 223 

224### Listen werden zusammengeführt statt überschrieben224### Listen werden zusammengeführt statt überschrieben

225 225 

226Wenn Sie den gleichen Listen-Schlüssel, wie `permissions.allow`, in mehr als einer Datei setzen, kombiniert Claude Code die Listen statt eine zu wählen, sodass jede Datei Einträge hinzufügen kann, ohne die eines anderen zu entfernen. Vier Schlüssel, die Modell-Listen oder Pro-Modell-Einträge halten, folgen ihren eigenen Regeln:226Wenn Sie denselben Listenschlüssel, etwa `permissions.allow`, in mehr als einer Datei setzen, kombiniert Claude Code die Listen, statt eine auszuwählen, sodass jede Datei Einträge hinzufügen kann, ohne die einer anderen Datei zu entfernen. Vier Schlüssel, die Modelllisten oder modellspezifische Einträge enthalten, folgen eigenen Regeln:

227 227 

228* [`fallbackModel`](https://code.claude.com/docs/de/settings-reference#fallbackmodel) ist eine geordnete Kette, wo Position Bedeutung hat, sodass Claude Code den ganzen Wert aus der höchsten Prioritätsdatei nimmt, die ihn definiert.228* [`fallbackModel`](https://code.claude.com/docs/de/settings-reference#fallbackmodel) ist eine geordnete Kette, in der die Position Bedeutung trägt, daher übernimmt Claude Code den gesamten Wert aus der Datei mit dem höchsten Vorrang, die ihn definiert.

229* [`modelPicker`](https://code.claude.com/docs/de/settings-reference#modelpicker) hält eine geordnete Liste von Zeilen plus ein Replace-Flag, sodass Claude Code Zeilen aus zwei Quellen nie zusammenführt. Es nimmt den ganzen Wert aus dem höchsten von verwalteten Einstellungen, `--settings` und Benutzereinstellungen, die ihn definieren, und ignoriert den Schlüssel in Projekt- und lokalen Einstellungen. Erfordert Claude Code v2.1.242 oder später.229* [`modelPicker`](https://code.claude.com/docs/de/settings-reference#modelpicker) enthält eine geordnete Liste von Zeilen plus ein Ersetzungs-Flag, daher führt Claude Code nie Zeilen aus zwei Quellen zusammen. Es übernimmt den gesamten Wert aus der höchsten der Quellen verwaltete Einstellungen, `--settings` und Benutzereinstellungen, die ihn definiert, und ignoriert den Schlüssel in Projekt- und lokalen Einstellungen. Erfordert Claude Code v2.1.242 oder höher.

230* [`availableModels`](https://code.claude.com/docs/de/settings-reference#availablemodels): wenn die verwalteten Einstellungen, die Claude Code anwendet, ihn definieren, wendet Claude Code diese Liste wie sie ist an und ignoriert Einträge, die Sie in Benutzer-, Projekt- oder lokalen Einstellungen hinzufügen, es sei denn, eine App, die Claude Code einbettet, liefert ihre eigene Modell-Liste; siehe [Ausnahmen zur Priorität der verwalteten Einstellungen](#exceptions-to-managed-settings-precedence). Über verwaltete Quellen wird die Liste auch nie zusammengeführt; [wie Claude Code verwaltete Quellen kombiniert](https://code.claude.com/docs/de/managed-settings.md#how-claude-code-combines-managed-sources) sagt, welche Quelle's Liste angewendet wird. Über nicht verwaltete Bereiche führt Claude Code die Arrays wie üblich zusammen.230* [`availableModels`](https://code.claude.com/docs/de/settings-reference#availablemodels): Wenn die von Claude Code angewendeten verwalteten Einstellungen ihn definieren, wendet Claude Code diese Liste unverändert an und ignoriert Einträge, die Sie in Benutzer-, Projekt- oder lokalen Einstellungen hinzufügen, es sei denn, eine App, die Claude Code einbettet, liefert ihre eigene Modellliste; siehe [Ausnahmen vom Vorrang verwalteter Einstellungen](#exceptions-to-managed-settings-precedence). Auch über verwaltete Quellen hinweg wird die Liste nie zusammengeführt; [wie Claude Code verwaltete Quellen kombiniert](https://code.claude.com/docs/de/managed-settings.md#how-claude-code-combines-managed-sources) gibt an, welche Liste welcher Quelle gilt. Über nicht verwaltete Geltungsbereiche hinweg führt Claude Code die Arrays wie üblich zusammen.

231* [`modelSettings`](https://code.claude.com/docs/de/settings-reference#modelsettings): Claude Code löst es ein Modell auf einmal auf, zusammen mit [`effortLevel`](https://code.claude.com/docs/de/settings-reference#effortlevel). Der `modelSettings` Eintrag sagt, welche Datei's Wert auf ein Modell angewendet wird.231* [`modelSettings`](https://code.claude.com/docs/de/settings-reference#modelsettings): Claude Code löst diesen Schlüssel Modell für Modell auf, zusammen mit [`effortLevel`](https://code.claude.com/docs/de/settings-reference#effortlevel). Der Eintrag zu `modelSettings` gibt an, welcher Wert aus welcher Datei für ein Modell gilt.

232 232 

233### Beispiele für Priorität233### Beispiele zum Vorrang

234 234 

235Während Claude arbeitet, zeigt Claude Code einen einzeiligen Tipp unter dem Spinner, wie "Verwenden Sie /config, um Ihren Standard-Berechtigungsmodus zu ändern (einschließlich Plan Mode)". Angenommen, Sie möchten diese Tipps aus, sodass Sie [`spinnerTipsEnabled`](https://code.claude.com/docs/de/settings-reference#spinnertipsenabled) auf `false` in `~/.claude/settings.json` setzen. Jedes Szenario unten ist etwas, das sie wieder einschalten kann, und was Sie dagegen tun können.235Während Claude arbeitet, zeigt Claude Code unter dem Spinner einen einzeiligen Tipp an, etwa „Use /config to change your default permission mode (including Plan Mode)“. Angenommen, Sie möchten diese Tipps ausschalten und setzen daher [`spinnerTipsEnabled`](https://code.claude.com/docs/de/settings-reference#spinnertipsenabled) in `~/.claude/settings.json` auf `false`. Jedes der folgenden Szenarien beschreibt etwas, das sie wieder einschalten kann, und was Sie dagegen tun können.

236 236 

237#### Team-Einstellungen überschreiben persönliche Einstellungen237#### Team-Einstellungen überschreiben persönliche Einstellungen

238 238 

239Die `.claude/settings.json` Ihres Teams setzt es auf `true`. Claude Code verwendet den Projektwert, weil gemeinsames Projekt über Benutzer sitzt, sodass Sie Tipps in diesem Projekt und nirgendwo sonst sehen.239Die `.claude/settings.json` Ihres Teams setzt den Schlüssel auf `true`. Claude Code verwendet den Projektwert, weil die gemeinsamen Projekteinstellungen über den Benutzereinstellungen liegen, sodass Sie Tipps in diesem Projekt sehen und nirgendwo sonst.

240 240 

241Sie können Ihren Wert zurückbekommen: fügen Sie `"spinnerTipsEnabled": false` zu `.claude/settings.local.json` in diesem Projekt hinzu. Projekt-lokal sitzt über gemeinsames Projekt, sodass Ihre Sitzungen dort Tipps nicht mehr zeigen und die Sitzungen Ihrer Teamkollegen sich nicht ändern.241Sie können Ihren Wert zurückbekommen: Fügen Sie `"spinnerTipsEnabled": false` zu `.claude/settings.local.json` in diesem Projekt hinzu. Lokale Projekteinstellungen liegen über den gemeinsamen Projekteinstellungen, sodass Ihre Sitzungen dort keine Tipps mehr anzeigen und sich die Sitzungen Ihrer Teammitglieder nicht ändern.

242 242 

243#### Organisations-Einstellungen überschreiben alles243#### Organisationseinstellungen überschreiben alles

244 244 

245Die verwalteten Einstellungen Ihrer Organisation setzen es auf `true`. Nichts, das Sie in Benutzer-, Projekt- oder lokale Einstellungen setzen, schaltet Tipps aus, und auch nicht `--settings`. Verwaltet ist die oberste Ebene.245Die verwalteten Einstellungen Ihrer Organisation setzen den Schlüssel auf `true`. Nichts, was Sie in Benutzer-, Projekt- oder lokale Einstellungen eintragen, schaltet die Tipps aus, und auch `--settings` nicht. Verwaltet ist die oberste Ebene.

246 246 

247Sie können Ihren Wert nicht zurückbekommen. Führen Sie `/status` aus, um zu sehen, welche verwaltete Quelle angewendet wird, und fragen Sie Ihren Administrator, ob die Richtlinie sich ändern sollte.247Sie können Ihren Wert nicht zurückbekommen. Führen Sie `/status` aus, um zu sehen, welche verwaltete Quelle gilt, und fragen Sie Ihren Administrator, ob die Richtlinie geändert werden sollte.

248 248 

249#### Die Befehlszeile überschreibt Ihre Dateien für eine Sitzung249#### Die Befehlszeile überschreibt Ihre Dateien für eine Sitzung

250 250 

251Sie haben die Sitzung mit `claude --settings '{"spinnerTipsEnabled": true}'` gestartet. Befehlszeile sitzt über jeder Datei außer verwaltet, sodass diese Sitzung Tipps zeigt, obwohl Ihre Dateien `false` sagen.251Sie haben die Sitzung mit `claude --settings '{"spinnerTipsEnabled": true}'` gestartet. Die Befehlszeile liegt über jeder Datei außer den verwalteten Einstellungen, sodass diese Sitzung Tipps anzeigt, obwohl Ihre Dateien `false` angeben.

252 252 

253Sie bekommen Ihren Wert in der nächsten Sitzung zurück; `--settings` dauert eine Sitzung und schreibt nicht in eine Datei.253Sie bekommen Ihren Wert in der nächsten Sitzung zurück; `--settings` gilt für eine Sitzung und schreibt in keine Datei.

254 254 

255#### Ein Flag oder eine Umgebungsvariable setzt das gleiche255#### Ein Flag oder eine Umgebungsvariable setzt dasselbe

256 256 

257Einige Schlüssel haben ein Befehlszeilenflag oder eine Umgebungsvariable, die den Einstellungswert unabhängig davon überschreibt, welche Datei ihn setzt: `ANTHROPIC_MODEL` überschreibt die [`model`](https://code.claude.com/docs/de/settings-reference#model) Einstellung, und `--model` überschreibt beide für eine Sitzung.257Einige Schlüssel haben ein Befehlszeilen-Flag oder eine Umgebungsvariable, die den Einstellungswert überschreibt, unabhängig davon, welche Datei ihn gesetzt hat: `ANTHROPIC_MODEL` überschreibt die Einstellung [`model`](https://code.claude.com/docs/de/settings-reference#model), und `--model` überschreibt beides für eine Sitzung.

258 258 

259Ob Sie Ihren Wert zurückbekommen, hängt vom Schlüssel ab: heben Sie die Variable auf oder lassen Sie das Flag fallen, und überprüfen Sie den Eintrag des Schlüssels auf der [Einstellungsreferenz](https://code.claude.com/docs/de/settings-reference.md) und die Zeile der Variable auf der [Umgebungsvariablen-Referenz](https://code.claude.com/docs/de/env-vars.md) für welche Claude Code verwendet.259Ob Sie Ihren Wert zurückbekommen, hängt vom Schlüssel ab: Entfernen Sie die Variable oder lassen Sie das Flag weg, und prüfen Sie den Eintrag des Schlüssels in der [Einstellungsreferenz](https://code.claude.com/docs/de/settings-reference.md) sowie die Zeile der Variablen in der [Referenz der Umgebungsvariablen](https://code.claude.com/docs/de/env-vars.md), um zu sehen, welchen Wert Claude Code verwendet.

260 260 

261### Beheben Sie eine Einstellung, die nicht angewendet wird261### Fehlerbehebung bei einer Einstellung, die nicht greift

262 262 

263Wenn Sie einen Schlüssel setzen und Claude Code sich nicht so verhält, als hätten Sie, beginnen Sie mit `/status`, um zu sehen, welche Dateien es geladen hat, dann finden Sie Ihr Symptom unten. [Debuggen Sie Ihre Konfiguration](https://code.claude.com/docs/de/debug-your-config.md) behandelt die breiteren Überprüfungen, einschließlich eines sauberen Konfigurationstests.263Wenn Sie einen Schlüssel setzen und Claude Code sich nicht entsprechend verhält, beginnen Sie mit `/status`, um zu sehen, welche Dateien geladen wurden, und suchen Sie dann unten Ihr Symptom. [Ihre Konfiguration debuggen](https://code.claude.com/docs/de/debug-your-config.md) behandelt die umfassenderen Prüfungen, einschließlich eines Tests mit einer sauberen Konfiguration.

264 264 

265#### Ein Wert, den Sie setzen, wird ignoriert265#### Ein von Ihnen gesetzter Wert wird ignoriert

266 266 

267Etwas anderes setzt den gleichen Schlüssel, die Datei kann diesen Wert nicht setzen, oder die Datei wurde nicht geladen:267Etwas anderes setzt denselben Schlüssel, die Datei kann diesen Wert nicht setzen, oder die Datei wurde nicht geladen:

268 268 

269* **Eine höhere Ebene setzt ihn.** Eine andere Einstellungsdatei, ein `--settings` Flag oder eine verwaltete Quelle setzt den Schlüssel über Ihrem; der [Stapel](#settings-precedence) sagt welche. Ein Flag oder eine Umgebungsvariable kann auch den Schlüssel auf eigene Faust überschreiben, entschieden Schlüssel für Schlüssel; der Eintrag des Schlüssels auf der [Einstellungsreferenz](https://code.claude.com/docs/de/settings-reference.md) sagt, welche Claude Code verwendet, und der [`env` Eintrag](https://code.claude.com/docs/de/settings-reference#env) behandelt einen verwalteten `env` Wert versus einen Shell-Export.269* **Eine höhere Ebene setzt ihn.** Eine andere Einstellungsdatei, ein `--settings`-Flag oder eine verwaltete Quelle setzt den Schlüssel oberhalb Ihres Werts; der [Stapel](#settings-precedence) zeigt, welche. Ein Flag oder eine Umgebungsvariable kann den Schlüssel auch eigenständig überschreiben, was Schlüssel für Schlüssel entschieden wird; der Eintrag des Schlüssels in der [Einstellungsreferenz](https://code.claude.com/docs/de/settings-reference.md) gibt an, welchen Wert Claude Code verwendet, und der [`env`-Eintrag](https://code.claude.com/docs/de/settings-reference#env) behandelt einen verwalteten `env`-Wert im Vergleich zu einem Shell-Export.

270* **Ein Sicherheitsschlüssel behält seinen strengen Wert.** Für ein paar Schlüssel ehrt Claude Code den restriktiven Wert aus jeder Datei, sodass ein Projekt `true` für [`disableClaudeAiConnectors`](https://code.claude.com/docs/de/settings-reference#disableclaudeaiconnectors) bleibt an; siehe [Ausnahmen zur Priorität der verwalteten Einstellungen](#exceptions-to-managed-settings-precedence).270* **Ein Sicherheitsschlüssel behält seinen strengen Wert.** Bei einigen Schlüsseln berücksichtigt Claude Code den restriktiven Wert aus jeder Datei, sodass ein `true` im Projekt für [`disableClaudeAiConnectors`](https://code.claude.com/docs/de/settings-reference#disableclaudeaiconnectors) aktiv bleibt; siehe [Ausnahmen vom Vorrang verwalteter Einstellungen](#exceptions-to-managed-settings-precedence).

271* **Die Datei kann diesen Wert nicht setzen.** [`permissions.defaultMode`](https://code.claude.com/docs/de/settings-reference#permissions-defaultmode) Werte `auto` und `bypassPermissions` wirken sich nicht von Projekt- oder lokalen Einstellungen aus; setzen Sie sie stattdessen in Benutzer- oder verwaltete Einstellungen, oder übergeben Sie `--permission-mode` für eine Sitzung. Vor v2.1.257 wirkte sich `bypassPermissions` von jeder Datei aus.271* **Die Datei kann diesen Wert nicht setzen.** Die Werte `auto` und `bypassPermissions` für [`permissions.defaultMode`](https://code.claude.com/docs/de/settings-reference#permissions-defaultmode) werden aus Projekt- oder lokalen Einstellungen nicht wirksam; setzen Sie sie stattdessen in Benutzer- oder verwalteten Einstellungen, oder übergeben Sie `--permission-mode` für eine Sitzung. Vor v2.1.257 wurde `bypassPermissions` aus jeder Datei wirksam.

272 272 

273 Eine Telemetrie-Exportvariable in einem [`env`](https://code.claude.com/docs/de/settings-reference#env) Block wirkt sich auch nicht von Projekt- oder lokalen Einstellungen aus, außer ein paar Off-Werte. [Variablen, die Claude Code in `env` ignoriert](https://code.claude.com/docs/de/settings-reference#variables-claude-code-ignores-in-env) listet die Variablen und diese Werte auf.273 Eine Telemetrie-Exportvariable in einem [`env`](https://code.claude.com/docs/de/settings-reference#env)-Block wird aus Projekt- oder lokalen Einstellungen ebenfalls nicht wirksam, abgesehen von einigen Aus-Werten. [Variablen, die Claude Code in `env` ignoriert](https://code.claude.com/docs/de/settings-reference#variables-claude-code-ignores-in-env) listet die Variablen und diese Werte auf.

274* **Die Datei ist fehlerhaft.** Ungültiges JSON oder ein abgelehnter Wert lässt Claude Code die Datei oder den Eintrag überspringen; siehe [Beheben Sie eine fehlerhafte Einstellungsdatei](#fix-a-broken-settings-file).274* **Die Datei ist fehlerhaft.** Ungültiges JSON oder ein abgelehnter Wert führt dazu, dass Claude Code die Datei oder den Eintrag überspringt; siehe [Eine fehlerhafte Einstellungsdatei reparieren](#fix-a-broken-settings-file).

275 275 

276#### Eine Änderung, die Sie in Claude Code gemacht haben, geht in neuen Sitzungen verloren276#### Eine in Claude Code vorgenommene Änderung geht in neuen Sitzungen verloren

277 277 

278Wenn Sie eine Wahl für neue Sitzungen von innen Claude Code speichern, wie ein Standardmodell mit `/model`, schreibt Claude Code es in Ihre Benutzereinstellungsdatei, `~/.claude/settings.json`. Wenn Sie nicht in diese Datei schreiben können, zum Beispiel weil ein anderes Tool sie generiert oder sie mit einer schreibgeschützten Kopie verlinkt, gilt die Änderung für die aktuelle Sitzung und ist in der nächsten weg. Setzen Sie den Schlüssel in das Tool, das die Datei generiert, oder ersetzen Sie die Datei mit einer, in die Sie schreiben können.278Wenn Sie innerhalb von Claude Code eine Auswahl für neue Sitzungen speichern, etwa ein Standardmodell mit `/model`, schreibt Claude Code sie in Ihre Benutzereinstellungsdatei `~/.claude/settings.json`. Wenn Sie nicht in diese Datei schreiben können, etwa weil ein anderes Tool sie erzeugt oder sie mit einer schreibgeschützten Kopie verknüpft, gilt die Änderung für die aktuelle Sitzung und ist in der nächsten verschwunden. Setzen Sie den Schlüssel in dem Tool, das die Datei erzeugt, oder ersetzen Sie die Datei durch eine, in die Sie schreiben können.

279 279 

280Wenn Sie in die Datei schreiben können und die Änderung bleibt immer noch nicht, überprüfen Sie, ob die Änderung [nur für eine Sitzung](#change-a-setting-for-one-session) war oder [eine höhere Ebene setzt den gleichen Schlüssel](#a-value-you-set-is-ignored). Für den `model` Schlüssel, [Eine neue Sitzung startet auf einem anderen Modell als Sie gewählt haben](https://code.claude.com/docs/de/model-config.md#a-new-session-starts-on-a-different-model-than-you-picked) listet mehr Ursachen auf.280Wenn Sie in die Datei schreiben können und die Änderung trotzdem nicht bestehen bleibt, prüfen Sie, ob die Änderung [nur für eine Sitzung](#change-a-setting-for-one-session) galt oder ob [eine höhere Ebene denselben Schlüssel setzt](#a-value-you-set-is-ignored). Für den Schlüssel `model` listet [Eine neue Sitzung startet mit einem anderen Modell als dem ausgewählten](https://code.claude.com/docs/de/model-config.md#a-new-session-starts-on-a-different-model-than-you-picked) weitere Ursachen auf.

281 281 

282#### Eine verwaltete Änderung hat Sie nicht erreicht282#### Eine verwaltete Änderung ist nicht bei Ihnen angekommen

283 283 

284Verwaltete Quellen erreichen eine laufende Sitzung nach dem Zeitplan in der [Bereitstellungstabelle](https://code.claude.com/docs/de/managed-settings.md#choose-a-delivery-mechanism), sodass starten Sie die Sitzung zuerst neu. Wenn `/status` dann eine andere Quelle nennt als die, die Ihr Administrator geändert hat, gilt eine höherrangige Quelle; [Wie Claude Code verwaltete Quellen kombiniert](https://code.claude.com/docs/de/managed-settings.md#how-claude-code-combines-managed-sources) gibt die Reihenfolge.284Verwaltete Quellen erreichen eine laufende Sitzung gemäß dem Zeitplan in der [Bereitstellungstabelle](https://code.claude.com/docs/de/managed-settings.md#choose-a-delivery-mechanism), starten Sie die Sitzung daher zuerst neu. Wenn `/status` anschließend eine andere Quelle nennt als die, die Ihr Administrator geändert hat, gilt eine Quelle mit höherer Priorität; [Wie Claude Code verwaltete Quellen kombiniert](https://code.claude.com/docs/de/managed-settings.md#how-claude-code-combines-managed-sources) nennt die Reihenfolge.

285 285 

286#### Ein eingecheckter Schlüssel erreicht Teamkollegen nicht286#### Ein eingecheckter Schlüssel erreicht Ihre Teammitglieder nicht

287 287 

288Zwei Dinge halten einen Schlüssel in `.claude/settings.json` davon ab, für alle zu gelten, die ihn klonen:288Zwei Dinge verhindern, dass ein Schlüssel in `.claude/settings.json` für alle gilt, die das Repository klonen:

289 289 

290* **Claude Code ignoriert den Schlüssel in einer Repository-Datei.** Suchen Sie nach `User, local, or managed`, `User or managed`, `User`, `Managed` oder `Global config` in der Spalte Scope des [Einstellungsindex](https://code.claude.com/docs/de/settings-reference.md#settings-index). Diese Schlüssel wirken sich nie von der gemeinsamen Datei aus, außer ein paar, die eine Repository-Datei immer noch ausschalten kann. Jeder dieser Einträge sagt so auf seiner Scope-Zeile. `Global config` Schlüssel gelten nur von `~/.claude.json`.290* **Claude Code ignoriert den Schlüssel in einer Repository-Datei.** Suchen Sie in der Spalte „Scope“ des [Einstellungsindex](https://code.claude.com/docs/de/settings-reference.md#settings-index) nach `User, local, or managed`, `User or managed`, `User`, `Managed` oder `Global config`. Diese Schlüssel gelten nie aus der gemeinsamen Datei, abgesehen von einigen, die eine Repository-Datei weiterhin ausschalten kann. Jeder dieser Einträge gibt dies in seiner Scope-Zeile an. `Global config`-Schlüssel gelten nur aus `~/.claude.json`.

291 291 

292 Innerhalb des `env` Schlüssels gelten die Telemetrie-Exportvariablen auch nie von der gemeinsamen Datei, außer ein paar Off-Werte; siehe [Variablen, die Claude Code in `env` ignoriert](https://code.claude.com/docs/de/settings-reference#variables-claude-code-ignores-in-env).292 Innerhalb des Schlüssels `env` gelten auch die Telemetrie-Exportvariablen nie aus der gemeinsamen Datei, abgesehen von einigen Aus-Werten; siehe [Variablen, die Claude Code in `env` ignoriert](https://code.claude.com/docs/de/settings-reference#variables-claude-code-ignores-in-env).

293* **Der Schlüssel wartet auf Vertrauen.** `permissions.allow` Regeln, `permissions.additionalDirectories`, `extraKnownMarketplaces` und die meisten [`env`](https://code.claude.com/docs/de/settings-reference#env) Werte gelten nur, nachdem jeder Teamkollege den [Ordner vertraut](https://code.claude.com/docs/de/permissions.md#project-allow-rules-and-workspace-trust). Bis dahin sehen sie immer noch Berechtigungsabfragen und bekommen keine Plugins von einem Marketplace, den die Datei erklärt. `deny` und `ask` Regeln gelten sofort.293* **Der Schlüssel wartet auf Vertrauen.** `permissions.allow`-Regeln, `permissions.additionalDirectories`, `extraKnownMarketplaces` und die meisten [`env`](https://code.claude.com/docs/de/settings-reference#env)-Werte gelten erst, nachdem jedes Teammitglied [dem Ordner vertraut](https://code.claude.com/docs/de/permissions.md#project-allow-rules-and-workspace-trust). Bis dahin sehen sie weiterhin Berechtigungsabfragen und erhalten keine Plugins aus einem Marketplace, den die Datei deklariert. `deny`- und `ask`-Regeln gelten sofort.

294 294 

295#### Berechtigungsregeln kombinieren sich anders als Sie erwartet295#### Berechtigungsregeln werden anders kombiniert als erwartet

296 296 

297* **Sie haben "Ja, und frag mich nicht mehr" in einer Berechtigungsabfrage gewählt, werden aber für das gleiche Tool immer noch nachgefragt.** Diese Wahl speicherte eine `allow` Regel in Ihrer lokalen Datei, und eine `allow` Regel dort übertrifft nicht eine `ask` Regel aus einer Projekt- oder verwalteten Datei; [wie Berechtigungsregeln kombinieren](https://code.claude.com/docs/de/permissions.md#settings-precedence) erklärt die Reihenfolge. In der VS Code-Erweiterung lässt die Genehmigungskarte Sie die Zieldatei wählen, einschließlich der gemeinsamen Datei des Projekts, was die Regel für alle ändert; in der CLI schreibt Claude Code nur in Ihre lokale Datei.297* **Sie haben bei einer Berechtigungsabfrage „Yes, and don't ask again“ gewählt, werden aber für dasselbe Tool weiterhin gefragt.** Diese Auswahl hat eine `allow`-Regel in Ihrer lokalen Datei gespeichert, und eine `allow`-Regel dort hat keinen Vorrang vor einer `ask`-Regel aus einer Projekt- oder verwalteten Datei; [wie Berechtigungsregeln kombiniert werden](https://code.claude.com/docs/de/permissions.md#settings-precedence) erklärt die Reihenfolge. In der VS Code-Erweiterung können Sie in der Genehmigungskarte die Zieldatei auswählen, einschließlich der gemeinsamen Datei des Projekts, was die Regel für alle ändert; in der CLI schreibt Claude Code nur in Ihre lokale Datei.

298* **Die Allow-Regeln Ihrer Organisation gelten immer noch neben Ihren.** Das ist erwartet: Claude Code führt [`permissions.allow`](https://code.claude.com/docs/de/settings-reference#permissions-allow) über Bereiche zusammen, es sei denn, Ihre Organisation setzt [`allowManagedPermissionRulesOnly`](https://code.claude.com/docs/de/settings-reference#allowmanagedpermissionrulesonly).298* **Die allow-Regeln Ihrer Organisation gelten weiterhin neben Ihren eigenen.** Das ist erwartet: Claude Code führt [`permissions.allow`](https://code.claude.com/docs/de/settings-reference#permissions-allow) über Geltungsbereiche hinweg zusammen, es sei denn, Ihre Organisation setzt [`allowManagedPermissionRulesOnly`](https://code.claude.com/docs/de/settings-reference#allowmanagedpermissionrulesonly).

299 299 

300### Ausnahmen zur Priorität der verwalteten Einstellungen300### Ausnahmen vom Vorrang verwalteter Einstellungen

301 301 

302Für ein paar Schlüssel, deren Werte eine Sitzung einschränken, ehrt Claude Code einen restriktiven Wert aus einem Bereich, der ansonsten verwaltete Einstellungen nicht überschreiben könnte. Finden Sie den Schlüssel in dieser Tabelle, um zu sehen, welchen Wert er ehrt und von wo.302Bei einigen Schlüsseln, deren Werte eine Sitzung einschränken, berücksichtigt Claude Code einen restriktiven Wert aus einem Geltungsbereich, der verwaltete Einstellungen sonst nicht überschreiben könnte. Suchen Sie den Schlüssel in dieser Tabelle, um zu sehen, welchen Wert er von wo berücksichtigt.

303 303 

304| Schlüssel | Wert, den Claude Code ehrt | Notizen |304| Schlüssel | Wert, den Claude Code berücksichtigt | Hinweise |

305| :- | :- | :- |305| :- | :- | :- |

306| [`disableClaudeAiConnectors`](https://code.claude.com/docs/de/settings-reference#disableclaudeaiconnectors) | `true` aus jedem Bereich | Geehrt, auch wenn eine verwaltete Quelle `false` setzt |306| [`disableClaudeAiConnectors`](https://code.claude.com/docs/de/settings-reference#disableclaudeaiconnectors) | `true` aus jedem Geltungsbereich | Wird berücksichtigt, auch wenn eine verwaltete Quelle `false` setzt |

307| [`enableArtifact`](https://code.claude.com/docs/de/settings-reference#enableartifact) | `false` aus jedem Bereich und `disableArtifact: true` aus jedem Bereich | Geehrt, auch wenn eine verwaltete Quelle `true` setzt; nichts schaltet das [Artifact-Tool](https://code.claude.com/docs/de/artifacts.md#disable-artifacts) wieder ein. Erfordert Claude Code v2.1.242 oder später |307| [`enableArtifact`](https://code.claude.com/docs/de/settings-reference#enableartifact) | `false` aus jedem Geltungsbereich sowie `disableArtifact: true` aus jedem Geltungsbereich | Wird berücksichtigt, auch wenn eine verwaltete Quelle `true` setzt; nichts schaltet das [Artifact-Tool](https://code.claude.com/docs/de/artifacts.md#disable-artifacts) wieder ein. Erfordert Claude Code v2.1.242 oder höher |

308| [`isolatePeerMachines`](https://code.claude.com/docs/de/settings-reference#isolatepeermachines) | `true` aus jedem Bereich | Geehrt, auch wenn eine verwaltete Quelle `false` setzt |308| [`isolatePeerMachines`](https://code.claude.com/docs/de/settings-reference#isolatepeermachines) | `true` aus jedem Geltungsbereich | Wird berücksichtigt, auch wenn eine verwaltete Quelle `false` setzt |

309| [`permissions.blockReadsOutsideWorkingDirectories`](https://code.claude.com/docs/de/settings-reference#permissions-blockreadsoutsideworkingdirectories) | `true` aus jedem Bereich | Geehrt, auch wenn eine verwaltete Quelle `false` setzt. Erfordert Claude Code v2.1.257 oder später |309| [`permissions.blockReadsOutsideWorkingDirectories`](https://code.claude.com/docs/de/settings-reference#permissions-blockreadsoutsideworkingdirectories) | `true` aus jedem Geltungsbereich | Wird berücksichtigt, auch wenn eine verwaltete Quelle `false` setzt. Erfordert Claude Code v2.1.257 oder höher |

310| [`autoMode.classifyAllShell`](https://code.claude.com/docs/de/settings-reference#automode-classifyallshell) | `true` aus `~/.claude/settings.json` oder `--settings` | Geehrt, auch wenn eine verwaltete Quelle `false` setzt |310| [`autoMode.classifyAllShell`](https://code.claude.com/docs/de/settings-reference#automode-classifyallshell) | `true` aus `~/.claude/settings.json` oder `--settings` | Wird berücksichtigt, auch wenn eine verwaltete Quelle `false` setzt |

311| [`remoteControlAtStartup`](https://code.claude.com/docs/de/settings-reference#remotecontrolatstartup) | `false` aus `.claude/settings.json` oder `.claude/settings.local.json` | Geehrt, auch wenn eine verwaltete Quelle `true` setzt; ein Projekt- oder lokales `true` wird ignoriert |311| [`remoteControlAtStartup`](https://code.claude.com/docs/de/settings-reference#remotecontrolatstartup) | `false` aus `.claude/settings.json` oder `.claude/settings.local.json` | Wird berücksichtigt, auch wenn eine verwaltete Quelle `true` setzt; ein `true` im Projekt oder lokal wird ignoriert |

312| [`crossSessionInbound`](https://code.claude.com/docs/de/settings-reference#crosssessioninbound) | Ein strengerer Wert aus `.claude/settings.json` oder `.claude/settings.local.json`, auf der `accept` \< `hold` \< `refuse` Leiter | Geehrt über verwaltete, `--settings` und Benutzer-Werte; ein Projekt- oder lokaler Wert, der nicht strenger ist, wird ignoriert |312| [`crossSessionInbound`](https://code.claude.com/docs/de/settings-reference#crosssessioninbound) | Ein strengerer Wert aus `.claude/settings.json` oder `.claude/settings.local.json`, auf der Stufenleiter `accept` \< `hold` \< `refuse` | Hat Vorrang vor verwalteten Werten, `--settings` und Benutzerwerten; ein Projekt- oder lokaler Wert, der nicht strenger ist, wird ignoriert |

313| [`useAutoModeDuringPlan`](https://code.claude.com/docs/de/settings-reference#useautomodeduringplan) | `false` aus jeder verwalteten Quelle, `--settings`, `~/.claude/settings.json` oder `.claude/settings.local.json` | Geehrt, auch wenn die gewinnende verwaltete Quelle `true` setzt; ein `false` in `.claude/settings.json` wird ignoriert |313| [`useAutoModeDuringPlan`](https://code.claude.com/docs/de/settings-reference#useautomodeduringplan) | `false` aus jeder verwalteten Quelle, `--settings`, `~/.claude/settings.json` oder `.claude/settings.local.json` | Wird berücksichtigt, auch wenn die maßgebliche verwaltete Quelle `true` setzt; ein `false` in `.claude/settings.json` wird ignoriert |

314| [`syncClaudeAiSkills`](https://code.claude.com/docs/de/settings-reference#syncclaudeaiskills) | `false` aus jeder verwalteten Quelle, `--settings`, `~/.claude/settings.json` oder `.claude/settings.local.json` | Geehrt, auch wenn die gewinnende verwaltete Quelle `true` setzt; ein `false` in `.claude/settings.json` wird ignoriert |314| [`syncClaudeAiSkills`](https://code.claude.com/docs/de/settings-reference#syncclaudeaiskills) | `false` aus jeder verwalteten Quelle, `--settings`, `~/.claude/settings.json` oder `.claude/settings.local.json` | Wird berücksichtigt, auch wenn die maßgebliche verwaltete Quelle `true` setzt; ein `false` in `.claude/settings.json` wird ignoriert |

315| [`syncClaudeAiPlugins`](https://code.claude.com/docs/de/settings-reference#syncclaudeaiplugins) | `false` aus jeder verwalteten Quelle, `--settings`, `~/.claude/settings.json` oder `.claude/settings.local.json` | Geehrt, auch wenn die gewinnende verwaltete Quelle `true` setzt; ein `false` in `.claude/settings.json` wird ignoriert |315| [`syncClaudeAiPlugins`](https://code.claude.com/docs/de/settings-reference#syncclaudeaiplugins) | `false` aus jeder verwalteten Quelle, `--settings`, `~/.claude/settings.json` oder `.claude/settings.local.json` | Wird berücksichtigt, auch wenn die maßgebliche verwaltete Quelle `true` setzt; ein `false` in `.claude/settings.json` wird ignoriert |

316| [`maxEffortLevel`](https://code.claude.com/docs/de/settings-reference#maxeffortlevel) | Eine niedrigere Obergrenze aus jedem Bereich, einschließlich `--settings` | Geehrt, auch wenn die verwalteten Einstellungen, die Claude Code anwendet, eine höhere Obergrenze setzen; die niedrigste Obergrenze gilt. Erfordert Claude Code v2.1.267 oder später |316| [`maxEffortLevel`](https://code.claude.com/docs/de/settings-reference#maxeffortlevel) | Eine niedrigere Obergrenze aus jedem Geltungsbereich, einschließlich `--settings` | Wird berücksichtigt, auch wenn die von Claude Code angewendeten verwalteten Einstellungen eine höhere Obergrenze setzen; die niedrigste Obergrenze gilt. Erfordert Claude Code v2.1.267 oder höher |

317 317 

318Eine App, die Claude Code in sich selbst ausführt und [`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](https://code.claude.com/docs/de/env-vars) setzt, ist auch eine Ausnahme. Claude Code nimmt die Modell-Konfiguration dieser App über die `model`, `fallbackModel`, `modelPicker` und `modelOverrides` Schlüssel aus jeder verwalteten Quelle, und über die Modell-Auswahl-Variablen in einem verwalteten `env` Block, wie `ANTHROPIC_MODEL` und die `ANTHROPIC_DEFAULT_*_MODEL` Familie. Claude Code behält eine verwaltete [`availableModels`](https://code.claude.com/docs/de/settings-reference#availablemodels) Allowlist in Kraft, es sei denn, die App liefert ihre eigene.318Eine App, die Claude Code in sich selbst ausführt und [`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](https://code.claude.com/docs/de/env-vars) setzt, ist ebenfalls eine Ausnahme. Claude Code übernimmt die Modellkonfiguration dieser App anstelle der Schlüssel `model`, `fallbackModel`, `modelPicker` und `modelOverrides` aus jeder verwalteten Quelle sowie anstelle der Variablen zur Modellauswahl in einem verwalteten `env`-Block, etwa `ANTHROPIC_MODEL` und die Familie `ANTHROPIC_DEFAULT_*_MODEL`. Claude Code hält eine verwaltete [`availableModels`](https://code.claude.com/docs/de/settings-reference#availablemodels)-Allowlist in Kraft, sofern die App keine eigene liefert.

319 319 

320## Einstellungen in Cloud-Sitzungen320## Einstellungen in Cloud-Sitzungen

321 321 

settings-reference.md +233 −232

Details

266 266 

267## Modell und Antworten267## Modell und Antworten

268 268 

269Wählen Sie, welche Modelle Claude Code verwendet und wie es antwortet. Informationen darüber, wie diese Einstellungen mit dem Befehl `/model` und Umgebungsvariablen interagieren, finden Sie unter [Modellkonfiguration](https://code.claude.com/docs/de/model-config.md).269Legen Sie fest, welche Modelle Claude Code verwendet und wie es antwortet. Wie diese Einstellungen mit dem Befehl `/model` und Umgebungsvariablen zusammenwirken, erfahren Sie unter [Modellkonfiguration](https://code.claude.com/docs/de/model-config.md).

270 270 

271### `advisorModel`271### `advisorModel`

272 272 

273Wählen Sie, welches Modell antwortet, wenn Claude das serverseitige [Advisor-Tool](https://code.claude.com/docs/de/advisor.md) 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](https://code.claude.com/docs/de/advisor.md#choose-an-advisor-model).273Wählen Sie, welches Modell antwortet, wenn Claude das serverseitige [Advisor-Tool](https://code.claude.com/docs/de/advisor.md) aufruft. Entfernen Sie den Wert, um den Advisor auszuschalten. Der Advisor muss mindestens so leistungsfähig sein wie Ihr Hauptmodell. Unter [Advisor-Modell auswählen](https://code.claude.com/docs/de/advisor.md#choose-an-advisor-model) finden Sie die zulässigen Kombinationen und was passiert, wenn Sie eine nicht zulässige wählen.

274 274 

275Sie 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](https://code.claude.com/docs/de/remote-control.md)-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.275Normalerweise bearbeiten Sie diesen Schlüssel nicht von Hand. Führen Sie `/advisor` aus, um eine Auswahl zu öffnen, die die aktuelle Wahl, die Modelle, die als Advisor dienen können, und **No advisor** anzeigt. Claude Code speichert Ihre Auswahl in diesem Schlüssel in `~/.claude/settings.json`. Wenn Sie die Auswahl über einen [Remote Control](https://code.claude.com/docs/de/remote-control.md)-Client oder in einer Sitzung treffen, die an einen Remote-Worker angebunden ist, gilt sie nur für diese Sitzung und ändert diesen Schlüssel nicht.

276 276 

277Wenn Ihr Konto die [Zustimmung zu Nutzungsguthaben](https://code.claude.com/docs/de/advisor.md#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.277Wenn Ihr Konto die [Zustimmung zum Nutzungsguthaben](https://code.claude.com/docs/de/advisor.md#fable-advisor-and-usage-credits) erfordert, erteilen Sie diese zuerst, indem Sie `/model fable` ausführen. Bis dahin speichert die Auswahl von Fable in `/advisor` nichts, und Claude Code weist Sie an, zuerst `/model fable` auszuführen.

278 278 

279* **Geltungsbereich**: [`Beliebige Datei`](#scopes)279* **Geltungsbereich**: [`Any file`](#scopes)

280* **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"`280* **Typ**: String, einer der Aliase `"fable"`, `"opus"` oder `"sonnet"`, die auf die aktuelle Standardversion der jeweiligen Modellfamilie in Claude Code aufgelöst werden, oder eine vollständige Modell-ID wie `"claude-opus-5-5"`

281* **Standard**: nicht gesetzt, daher ist der Advisor ausgeschaltet281* **Standard**: nicht gesetzt, der Advisor ist also ausgeschaltet

282* **Überschreibungen pro Sitzung**: `--advisor` hat für eine Sitzung Vorrang vor diesem Schlüssel. [`CLAUDE_CODE_DISABLE_ADVISOR_TOOL`](https://code.claude.com/docs/de/env-vars) schaltet den Advisor aus, und dieser Schlüssel kann ihn nicht wieder einschalten282* **Überschreibungen pro Sitzung**: `--advisor` hat für eine Sitzung Vorrang vor diesem Schlüssel. [`CLAUDE_CODE_DISABLE_ADVISOR_TOOL`](https://code.claude.com/docs/de/env-vars) schaltet den Advisor aus, und dieser Schlüssel kann ihn nicht wieder einschalten

283 283 

284```json settings.json theme={null}284```json settings.json theme={null}


287}287}

288```288```

289 289 

290Der Schlüssel hat keine Auswirkung auf Provider, bei denen der Advisor [nicht verfügbar](https://code.claude.com/docs/de/advisor.md#requirements) ist, wie Amazon Bedrock und Claude Platform auf AWS. `"fable"` erfordert [Fable-Zugriff](https://code.claude.com/docs/de/advisor.md#choose-an-advisor-model).290Der Schlüssel hat keine Wirkung bei Anbietern, bei denen der Advisor [nicht verfügbar ist](https://code.claude.com/docs/de/advisor.md#requirements), etwa Amazon Bedrock und Claude Platform on AWS. `"fable"` erfordert [Fable-Zugriff](https://code.claude.com/docs/de/advisor.md#choose-an-advisor-model).

291 291 

292### `alwaysThinkingEnabled`292### `alwaysThinkingEnabled`

293 293 

294Deaktivieren Sie [Extended Thinking](https://code.claude.com/docs/de/model-config.md#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.294Schalten Sie [Extended Thinking](https://code.claude.com/docs/de/model-config.md#extended-thinking) für jede Sitzung aus, indem Sie diesen Wert auf `false` setzen. Thinking ist standardmäßig eingeschaltet, daher ändert `true` nichts. Die meisten Benutzer setzen dies über `/config`, statt die Datei zu bearbeiten.

295 295 

296Bei Modellen, die immer nachdenken, wie Opus 5.5, Sonnet 5.5, Haiku 5.5 und die Fable-Modelle, hat `false` keine Auswirkung. Bei [Drittanbieter-Providern](https://code.claude.com/docs/de/third-party-integrations.md) 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](https://code.claude.com/docs/de/errors.md#effort-isnt-available-with-thinking-turned-off), wie Opus 5.296Bei Modellen, die immer denken, etwa Opus 5.5, Sonnet 5.5, Haiku 5.5 und den Fable-Modellen, hat `false` keine Wirkung. Bei [Drittanbietern](https://code.claude.com/docs/de/third-party-integrations.md) lässt Claude Code den Parameter `thinking` weg, statt Thinking auszuschalten, sodass Modelle mit adaptivem Reasoning weiterhin denken können. Wenn Thinking über die Anthropic API ausgeschaltet ist, sendet Claude Code an Modelle, von denen es weiß, dass sie [diese Kombination nicht akzeptieren](https://code.claude.com/docs/de/errors.md#effort-isnt-available-with-thinking-turned-off), etwa Opus 5, den Effort `high` statt einer höheren Stufe.

297 297 

298* **Geltungsbereich**: [`Beliebige Datei`](#scopes)298* **Geltungsbereich**: [`Any file`](#scopes)

299* **Typ**: Boolean299* **Typ**: Boolean

300 * `true`: keine Auswirkung; Thinking ist bereits aktiviert300 * `true`: keine Wirkung; Thinking ist bereits eingeschaltet

301 * `false`: Claude Code deaktiviert Extended Thinking für jede Sitzung301 * `false`: Claude Code schaltet Extended Thinking für jede Sitzung aus

302* **Standard**: nicht gesetzt, daher ist Thinking für Modelle aktiviert, die es unterstützen302* **Standard**: nicht gesetzt, Thinking ist also bei Modellen eingeschaltet, die es unterstützen

303* **Überschreibungen pro Sitzung**: [`MAX_THINKING_TOKENS`](https://code.claude.com/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 ignoriert303* **Überschreibungen pro Sitzung**: [`MAX_THINKING_TOKENS`](https://code.claude.com/docs/de/env-vars) hat für eine Sitzung Vorrang vor diesem Schlüssel: `0` schaltet Thinking aus, mit denselben Modell- und Anbietergrenzen wie `false`, und ein positiver Wert schaltet Thinking ein, selbst wenn dieser Schlüssel `false` ist. Bei Modellen mit adaptivem Reasoning wird die Zahl selbst ignoriert

304 304 

305```json settings.json theme={null}305```json settings.json theme={null}

306{306{


310 310 

311### `availableModels`311### `availableModels`

312 312 

313Beschränken Sie, welche Modelle Personen für die Hauptsitzung, [Subagenten](https://code.claude.com/docs/de/sub-agents.md), [Skills](https://code.claude.com/docs/de/skills.md) und den [Advisor](https://code.claude.com/docs/de/advisor.md) 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).313Beschränken Sie, welche Modelle Benutzer für die Hauptsitzung, [Subagenten](https://code.claude.com/docs/de/sub-agents.md), [Skills](https://code.claude.com/docs/de/skills.md) und den [Advisor](https://code.claude.com/docs/de/advisor.md) auswählen können. Eine verwaltete Liste schränkt `/model`, `--model` und den Schlüssel `model` in den eigenen Dateien eines Entwicklers ein; ein Modell außerhalb der Liste kann nicht ausgewählt werden. Mit dem standardmäßigen Präfixabgleich wirkt sich dies allein nicht auf die Option „Default“ aus; kombinieren Sie es dafür mit [`enforceAvailableModels`](#enforceavailablemodels).

314 314 

315* **Geltungsbereich**: [`Beliebige Datei`](#scopes). Stellen Sie es in verwalteten Einstellungen bereit, um es für eine Organisation durchzusetzen.315* **Geltungsbereich**: [`Any file`](#scopes). Stellen Sie es in verwalteten Einstellungen bereit, um es für eine Organisation durchzusetzen.

316* **Typ**: Array von Modellaliasen oder IDs316* **Typ**: Array von Modell-Aliasen oder -IDs

317* **Standard**: nicht gesetzt, daher sind alle Modelle verfügbar317* **Standard**: nicht gesetzt, jedes Modell ist also verfügbar

318 318 

319Dieses Beispiel ermöglicht es Personen, nur Sonnet- und Haiku-Modelle auszuwählen:319In diesem Beispiel können Benutzer nur Sonnet- und Haiku-Modelle auswählen:

320 320 

321```json settings.json theme={null}321```json settings.json theme={null}

322{322{


324}324}

325```325```

326 326 

327Ein 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](https://code.claude.com/docs/de/model-config.md#restrict-model-selection). Informationen zu Provider-IDs von Drittanbietern finden Sie unter [Modelle für Drittanbieter-Bereitstellungen festlegen](https://code.claude.com/docs/de/model-config.md#pin-models-for-third-party-deployments).327Ein Modell-ID-Eintrag wie `"claude-opus-5"` erlaubt auch spätere Versionen, die ihn erweitern, etwa 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 beschränken](https://code.claude.com/docs/de/model-config.md#restrict-model-selection). Zu IDs von Drittanbietern siehe [Modelle für Drittanbieter-Bereitstellungen festlegen](https://code.claude.com/docs/de/model-config.md#pin-models-for-third-party-deployments).

328 328 

329### `availableModelsMatch`329### `availableModelsMatch`

330 330 

331Legen 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.331Legen 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 aufführen. Erfordert Claude Code v2.1.283 oder höher.

332 332 

333* **Geltungsbereich**: [`Verwaltet`](#scopes). Claude Code ignoriert den Schlüssel in Benutzer-, Projekt- und lokalen Einstellungen sowie in `--settings` mit einer Warnung333* **Geltungsbereich**: [`Managed`](#scopes). Claude Code ignoriert den Schlüssel in Benutzer-, Projekt- und lokalen Einstellungen sowie in `--settings` und gibt eine Warnung aus

334* **Typ**: String, einer von:334* **Typ**: String, einer der Werte:

335 * `"prefix"`: ein Modell-ID-Eintrag erlaubt seine Version und jede Modell-ID, die ihn um ein weiteres Segment erweitert335 * `"prefix"`: Ein Modell-ID-Eintrag erlaubt seine Version und jede Modell-ID, die ihn um ein weiteres Segment erweitert

336 * `"exact"`: ein Modell-ID-Eintrag erlaubt nur die genannte Version, sodass `"claude-opus-5"` Opus 5 erlaubt, aber nicht `claude-opus-5-5`. Ein Eintrag wie `"claude-opus-4-5"` erlaubt auch seine datierte Anthropic-Modell-ID `claude-opus-4-5-20251101`. Ein Familienalias wie `"opus"` erlaubt weiterhin die gesamte Familie, und Einträge `best`, `opusplan` und `default` werden ignoriert336 * `"exact"`: Ein Modell-ID-Eintrag erlaubt nur die genannte Version, sodass `"claude-opus-5"` Opus 5 erlaubt, aber nicht `claude-opus-5-5`. Ein Eintrag wie `"claude-opus-4-5"` erlaubt auch seine datierte Anthropic-Modell-ID `claude-opus-4-5-20251101`. Ein Familienalias wie `"opus"` erlaubt weiterhin die gesamte Familie, und die Einträge `best`, `opusplan` und `default` werden ignoriert

337* **Standard**: `"prefix"`337* **Standard**: `"prefix"`

338 338 

339Dieses Beispiel erlaubt Opus 5 und Sonnet 5, aber keine spätere Version eines der beiden:339Dieses Beispiel erlaubt Opus 5 und Sonnet 5 und keine spätere Version der beiden:

340 340 

341```json managed-settings.json theme={null}341```json managed-settings.json theme={null}

342{342{


345}345}

346```346```

347 347 

348Mit `"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](https://code.claude.com/docs/de/model-config.md#block-specific-models-or-versions).348Mit `"exact"` ist auch die Option „Default“ auf die aufgeführten Modelle beschränkt, sobald die Liste mindestens ein Modell oder eine Familie nennt. Siehe [Bestimmte Modelle oder Versionen blockieren](https://code.claude.com/docs/de/model-config.md#block-specific-models-or-versions).

349 349 

350### `deniedModels`350### `deniedModels`

351 351 

352Blockieren 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](https://code.claude.com/docs/de/model-config.md#block-specific-models-or-versions) beschrieben. Erfordert Claude Code v2.1.283 oder später.352Blockieren Sie bestimmte Modelle, mit oder ohne [`availableModels`](#availablemodels)-Allowlist und selbst wenn diese Liste sie erlaubt. Claude Code blendet ein blockiertes Modell in der `/model`-Auswahl aus, und das Modell kann nirgends ausgewählt werden, wo `availableModels` durchgesetzt wird. Auch eine Sitzung mit der Option „Default“ führt kein blockiertes Modell aus, wie unter [Bestimmte Modelle oder Versionen blockieren](https://code.claude.com/docs/de/model-config.md#block-specific-models-or-versions) beschrieben. Erfordert Claude Code v2.1.283 oder höher.

353 353 

354* **Geltungsbereich**: [`Verwaltet`](#scopes). Claude Code ignoriert den Schlüssel in Benutzer-, Projekt- und lokalen Einstellungen sowie in `--settings` mit einer Warnung354* **Geltungsbereich**: [`Managed`](#scopes). Claude Code ignoriert den Schlüssel in Benutzer-, Projekt- und lokalen Einstellungen sowie in `--settings` und gibt eine Warnung aus

355* **Typ**: Array von Modellaliasen oder IDs355* **Typ**: Array von Modell-Aliasen oder -IDs

356 * Ein Familienalias wie `"opus"` blockiert jedes Modell dieser Familie356 * Ein Familienalias wie `"opus"` blockiert jedes Modell dieser Familie

357 * Eine Modell-ID wie `"claude-opus-5-5"` blockiert diese Version in jeder Schreibweise, einschließlich datierter und providerspezifischer IDs357 * Eine Modell-ID wie `"claude-opus-5-5"` blockiert diese Version in jeder Schreibweise, einschließlich datierter und anbieterspezifischer IDs

358 * 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 blockieren358 * Eine Modell-ID ohne Nebenversion, etwa `"claude-opus-5"`, blockiert auch spätere Nebenversionen wie Opus 5.5. Schreiben Sie `"claude-opus-5-0"`, um nur Opus 5 zu blockieren

359 * Einträge `best`, `opusplan` und `default` werden ignoriert359 * Die Einträge `best`, `opusplan` und `default` werden ignoriert

360* **Standard**: nicht gesetzt, daher ist kein Modell blockiert360* **Standard**: nicht gesetzt, es ist also kein Modell blockiert

361 361 

362Dieses Beispiel erlaubt Opus- und Sonnet-Modelle und blockiert Opus 5.5:362Dieses Beispiel erlaubt Opus- und Sonnet-Modelle und blockiert Opus 5.5:

363 363 


372 372 

373### `effortLevel`373### `effortLevel`

374 374 

375Legen Sie eine Standard-[Effort-Stufe](https://code.claude.com/docs/de/model-config.md#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.375Legen Sie eine Standard-[Effort-Stufe](https://code.claude.com/docs/de/model-config.md#adjust-effort-level) für Modelle fest, für die Sie keine Stufe gespeichert haben. Niedrigere Stufen sind bei einfachen Aufgaben schneller und günstiger, und höhere Stufen denken bei komplexen Problemen gründlicher nach.

376 376 

377Wenn 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.377Wenn Sie `/effort low`, `medium`, `high` oder `xhigh` in einer interaktiven Sitzung auf Ihrem Rechner ausführen, speichert Claude Code die Stufe für das aktive Modell unter [`modelSettings`](#modelsettings), statt diesen Schlüssel zu schreiben. Vor v2.1.251 schrieb `/effort` diesen Schlüssel.

378 378 

379Innerhalb derselben Einstellungsdatei verwendet Claude Code die gespeicherte Stufe eines Modells anstelle dieses Schlüssels. [`modelSettings`](#modelsettings) beschreibt die dateiübergreifende Rangfolge.379Innerhalb derselben Einstellungsdatei verwendet Claude Code die gespeicherte Stufe eines Modells statt dieses Schlüssels. [`modelSettings`](#modelsettings) beschreibt die Rangfolge über Dateien hinweg.

380 380 

381In 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](https://code.claude.com/docs/de/model-config.md#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.381In einer Sitzung, die an einen Remote-Worker angebunden ist, in einem `-p`-Lauf und im Agent SDK gilt `/effort` nur für diese Sitzung. [Effort-Stufe anpassen](https://code.claude.com/docs/de/model-config.md#adjust-effort-level) listet die interaktiven Auswahlen auf, die ebenfalls nur für diese Sitzung gelten. Die Meldung, die `/effort` ausgibt, zeigt an, was geschehen ist.

382 382 

383* **Geltungsbereich**: [`Beliebige Datei`](#scopes)383* **Geltungsbereich**: [`Any file`](#scopes)

384* **Typ**: String, einer von:384* **Typ**: String, einer der Werte:

385 * `"low"`: das geringste Reasoning, für kurze, klar umrissene, latenzempfindliche Aufgaben, die keine hohe Intelligenz erfordern385 * `"low"`: das geringste Reasoning, für kurze, klar umrissene, latenzkritische Aufgaben, die keine hohe Intelligenz erfordern

386 * `"medium"`: reduziert die Token-Nutzung für kostensensitive Arbeiten, die etwas Intelligenz opfern können386 * `"medium"`: reduziert den Token-Verbrauch für kostensensible Arbeit, bei der etwas Intelligenz geopfert werden kann

387 * `"high"`: balanciert Token-Nutzung und Intelligenz387 * `"high"`: ausgewogenes Verhältnis von Token-Verbrauch und Intelligenz

388 * `"xhigh"`: tieferes Reasoning bei höherem Token-Verbrauch388 * `"xhigh"`: gründlicheres Reasoning bei höherem Token-Verbrauch

389* **Standard**: nicht gesetzt389* **Standard**: nicht gesetzt

390* **Überschreibungen pro Sitzung**: `--effort` hat für eine Sitzung Vorrang vor diesem Schlüssel, und [`CLAUDE_CODE_EFFORT_LEVEL`](https://code.claude.com/docs/de/env-vars) hat Vorrang vor beiden390* **Überschreibungen pro Sitzung**: `--effort` hat für eine Sitzung Vorrang vor diesem Schlüssel, und [`CLAUDE_CODE_EFFORT_LEVEL`](https://code.claude.com/docs/de/env-vars) hat Vorrang vor beiden

391 391 


395}395}

396```396```

397 397 

398In 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.398In 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 vorher galt: bei Opus 5, Fable 5.1 und früheren Modellen. Opus 5.5 und danach 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.

399 399 

400### `enforceAvailableModels`400### `enforceAvailableModels`

401 401 

402Die Auswahl `/model` hat eine Option **Standard**, und unter [Einstellung des Modells `default`](https://code.claude.com/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.402Die `/model`-Auswahl hat eine Option **Default**, und [`default`-Modelleinstellung](https://code.claude.com/docs/de/model-config#default-model-setting) beschreibt, auf welches 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 **Default** weiterhin auf ein Modell außerhalb der Liste aufgelöst werden kann. Dieser Schlüssel schließt diese Lücke. Erfordert Claude Code v2.1.175 oder höher.

403 403 

404Wenn Ihre Organisation verwaltete Einstellungen bereitstellt, liest Claude Code diesen Schlüssel nur aus der verwalteten Quelle und ignoriert ihn in Ihren anderen Dateien.404Wenn Ihre Organisation verwaltete Einstellungen bereitstellt, liest Claude Code diesen Schlüssel ausschließlich aus der verwalteten Quelle und ignoriert ihn in Ihren anderen Dateien.

405 405 

406Wie dieser Schlüssel bei den Modellprüfungen beim Start angewendet wird, erfahren Sie unter [Amazon Bedrock](https://code.claude.com/docs/de/amazon-bedrock.md#when-your-organization-enforces-a-model-allowlist) und [Google Cloud's Agent Platform](https://code.claude.com/docs/de/google-vertex-ai.md#when-your-organization-enforces-a-model-allowlist).406Wie dieser Schlüssel auf die Modellprüfungen beim Start angewendet wird, erfahren Sie unter [Amazon Bedrock](https://code.claude.com/docs/de/amazon-bedrock.md#when-your-organization-enforces-a-model-allowlist) und [Google Cloud's Agent Platform](https://code.claude.com/docs/de/google-vertex-ai.md#when-your-organization-enforces-a-model-allowlist).

407 407 

408* **Geltungsbereich**: [`Beliebige Datei`](#scopes)408* **Geltungsbereich**: [`Any file`](#scopes)

409* **Typ**: Boolean409* **Typ**: Boolean

410 * `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 auf410 * `true`: Wenn **Default** auf ein Modell außerhalb von `availableModels` aufgelöst würde, löst Claude Code es auf das erste verfügbare Modell der Liste auf

411 * `false`: dieser Schlüssel ändert nicht, wie **Standard** aufgelöst wird411 * `false`: Dieser Schlüssel ändert nicht, wie **Default** aufgelöst wird

412* **Standard**: `false`412* **Standard**: `false`

413 413 

414Dieses Beispiel beschränkt benannte Auswahlmöglichkeiten auf Sonnet- und Haiku-Modelle und lässt **Standard** zum ersten verfügbaren dieser Modelle auflösen:414Dieses Beispiel beschränkt benannte Auswahlen auf Sonnet- und Haiku-Modelle und sorgt dafür, dass **Default** auf das erste verfügbare davon aufgelöst wird:

415 415 

416```json settings.json theme={null}416```json settings.json theme={null}

417{417{


420}420}

421```421```

422 422 

423Dieser Schlüssel hat keine Auswirkung, wenn `availableModels` nicht gesetzt oder leer ist. Siehe [Allowlist für das Standardmodell durchsetzen](https://code.claude.com/docs/de/model-config.md#enforce-the-allowlist-for-the-default-model). Erfordert Claude Code v2.1.175 oder später.423Dieser Schlüssel hat keine Wirkung, wenn `availableModels` nicht gesetzt oder leer ist. Siehe [Allowlist für das Default-Modell durchsetzen](https://code.claude.com/docs/de/model-config.md#enforce-the-allowlist-for-the-default-model). Erfordert Claude Code v2.1.175 oder höher.

424 424 

425### `fallbackModel`425### `fallbackModel`

426 426 

427Benennen 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.427Nennen Sie Ersatzmodelle, 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 der Kette und zeigt einen Hinweis an. Ohne 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.

428 428 

429Ein Wechsel bedeutet einen Turn mit einem kalten [Prompt-Cache](https://code.claude.com/docs/de/prompt-caching.md#switching-models) auf dem Fallback-Modell; Ihre nächste Nachricht versucht zuerst wieder das primäre Modell.429Ein Wechsel bedeutet einen Turn mit kaltem [Prompt-Cache](https://code.claude.com/docs/de/prompt-caching.md#switching-models) auf dem Fallback-Modell; Ihre nächste Nachricht versucht zuerst wieder das primäre Modell.

430 430 

431* **Geltungsbereich**: [`Beliebige Datei`](#scopes)431* **Geltungsbereich**: [`Any file`](#scopes)

432* **Typ**: Array von Modellaliasen oder IDs; `"default"` wird zum Standardmodell erweitert432* **Typ**: Array von Modell-Aliasen oder -IDs; `"default"` wird zum Standardmodell erweitert

433* **Standard**: nicht gesetzt, daher wird eine fehlgeschlagene Anfrage nicht mit einem anderen Modell erneut versucht433* **Standard**: nicht gesetzt, eine fehlgeschlagene Anfrage wird also nicht mit einem anderen Modell erneut versucht

434* **Überschreibungen pro Sitzung**: `--fallback-model` hat für eine Sitzung Vorrang vor diesem Schlüssel434* **Überschreibungen pro Sitzung**: `--fallback-model` hat für eine Sitzung Vorrang vor diesem Schlüssel

435 435 

436Dieses Beispiel versucht zuerst Sonnet 5, dann Haiku 4.5, wenn Ihr primäres Modell fehlschlägt:436Dieses Beispiel versucht zuerst Sonnet 5 und dann Haiku 4.5, wenn Ihr primäres Modell fehlschlägt:

437 437 

438```json settings.json theme={null}438```json settings.json theme={null}

439{439{


441}441}

442```442```

443 443 

444Im 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](https://code.claude.com/docs/de/model-config.md#fallback-model-chains).444Anders als die 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 gesamte Kette. Wenn Ihre Projektdatei `["claude-sonnet-5"]` und Ihre Benutzerdatei `["claude-haiku-4-5"]` setzt, lautet die Kette nur `["claude-sonnet-5"]`. Claude Code behält höchstens drei verschiedene zulässige Modelle aus der Liste und ignoriert den Rest. Siehe [Fallback-Modellketten](https://code.claude.com/docs/de/model-config.md#fallback-model-chains).

445 445 

446### `fastMode`446### `fastMode`

447 447 

448Aktivieren Sie den [Fast-Modus](https://code.claude.com/docs/de/fast-mode.md) 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](https://code.claude.com/docs/de/fast-mode.md#switch-models-while-fast-mode-is-on).448Schalten Sie den [Fast-Modus](https://code.claude.com/docs/de/fast-mode.md) für Sitzungen ein, in denen er verfügbar ist, etwa für interaktive Arbeit wie schnelle Iteration oder Live-Debugging, bei der Ihnen Geschwindigkeit höhere Kosten pro Token wert ist. Normalerweise bearbeiten Sie diesen Schlüssel nicht von Hand: Das Ausführen von `/fast` schreibt `fastMode: true` in `~/.claude/settings.json`, und erneutes 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 einschalten, wechseln Sie zu Opus, und ein Wechsel zu einem nicht unterstützten Modell schaltet ihn aus. Siehe [Modelle wechseln, während der Fast-Modus eingeschaltet ist](https://code.claude.com/docs/de/fast-mode.md#switch-models-while-fast-mode-is-on).

449 449 

450* **Geltungsbereich**: [`Beliebige Datei`](#scopes)450* **Geltungsbereich**: [`Any file`](#scopes)

451* **Typ**: Boolean451* **Typ**: Boolean

452 * `true`: Claude Code aktiviert den Fast-Modus für Sitzungen, in denen er verfügbar ist452 * `true`: Claude Code schaltet den Fast-Modus für Sitzungen ein, in denen er verfügbar ist

453 * `false`: Der Fast-Modus bleibt ausgeschaltet453 * `false`: Der Fast-Modus bleibt ausgeschaltet

454* **Standard**: nicht gesetzt, daher ist der Fast-Modus ausgeschaltet454* **Standard**: nicht gesetzt, der Fast-Modus ist also ausgeschaltet

455* **Überschreibungen pro Sitzung**: [`CLAUDE_CODE_DISABLE_FAST_MODE`](https://code.claude.com/docs/de/env-vars) schaltet den Fast-Modus für eine Sitzung aus, und dieser Schlüssel kann ihn nicht wieder einschalten455* **Überschreibungen pro Sitzung**: [`CLAUDE_CODE_DISABLE_FAST_MODE`](https://code.claude.com/docs/de/env-vars) schaltet den Fast-Modus für eine Sitzung aus, und dieser Schlüssel kann ihn nicht wieder einschalten

456 456 

457```json settings.json theme={null}457```json settings.json theme={null}


462 462 

463### `fastModePerSessionOptIn`463### `fastModePerSessionOptIn`

464 464 

465Normalerweise 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.465Normalerweise speichert das Ausführen von `/fast` den Schlüssel [`fastMode`](#fastmode) in den Benutzereinstellungen einer Person, sodass der Fast-Modus zu Beginn jeder späteren Sitzung eingeschaltet ist. Setzen Sie diesen Schlüssel auf `true`, um das zu verhindern: Ein gespeichertes `fastMode: true` schaltet den Fast-Modus beim Sitzungsstart nicht mehr ein, und jede Person muss `/fast` in jeder Sitzung ausführen, in der sie ihn nutzen möchte. Claude Code belässt den Schlüssel `fastMode` in der Datei, sodass das Ausschalten dieses Schlüssels das alte Verhalten wiederherstellt.

466 466 

467Owner in Team- oder Enterprise-Plänen können ihn organisationsweit über [serverseitig verwaltete Einstellungen](https://code.claude.com/docs/de/server-managed-settings.md) 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](https://code.claude.com/docs/de/headless.md), die [VS Code-Erweiterung](https://code.claude.com/docs/de/vs-code.md) und [Cloud-Sitzungen](https://code.claude.com/docs/de/claude-code-on-the-web.md).467Owner in Team- oder Enterprise-Plänen können ihn organisationsweit über [serververwaltete Einstellungen](https://code.claude.com/docs/de/server-managed-settings.md) 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 betrifft den [nicht interaktiven Modus](https://code.claude.com/docs/de/headless.md), die [VS Code-Erweiterung](https://code.claude.com/docs/de/vs-code.md) und [Cloud-Sitzungen](https://code.claude.com/docs/de/claude-code-on-the-web.md).

468 468 

469* **Geltungsbereich**: [`Beliebige Datei`](#scopes)469* **Geltungsbereich**: [`Any file`](#scopes)

470* **Typ**: Boolean470* **Typ**: Boolean

471 * `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üssel471 * `true`: Ein gespeichertes `fastMode: true` schaltet den Fast-Modus beim Sitzungsstart nicht mehr ein, sodass jede Person `/fast` in jeder Sitzung ausführt, in der sie ihn nutzen möchte; ein mit `--settings` übergebenes `fastMode: true` gilt weiterhin für diese Sitzung, sofern verwaltete Einstellungen diesen Schlüssel nicht setzen

472 * `false`: ein gespeichertes `fastMode: true` aktiviert den Fast-Modus zu Beginn jeder späteren Sitzung472 * `false`: Ein gespeichertes `fastMode: true` schaltet den Fast-Modus zu Beginn jeder späteren Sitzung ein

473* **Standard**: `false`473* **Standard**: `false`

474 474 

475```json settings.json theme={null}475```json settings.json theme={null}


478}478}

479```479```

480 480 

481Siehe [Opt-in pro Sitzung erforderlich](https://code.claude.com/docs/de/fast-mode.md#require-per-session-opt-in).481Siehe [Opt-in pro Sitzung verlangen](https://code.claude.com/docs/de/fast-mode.md#require-per-session-opt-in).

482 482 

483### `language`483### `language`

484 484 

485Lassen 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](https://code.claude.com/docs/de/voice-dictation.md#change-the-dictation-language) fest, das eine feste Liste von [unterstützten Diktiersprachen](https://code.claude.com/docs/de/voice-dictation.md#change-the-dictation-language) hat, sowie für automatisch generierte Sitzungstitel.485Lassen Sie Claude standardmäßig in einer anderen Sprache als Englisch antworten. Für Antworten gibt es keine feste Liste: Claude Code übergibt den Wert unverändert an Claude als Anweisung, immer in dieser Sprache zu antworten, sodass jeder Sprachname funktioniert, den Claude lesen kann. Claude Code prüft den Wert nicht, sodass ein falsch geschriebener Name Claude unverändert erreicht, statt einen Fehler auszulösen. Derselbe Wert legt die Sprache für die [Sprachdiktierfunktion](https://code.claude.com/docs/de/voice-dictation.md#change-the-dictation-language) fest, für die es eine feste Liste [unterstützter Diktiersprachen](https://code.claude.com/docs/de/voice-dictation.md#change-the-dictation-language) gibt, sowie für automatisch generierte Sitzungstitel.

486 486 

487* **Geltungsbereich**: [`Beliebige Datei`](#scopes)487* **Geltungsbereich**: [`Any file`](#scopes)

488* **Typ**: String, jeder Sprachname, wie `"japanese"`, `"spanish"` oder `"french"`; Claude Code überprüft ihn nicht488* **Typ**: String, ein beliebiger Sprachname wie `"japanese"`, `"spanish"` oder `"french"`; Claude Code validiert ihn nicht

489* **Standard**: nicht gesetzt; Sitzungstitel entsprechen dann der Sprache Ihrer Konversation489* **Standard**: nicht gesetzt; Sitzungstitel entsprechen dann der Sprache Ihrer Konversation

490 490 

491```json settings.json theme={null}491```json settings.json theme={null}


496 496 

497### `maxEffortLevel`497### `maxEffortLevel`

498 498 

499Begrenzen Sie die [Effort-Stufe](https://code.claude.com/docs/de/model-config.md#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`](https://code.claude.com/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.499Begrenzen Sie die [Effort-Stufe](https://code.claude.com/docs/de/model-config.md#adjust-effort-level), die eine Sitzung verwenden kann, wobei niedrigere Stufen verfügbar bleiben. Jede höhere Stufe läuft stattdessen mit der Obergrenze, auch eine aus `/effort`, der `/model`-Auswahl, `--effort`, [`CLAUDE_CODE_EFFORT_LEVEL`](https://code.claude.com/docs/de/env-vars), dem Frontmatter-Feld `effort` eines Skills oder Subagenten oder dem eigenen Standard des Modells. Claude Code wendet die Obergrenze selbst vor jeder Anfrage an, sodass sie bei jedem Anbieter gilt, einschließlich Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry. Erfordert Claude Code v2.1.267 oder höher.

500 500 

501* **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 werden501* **Geltungsbereich**: [`Any file`](#scopes). Stellen Sie es in verwalteten Einstellungen bereit, um es für eine Organisation durchzusetzen. Wenn mehrere Geltungsbereiche eine Obergrenze setzen, gilt die niedrigste, sodass eine in einem Geltungsbereich gesetzte Obergrenze nicht von einem anderen angehoben werden kann

502* **Typ**: String, einer von `"low"`, `"medium"`, `"high"`, `"xhigh"` oder `"max"`. Ein Wert `"max"` setzt keine Obergrenze502* **Typ**: String, einer der Werte `"low"`, `"medium"`, `"high"`, `"xhigh"` oder `"max"`. Der Wert `"max"` setzt keine Obergrenze

503* **Standard**: nicht gesetzt, daher gilt keine Obergrenze503* **Standard**: nicht gesetzt, es gilt also keine Obergrenze

504* **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](https://code.claude.com/docs/de/managed-settings.md#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 an504* **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 beides setzt, etwa Ihre Benutzereinstellungen oder eine [verwaltete Quelle](https://code.claude.com/docs/de/managed-settings.md#how-claude-code-combines-managed-sources). Setzen Sie dort `"max"`, um das Modell von der Obergrenze dieser Quelle auszunehmen; Claude Code wendet Obergrenzen aus anderen Quellen weiterhin an

505 505 

506Dieses Beispiel begrenzt jedes Modell auf `medium` und nimmt Sonnet 4.6 aus:506Dieses Beispiel begrenzt jedes Modell auf `medium` und nimmt Sonnet 4.6 aus:

507 507 


516}516}

517```517```

518 518 

519Wenn Ihre Organisation zusätzlich ein [Effort-Limit](https://code.claude.com/docs/de/model-config.md#organization-effort-limits) für ein Modell setzt, gilt die niedrigere der beiden Obergrenzen.519Wenn Ihre Organisation zusätzlich ein [Effort-Limit](https://code.claude.com/docs/de/model-config.md#organization-effort-limits) für ein Modell festlegt, gilt die niedrigere der beiden Obergrenzen.

520 520 

521### `model`521### `model`

522 522 

523Legen 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](https://code.claude.com/docs/de/model-config.md#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.523Legen Sie das Modell fest, das jede neue Sitzung verwendet, damit Sie nicht jedes Mal eines mit `/model` auswählen müssen. Eine Festlegung hier hindert Sie nicht daran, mitten in der Sitzung zu wechseln. Wenn Ihr Admin ein [Organisations-Standardmodell](https://code.claude.com/docs/de/model-config.md#organization-default-model) festgelegt hat, das die Benutzerauswahl überschreibt, erhalten Sie dieses Modell, auch wenn Sie diesen Schlüssel in Benutzer-, Projekt- oder lokalen Einstellungen setzen.

524 524 

525* **Geltungsbereich**: [`Beliebige Datei`](#scopes)525* **Geltungsbereich**: [`Any file`](#scopes)

526* **Typ**: String, ein Modellalias oder eine vollständige Modell-ID526* **Typ**: String, ein Modellalias oder eine vollständige Modell-ID

527* **Standard**: nicht gesetzt, daher verwendet Claude Code das Standardmodell Ihres Kontos527* **Standard**: nicht gesetzt, Claude Code verwendet also das Standardmodell Ihres Kontos

528* **Überschreibungen pro Sitzung**: `--model` hat Vorrang vor [`ANTHROPIC_MODEL`](https://code.claude.com/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 Auswahl528* **Überschreibungen pro Sitzung**: `--model` hat Vorrang vor [`ANTHROPIC_MODEL`](https://code.claude.com/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

529 529 

530```json settings.json theme={null}530```json settings.json theme={null}


537 537 

538### `modelOverrides`538### `modelOverrides`

539 539 

540Ordnen 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](https://code.claude.com/docs/de/model-config.md#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.540Ordnen Sie Anthropic-Modell-IDs anbieterspezifischen Modell-IDs zu, etwa ARNs von Amazon Bedrock Inference Profiles. Jeder Eintrag der Modellauswahl verwendet dann beim Aufruf der Anbieter-API seinen zugeordneten Wert. Administratoren nutzen dies bei [Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry](https://code.claude.com/docs/de/model-config.md#override-model-ids-per-version), um jede Modellversion für Governance, Kostenzuordnung oder regionales Routing an ein bestimmtes Inference Profile, einen Versionsnamen oder eine Bereitstellung weiterzuleiten.

541 541 

542* **Geltungsbereich**: [`Beliebige Datei`](#scopes)542* **Geltungsbereich**: [`Any file`](#scopes)

543* **Typ**: Objekt, das Modell-IDs Provider-Modell-IDs zuordnet543* **Typ**: Objekt, das Modell-IDs Anbieter-Modell-IDs zuordnet

544* **Standard**: nicht gesetzt544* **Standard**: nicht gesetzt

545 545 

546Dieses Beispiel leitet jeden Aufruf für Opus 4.6 an das benannte Bedrock-Inferenzprofil:546Dieses Beispiel leitet jeden Aufruf für Opus 4.6 an das genannte Bedrock Inference Profile weiter:

547 547 

548```json settings.json theme={null}548```json settings.json theme={null}

549{549{


557 557 

558### `modelPicker`558### `modelPicker`

559 559 

560Listen 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.560Listen Sie die Modelle auf, die die `/model`-Auswahl anbietet, in der Reihenfolge, in der Sie sie schreiben, und mit Bezeichnungen Ihrer Wahl, sodass die Auswahl die Modelle zeigt, die Ihre Organisation nutzt, nach dem integrierten Angebot oder stattdessen. Das Feld `model` jeder Zeile wird unverändert übernommen, akzeptiert also alles, was `--model` akzeptiert: einen Alias wie `opus`, eine Anthropic-Modell-ID oder eine ID im Anbieterformat für Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry oder ein LLM-Gateway. Erfordert Claude Code v2.1.242 oder höher.

561 561 

562* **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.562* **Geltungsbereich**: [`User or managed`](#scopes). Claude Code liest den Schlüssel aus verwalteten Einstellungen, `--settings` und Benutzereinstellungen und ignoriert ihn in Projekt- und lokalen Einstellungen, damit ein geklontes Repository die Auswahl nicht umbenennen kann. Die höchste dieser drei Quellen, die den Schlüssel setzt, liefert das gesamte Angebot, und Claude Code kombiniert nie Angebote aus zwei Quellen.

563* **Typ**: Objekt mit einem Array `options` von Zeilen und einem optionalen Boolean `replaceBuiltInOptions`563* **Typ**: Objekt mit einem Array `options` aus Zeilen und einem optionalen Boolean `replaceBuiltInOptions`

564* **Standard**: nicht gesetzt, daher zeigt die Auswahl die integrierte Auswahl564* **Standard**: nicht gesetzt, die Auswahl zeigt also das integrierte Angebot

565 565 

566Dieses Beispiel fügt nach der integrierten Auswahl zwei Bedrock-Bereitstellungen unter Namen hinzu, die Ihr Team kennt:566Dieses Beispiel fügt nach dem integrierten Angebot zwei Bedrock-Bereitstellungen unter Namen hinzu, die Ihr Team kennt:

567 567 

568```json managed-settings.json theme={null}568```json managed-settings.json theme={null}

569{569{


582 582 

583#### Felder für `modelPicker`583#### Felder für `modelPicker`

584 584 

585Der Schlüssel hat zwei Felder: eines für die Zeilen selbst und eines dafür, ob sie die integrierte Auswahl ersetzen oder ergänzen.585Der Schlüssel nimmt zwei Felder an: eines für die Zeilen selbst und eines dafür, ob sie das integrierte Angebot ersetzen oder ergänzen.

586 586 

587| Feld | Typ | Funktion |587| Feld | Typ | Funktion |

588| :- | :- | :- |588| :- | :- | :- |

589| `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 |589| `options` | Array von Zeilen, jeweils mit einem erforderlichen `model` und optionalem `label`, `description` und `behavesAs` | Die Zeilen, die die Auswahl in dieser Reihenfolge anzeigt, mit der Ausnahme, dass eine ausgegraute Zeile nach unten verschoben wird. Ohne `label` betitelt Claude Code die Zeile mit dem integrierten Namen eines ihm bekannten Modells oder andernfalls mit der Modell-ID, und ohne `description` schreibt es eine allgemeine zweite Zeile |

590| `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 |590| `replaceBuiltInOptions` | Boolean, Standard `false` | Setzen Sie es auf `true`, um nur diese Zeilen, **Default** und eine Zeile für das Modell anzuzeigen, das die Sitzung bereits verwendet. Lassen Sie es ungesetzt, um diese Zeilen nach dem integrierten Angebot hinzuzufügen |

591 591 

592Ein 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.592Ein Eintrag in `options` kann neben seinem `model` auch einen optionalen String `behavesAs` enthalten, was v2.1.257 oder höher erfordert. Setzen Sie ihn auf die ID eines Modells, das Ihre Claude Code-Version bereits kennt, etwa `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, statt sein Modell als unbekannt zu behandeln. Die Bezeichnung des Eintrags und die Modell-ID, die Claude Code in Anfragen sendet, ändern sich nicht.

593 593 

594Wenn `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](https://code.claude.com/docs/de/llm-gateway-protocol.md#model-discovery) gefunden hat, und [`ANTHROPIC_CUSTOM_MODEL_OPTION`](https://code.claude.com/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.594Ist `replaceBuiltInOptions` eingeschaltet, blendet Claude Code alle anderen Zeilen aus: das integrierte Angebot, die Zeilen, die es für [`availableModels`](#availablemodels)-Einträge hinzufügt, die Modelle, die die [Gateway-Erkennung](https://code.claude.com/docs/de/llm-gateway-protocol.md#model-discovery) gefunden hat, und [`ANTHROPIC_CUSTOM_MODEL_OPTION`](https://code.claude.com/docs/de/model-config#add-a-custom-model-option). Ist es ausgeschaltet, überspringt Claude Code ein aufgeführtes Modell, das das integrierte Angebot bereits abdeckt. Eine Bezeichnung ändert, was die Auswahl anzeigt, nicht welches Modell Claude Code ausführt.

595 595 

596Eine [`availableModels`](#availablemodels)-Allowlist gilt weiterhin für diese Zeilen. Bevor Sie ein aufgelistetes Modell zur Allowlist hinzufügen, lesen Sie [Zusammenführungsverhalten](https://code.claude.com/docs/de/model-config.md#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:596Eine [`availableModels`](#availablemodels)-Allowlist gilt weiterhin für diese Zeilen. Bevor Sie ein aufgeführtes Modell zur Allowlist hinzufügen, lesen Sie [Zusammenführungsverhalten](https://code.claude.com/docs/de/model-config.md#merge-behavior): Eine bestimmte Modell-ID schränkt den Platzhaltereintrag ihrer Familie ein. Claude Code prüft außerdem jede Zeile gegen die Sitzung, bevor es die Auswahl anzeigt:

597 597 

598* **Entfernt**: eine Zeile, die Claude Code nicht bedienen kann, wie ein eingestelltes Modell oder ein Modell, auf das Ihre Organisation keinen Zugriff hat598* **Entfernt**: eine Zeile, die Claude Code nicht bedienen kann, etwa ein eingestelltes Modell oder ein Modell, auf das Ihre Organisation keinen Zugriff hat

599* **Ausgegraut**: eine Zeile, die Sie noch nicht auswählen können, mit Angabe des Grundes599* **Ausgegraut**: eine Zeile, die Sie noch nicht auswählen können, mit Angabe des Grundes

600* **Keine Zeile bleibt übrig**: Claude Code behält die integrierte Auswahl, wie üblich durch die Allowlist gefiltert600* **Keine Zeile bleibt übrig**: Claude Code behält das integrierte Angebot, wie üblich durch die Allowlist gefiltert

601 601 

602Claude Code entfernt eine Zeile, die es nicht parsen kann, und behält den Rest. Siehe [Fehlerhafte Einstellungsdatei beheben](https://code.claude.com/docs/de/settings.md#fix-a-broken-settings-file).602Claude Code verwirft eine Zeile, die es nicht parsen kann, und behält den Rest. Siehe [Defekte Einstellungsdatei reparieren](https://code.claude.com/docs/de/settings.md#fix-a-broken-settings-file).

603 603 

604### `modelPricing`604### `modelPricing`

605 605 

606Melden 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](https://code.claude.com/docs/de/statusline.md), dem `total_cost_usd` des Agent SDK, dem Limit [`--max-budget-usd`](https://code.claude.com/docs/de/cli-reference) sowie der Kostenmetrik und den Ereignissen von [OpenTelemetry](https://code.claude.com/docs/de/monitoring-usage.md) 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.606Weisen Sie Ausgaben zu den Preisen aus, die Ihre Organisation zahlt, statt zum Listenpreis. Setzen Sie dies, 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](https://code.claude.com/docs/de/statusline.md), dem Wert `total_cost_usd` des Agent SDK, dem Limit [`--max-budget-usd`](https://code.claude.com/docs/de/cli-reference) sowie der Kostenmetrik und den Ereignissen von [OpenTelemetry](https://code.claude.com/docs/de/monitoring-usage.md) an. Sie geben die Preise selbst an: Claude Code liest sie nicht aus Ihrem Vertrag oder der Claude Console. Erfordert Claude Code v2.1.242 oder höher.

607 607 

608* **Geltungsbereich**: [`Verwaltet`](#scopes). Stellen Sie den Schlüssel über serverseitig verwaltete Einstellungen, eine MDM-Richtlinie, eine Datei `managed-settings.json` oder ein [Richtlinien-Hilfsprogramm](https://code.claude.com/docs/de/managed-settings.md#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](https://code.claude.com/docs/de/managed-settings.md#where-each-mechanism-stores-the-policy). Mit serverseitig verwalteten Einstellungen meldet jede Sitzung Kosten zum Listenpreis, bis der [Einstellungsabruf](https://code.claude.com/docs/de/server-managed-settings.md#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`](https://code.claude.com/docs/de/env-vars) setzt, kann über die SDK-Option [`managedSettings`](https://code.claude.com/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.608* **Geltungsbereich**: [`Managed`](#scopes). Stellen Sie den Schlüssel über serververwaltete Einstellungen, eine MDM-Richtlinie, eine Datei `managed-settings.json` oder ein [Richtlinien-Hilfsprogramm](https://code.claude.com/docs/de/managed-settings.md#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-Registry](https://code.claude.com/docs/de/managed-settings.md#where-each-mechanism-stores-the-policy). Bei serververwalteten Einstellungen weist jede Sitzung Kosten zum Listenpreis aus, bis der [Einstellungsabruf](https://code.claude.com/docs/de/server-managed-settings.md#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`](https://code.claude.com/docs/de/env-vars) setzt, kann über die SDK-Option [`managedSettings`](https://code.claude.com/docs/de/agent-sdk/typescript#options) eine eigene Tabelle bereitstellen, die Claude Code nur verwendet, wenn keine verwaltete Quelle den Schlüssel setzt, und nur in Claude Code v2.1.246 oder höher.

609* **Typ**: Objekt mit einem optionalen `multiplier` und einer optionalen Zuordnung `overrides`609* **Typ**: Objekt mit einem optionalen `multiplier` und einer optionalen Zuordnung `overrides`

610* **Standard**: nicht gesetzt, daher meldet Claude Code den Listenpreis, es sei denn, eine Host-Anwendung liefert eine Tabelle610* **Standard**: nicht gesetzt, Claude Code weist also den Listenpreis aus, sofern keine Host-Anwendung eine Tabelle bereitstellt

611 611 

612Setzen Sie nur `multiplier` für einen pauschalen Rabatt oder Aufschlag, nur `overrides` für Preise pro Modell oder beides.612Setzen Sie nur `multiplier` für einen pauschalen Rabatt oder Aufschlag, nur `overrides` für Preise pro Modell oder beides.

613 613 

614Dieses Beispiel setzt vertraglich vereinbarte Preise für Sonnet 4.6 und reduziert dann jeden Betrag, einschließlich der Sonnet-Zeile, um 15 %:614Dieses Beispiel legt vertraglich vereinbarte Preise für Sonnet 4.6 fest und reduziert dann jeden Betrag, einschließlich der Sonnet-Zeile, um 15 %:

615 615 

616```json managed-settings.json theme={null}616```json managed-settings.json theme={null}

617{617{


629}629}

630```630```

631 631 

632Setzen 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.632Setzen Sie `multiplier` auf einen Wert über 1, bis höchstens 10, um jeden Betrag zu erhöhen. Ein Aufschlag erfordert Claude Code v2.1.271 oder höher. Frühere Versionen ignorieren einen `multiplier` über 1 mit einer Warnung und behalten den Rest der Einstellung.

633 633 

634Die Schritte, einschließlich der Bestätigung, dass die Preise wirksam sind, finden Sie unter [Ausgaben zu Ihren vertraglich vereinbarten Preisen melden](https://code.claude.com/docs/de/costs.md#report-spend-at-your-contracted-rates).634Die Schritte, einschließlich der Prüfung, ob die Preise wirksam sind, finden Sie unter [Ausgaben zu Ihren vertraglich vereinbarten Preisen ausweisen](https://code.claude.com/docs/de/costs.md#report-spend-at-your-contracted-rates).

635 635 

636#### Felder für `modelPricing`636#### Felder für `modelPricing`

637 637 


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

641| `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) |641| `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) |

642 642 

643Claude 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](https://code.claude.com/docs/de/settings.md#fix-a-broken-settings-file).643Claude Code verwendet die Preise einer Zeile genau so, wie Sie sie geschrieben haben, ohne den Fast-Modus-Aufschlag oder den [Preis für Inferenz nur in den USA](https://platform.claude.com/docs/en/about-claude/pricing) hinzuzufügen. Wenn Sie zusätzlich `multiplier` setzen, wendet Claude Code ihn auf die Preise der Zeile an. Claude Code verwirft eine Zeile mit einem Preis, den es nicht parsen kann, oder einen `multiplier`, den es nicht parsen kann, und behält den Rest; siehe [Defekte Einstellungsdatei reparieren](https://code.claude.com/docs/de/settings.md#fix-a-broken-settings-file).

644 644 

645#### Für welche Modelle eine `modelPricing`-Zeile gilt645#### Für welche Modelle eine `modelPricing`-Zeile gilt

646 646 

647Claude Code bestimmt anhand des Schlüssels der Zeile, für welche Modelle eine Zeile gilt:647Claude Code bestimmt anhand des Schlüssels der Zeile, für welche Modelle sie gilt:

648 648 

649* **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.649* **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, etwa `claude-sonnet-4-6`, oder seine Bedrock-, Agent Platform- oder Foundry-ID. Claude Code wendet die Zeile auf jede datierte Snapshot-ID und jede anbieterspezifische ID dieses Modells an.

650* **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.650* **Jeder andere Schlüssel**: ein Schlüssel, der nicht die ID eines integrierten Modells ist, etwa ein Gateway-Modellalias. Claude Code wendet die Zeile nur auf genau diese ID an. Wenn eine Modell-ID exakt mit einem Ihrer Schlüssel übereinstimmt und gleichzeitig unter eine Zeile fällt, deren Schlüssel die ID eines integrierten Modells ist, verwendet Claude Code die exakte Übereinstimmung.

651* **Ein Bedrock-Anwendungsinferenzprofil**: Sobald Claude Code das Profil über Ihre Zuordnung [`modelOverrides`](#modeloverrides) oder die [Abfrage `bedrock:GetInferenceProfile`](https://code.claude.com/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.651* **Ein Bedrock Application Inference Profile**: Sobald Claude Code das Profil auf das Modell aufgelöst hat, an das es weiterleitet, über Ihre [`modelOverrides`](#modeloverrides)-Zuordnung oder die [`bedrock:GetInferenceProfile`-Abfrage](https://code.claude.com/docs/de/amazon-bedrock#iam-configuration), wendet Claude Code die Zeile dieses Modells auf das Profil an.

652 652 

653### `modelSettings`653### `modelSettings`

654 654 

655Speichern Sie eine [Effort-Stufe](https://code.claude.com/docs/de/model-config.md#adjust-effort-level) für jedes Modell, das Sie verwenden. Erfordert Claude Code v2.1.251 oder später.655Speichern Sie eine [Effort-Stufe](https://code.claude.com/docs/de/model-config.md#adjust-effort-level) für jedes Modell, das Sie verwenden. Erfordert Claude Code v2.1.251 oder höher.

656 656 

657Wenn 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](https://code.claude.com/docs/de/vs-code.md#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.657Wenn Sie in einer interaktiven Sitzung auf Ihrem Rechner `low`, `medium`, `high` oder `xhigh` mit `/effort` oder dem Effort-Schieberegler der `/model`-Auswahl als Standard speichern, schreibt Claude Code diese Stufe hier unter das Modell, das Sie verwenden, sodass Sie diesen Schlüssel selten selbst bearbeiten. Wenn Sie eine dieser Stufen in der [Modellauswahl der VS Code-Erweiterung](https://code.claude.com/docs/de/vs-code.md#use-the-prompt-box) wählen, speichert Claude Code sie hier auf dieselbe Weise. Der Eintrag [`effortLevel`](#effortlevel) listet die Sitzungen auf, in denen `/effort` nur für diese Sitzung gilt.

658 658 

659Bearbeiten Sie den Schlüssel manuell, um eine gespeicherte Stufe zu ändern oder zu entfernen.659Bearbeiten Sie den Schlüssel von Hand, um eine gespeicherte Stufe zu ändern oder zu entfernen.

660 660 

661Ein `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](https://code.claude.com/docs/de/settings.md#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](https://code.claude.com/docs/de/model-config.md#adjust-effort-level) listet auf, was eine gespeicherte Stufe sonst noch überschreiben kann, wie `--effort` beim Start.661Das `effortLevel` eines Modells hier hat Vorrang vor dem übergeordneten [`effortLevel`](#effortlevel) in derselben Einstellungsdatei. Über Dateien hinweg löst Claude Code jedes Modell separat auf: Die [Einstellungsdatei](https://code.claude.com/docs/de/settings.md#settings-precedence) mit dem höchsten Vorrang, die entweder ein `effortLevel` für dieses Modell oder ein übergeordnetes `effortLevel` setzt, das [für dieses Modell gilt](#effortlevel), entscheidet, sodass ein `effortLevel` in verwalteten Einstellungen Vorrang vor einer Stufe hat, die Sie in Benutzereinstellungen gespeichert haben. [Effort-Stufe anpassen](https://code.claude.com/docs/de/model-config.md#adjust-effort-level) listet auf, was eine gespeicherte Stufe sonst noch überschreiben kann, etwa `--effort` beim Start.

662 662 

663Um 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.663Um den Effort eines Modells zu begrenzen, statt seine Stufe festzulegen, fügen Sie dem Eintrag dieses Modells ein Feld [`maxEffortLevel`](#maxeffortlevel) hinzu. Das Feld erfordert Claude Code v2.1.267 oder höher.

664 664 

665* **Geltungsbereich**: [`Beliebige Datei`](#scopes)665* **Geltungsbereich**: [`Any file`](#scopes)

666* **Typ**: Objekt, das einen Modellnamen einem Objekt mit beliebigen dieser Felder zuordnet:666* **Typ**: Objekt, das einen Modellnamen einem Objekt mit beliebigen dieser Felder zuordnet:

667 * `effortLevel`: einer von `"low"`, `"medium"`, `"high"` oder `"xhigh"`667 * `effortLevel`: einer der Werte `"low"`, `"medium"`, `"high"` oder `"xhigh"`

668 * [`maxEffortLevel`](#maxeffortlevel): die höchste Effort-Stufe, mit der das Modell laufen darf668 * [`maxEffortLevel`](#maxeffortlevel): die höchste Effort-Stufe, mit der das Modell laufen darf

669 * `autoCompactWindow`: eine Anzahl von Token von `100000` bis `1000000` oder `"auto"` für das auf das Modell abgestimmte Fenster. [`/autocompact`](https://code.claude.com/docs/de/model-config#set-the-auto-compact-window) speichert hier. Für dieses Modell hat der Wert Vorrang vor einem [`autoCompactWindow`](#autocompactwindow) der obersten Ebene in derselben Einstellungsdatei. Erfordert Claude Code v2.1.288 oder später669 * `autoCompactWindow`: eine Anzahl von Token von `100000` bis `1000000` oder `"auto"` für das auf das Modell abgestimmte Fenster. [`/autocompact`](https://code.claude.com/docs/de/model-config#set-the-auto-compact-window) speichert hier. Für dieses Modell hat der Wert Vorrang vor einem übergeordneten [`autoCompactWindow`](#autocompactwindow) in derselben Einstellungsdatei. Erfordert Claude Code v2.1.288 oder höher

670* **Standard**: nicht gesetzt670* **Standard**: nicht gesetzt

671 671 

672Claude 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.672Claude Code schreibt jeden Eintrag unter den kanonischen Namen des Modells, etwa `claude-opus-5-5`, und ordnet den Alias dieses Modells, IDs mit Datumssuffix, `[1m]`-IDs und erkannte anbieterspezifische IDs demselben Eintrag zu.

673 673 

674Dieses Beispiel hält Opus 5.5 auf `high`, während andere Modelle ihre eigenen gespeicherten oder Standardstufen verwenden:674Dieses Beispiel hält Opus 5.5 auf `high`, während andere Modelle ihre eigenen gespeicherten oder Standardstufen verwenden:

675 675 


683}683}

684```684```

685 685 

686Fü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.686Führen Sie `/effort auto` aus, um Ihre gespeicherte Stufe für das verwendete Modell zu löschen. Claude Code belässt die anderen Einträge und ein eventuelles übergeordnetes `effortLevel`.

687 687 

688### `outputStyle`688### `outputStyle`

689 689 

690Wählen Sie einen [Ausgabestil](https://code.claude.com/docs/de/output-styles.md) 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.690Wählen Sie einen [Ausgabestil](https://code.claude.com/docs/de/output-styles.md) nach Namen aus. Ein Ausgabestil ist ein gespeicherter Satz von Anweisungen, der Claudes Rolle, Ton und Ausgabeformat ändert, etwa die integrierten Stile Explanatory und Learning oder ein selbst geschriebener Stil.

691 691 

692Wenn 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](https://code.claude.com/docs/de/prompt-caching.md#changing-output-style). Vor v2.1.251 wurde die Änderung erst wirksam, nachdem Sie `/clear` ausgeführt oder eine neue Sitzung gestartet hatten.692Wenn 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](https://code.claude.com/docs/de/prompt-caching.md#changing-output-style). Vor v2.1.251 wurde die Änderung erst wirksam, nachdem Sie `/clear` ausgeführt oder eine neue Sitzung gestartet hatten.

693 693 

694* **Geltungsbereich**: [`Beliebige Datei`](#scopes)694* **Geltungsbereich**: [`Any file`](#scopes)

695* **Typ**: String, der Name eines [integrierten](https://code.claude.com/docs/de/output-styles.md#built-in-output-styles) oder [benutzerdefinierten](https://code.claude.com/docs/de/output-styles.md#create-a-custom-output-style) Ausgabestils695* **Typ**: String, der Name eines [integrierten](https://code.claude.com/docs/de/output-styles.md#built-in-output-styles) oder [benutzerdefinierten](https://code.claude.com/docs/de/output-styles.md#create-a-custom-output-style) Ausgabestils

696* **Standard**: nicht gesetzt, daher verwendet Claude Code den Standardstil696* **Standard**: nicht gesetzt, Claude Code verwendet also den Standardstil

697 697 

698Dieses Beispiel wählt den integrierten Stil Explanatory, der zwischen Aufgaben erklärende Einblicke hinzufügt:698Dieses Beispiel wählt den integrierten Stil Explanatory, der zwischen Aufgaben lehrreiche Erläuterungen hinzufügt:

699 699 

700```json settings.json theme={null}700```json settings.json theme={null}

701{701{


705 705 

706### `promptCacheTtl`706### `promptCacheTtl`

707 707 

708Legen Sie fest, wie lange der [Prompt-Cache](https://code.claude.com/docs/de/prompt-caching.md) 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.708Legen Sie fest, wie lange der [Prompt-Cache](https://code.claude.com/docs/de/prompt-caching.md) die Hauptkonversation hält. Dieser Schlüssel gilt für Ihre interaktiven Turns, `-p`-Turns 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 auch ü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 höher.

709 709 

710* **Geltungsbereich**: [`Beliebige Datei`](#scopes)710* **Geltungsbereich**: [`Any file`](#scopes)

711* **Typ**: String, einer von:711* **Typ**: String, einer der Werte:

712 * `"5m"`: der Cache hält fünf Minuten712 * `"5m"`: Der Cache hält fünf Minuten

713 * `"1h"`: der Cache hält eine Stunde713 * `"1h"`: Der Cache hält eine Stunde

714* **Standard**: nicht gesetzt, daher erhält jede Anfrage der Hauptkonversation [ihre Standardlebensdauer](https://code.claude.com/docs/de/prompt-caching.md#which-ttl-each-request-gets)714* **Standard**: nicht gesetzt, jede Anfrage der Hauptkonversation erhält also [ihre Standardlebensdauer](https://code.claude.com/docs/de/prompt-caching.md#which-ttl-each-request-gets)

715* **Überschreibungen pro Sitzung**: [`FORCE_PROMPT_CACHING_5M`](https://code.claude.com/docs/de/env-vars) hat Vorrang vor allem anderen, dann [`CLAUDE_CODE_PROMPT_CACHE_TTL`](https://code.claude.com/docs/de/env-vars), dann dieser Schlüssel und zuletzt [`ENABLE_PROMPT_CACHING_1H`](https://code.claude.com/docs/de/env-vars)715* **Überschreibungen pro Sitzung**: [`FORCE_PROMPT_CACHING_5M`](https://code.claude.com/docs/de/env-vars) hat Vorrang vor allem anderen, dann [`CLAUDE_CODE_PROMPT_CACHE_TTL`](https://code.claude.com/docs/de/env-vars), dann dieser Schlüssel und zuletzt [`ENABLE_PROMPT_CACHING_1H`](https://code.claude.com/docs/de/env-vars)

716 716 

717Dieses Beispiel hält die Hauptkonversation auf der einstündigen Lebensdauer und lässt Subagenten bei fünf Minuten:717Dieses Beispiel hält die Hauptkonversation bei der einstündigen Lebensdauer und belässt Subagenten bei fünf Minuten:

718 718 

719```json settings.json theme={null}719```json settings.json theme={null}

720{720{


727 727 

728### `showThinkingSummaries`728### `showThinkingSummaries`

729 729 

730Zeigen Sie Zusammenfassungen von Claudes [Extended Thinking](https://code.claude.com/docs/de/model-config.md#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.730Zeigen Sie Zusammenfassungen von Claudes [Extended Thinking](https://code.claude.com/docs/de/model-config.md#extended-thinking) in interaktiven Sitzungen an. Setzen Sie dies, wenn Sie die vollständigen Zusammenfassungen sehen möchten, wenn Sie Thinking mit `Ctrl+O` aufklappen. Wenn nicht gesetzt oder `false`, schwärzt die Anthropic API Thinking-Blöcke, und Claude Code zeigt einen zugeklappten Platzhalter an.

731 731 

732* **Geltungsbereich**: [`Beliebige Datei`](#scopes)732* **Geltungsbereich**: [`Any file`](#scopes)

733* **Typ**: Boolean733* **Typ**: Boolean

734 * `true`: Sie sehen vollständige Thinking-Zusammenfassungen, wenn Sie Thinking mit `Ctrl+O` aufklappen734 * `true`: Sie sehen vollständige Thinking-Zusammenfassungen, wenn Sie Thinking mit `Ctrl+O` aufklappen

735 * `false`: die Anthropic API schwärzt Thinking-Blöcke und Claude Code zeigt einen zugeklappten Platzhalter735 * `false`: Die Anthropic API schwärzt Thinking-Blöcke, und Claude Code zeigt einen zugeklappten Platzhalter an

736* **Standard**: `false`736* **Standard**: `false`

737 737 

738```json settings.json theme={null}738```json settings.json theme={null}


741}741}

742```742```

743 743 

744Die 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](https://code.claude.com/docs/de/model-config.md#extended-thinking).744Die Schwärzung ändert nur, was Sie sehen, nicht was das Modell generiert. Um die Ausgaben für Thinking zu senken, [verringern Sie stattdessen das Budget oder deaktivieren Sie Thinking](https://code.claude.com/docs/de/model-config.md#extended-thinking).

745 745 

746### `subagentPromptCacheTtl`746### `subagentPromptCacheTtl`

747 747 

748Legen Sie fest, wie lange der [Prompt-Cache](https://code.claude.com/docs/de/prompt-caching.md) die Anfragen vorhält, die Claude Code außerhalb der Hauptkonversation stellt. Dieser Schlüssel gilt für [Subagenten](https://code.claude.com/docs/de/sub-agents.md), [Workflows](https://code.claude.com/docs/de/workflows.md) 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.748Legen Sie fest, wie lange der [Prompt-Cache](https://code.claude.com/docs/de/prompt-caching.md) die Anfragen hält, die Claude Code außerhalb der Hauptkonversation stellt. Dieser Schlüssel gilt für [Subagenten](https://code.claude.com/docs/de/sub-agents.md), [Workflows](https://code.claude.com/docs/de/workflows.md) sowie für Claude Codes eigene Hintergrund- und Hilfsanfragen, etwa Komprimierung und Sitzungstitel. Die einstündige Lebensdauer hält den Cache auch ü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 höher.

749 749 

750* **Geltungsbereich**: [`Beliebige Datei`](#scopes)750* **Geltungsbereich**: [`Any file`](#scopes)

751* **Typ**: String, einer von:751* **Typ**: String, einer der Werte:

752 * `"5m"`: der Cache hält fünf Minuten752 * `"5m"`: Der Cache hält fünf Minuten

753 * `"1h"`: der Cache hält eine Stunde753 * `"1h"`: Der Cache hält eine Stunde

754* **Standard**: nicht gesetzt, daher erhält jede dieser Anfragen [ihre Standardlebensdauer](https://code.claude.com/docs/de/prompt-caching.md#which-ttl-each-request-gets)754* **Standard**: nicht gesetzt, jede dieser Anfragen erhält also [ihre Standardlebensdauer](https://code.claude.com/docs/de/prompt-caching.md#which-ttl-each-request-gets)

755* **Überschreibungen pro Sitzung**: [`FORCE_PROMPT_CACHING_5M`](https://code.claude.com/docs/de/env-vars) hat Vorrang vor allem anderen, dann [`CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`](https://code.claude.com/docs/de/env-vars), dann dieser Schlüssel, dann [`ENABLE_PROMPT_CACHING_1H`](https://code.claude.com/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](https://code.claude.com/docs/de/prompt-caching.md#choose-the-ttl-yourself)755* **Überschreibungen pro Sitzung**: [`FORCE_PROMPT_CACHING_5M`](https://code.claude.com/docs/de/env-vars) hat Vorrang vor allem anderen, dann [`CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`](https://code.claude.com/docs/de/env-vars), dann dieser Schlüssel, dann [`ENABLE_PROMPT_CACHING_1H`](https://code.claude.com/docs/de/env-vars), das für jede Anfrage die einstündige Lebensdauer anfordert. Wo der eigene Frontmatter-Wert eines Subagenten in der Rangfolge steht, erfahren Sie unter [TTL selbst wählen](https://code.claude.com/docs/de/prompt-caching.md#choose-the-ttl-yourself)

756 756 

757Dieses Beispiel gibt Subagenten und den anderen Anfragen außerhalb der Hauptkonversation die einstündige Lebensdauer:757Dieses Beispiel gibt Subagenten und den anderen Anfragen außerhalb der Hauptkonversation die einstündige Lebensdauer:

758 758 


762}762}

763```763```

764 764 

765Dieser 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](https://code.claude.com/docs/de/prompt-caching.md#subagents-and-the-cache).765Dieser Schlüssel deckt die Anfragen ab, die [`promptCacheTtl`](#promptcachettl) nicht abdeckt. Setzen Sie also beide, um eine Lebensdauer für jede Anfrage festzulegen, die Claude Code stellt. Wie sich der Cache eines Subagenten von dem der Hauptkonversation unterscheidet, erfahren Sie unter [Subagenten und der Cache](https://code.claude.com/docs/de/prompt-caching.md#subagents-and-the-cache).

766 766 

767### `switchModelsOnFlag`767### `switchModelsOnFlag`

768 768 

769Legen Sie fest, was passiert, wenn ein [Sicherheits-Klassifikator eine Anfrage kennzeichnet](https://code.claude.com/docs/de/model-config.md#automatic-model-fallback): zum Fallback-Modell wechseln und fortfahren oder pausieren, damit Sie zwischen Wechseln und Bearbeiten des Prompts wählen können.769Legen Sie fest, was passiert, wenn ein [Sicherheitsklassifikator eine Anfrage kennzeichnet](https://code.claude.com/docs/de/model-config.md#automatic-model-fallback): zum Fallback-Modell wechseln und fortfahren oder pausieren, damit Sie zwischen Wechseln und Bearbeiten des Prompts wählen können.

770 770 

771* **Geltungsbereich**: [`Beliebige Datei`](#scopes). Erscheint in `/config` als **Modelle wechseln, wenn eine Nachricht gekennzeichnet ist**, mit den Optionen **Automatisch wechseln** und **Jedes Mal fragen**.771* **Geltungsbereich**: [`Any file`](#scopes). Erscheint in `/config` als **Switch models when a message is flagged** mit den Optionen **Switch automatically** und **Ask each time**.

772* **Typ**: Boolean772* **Typ**: Boolean

773 * `true`: Claude Code wechselt zum Fallback-Modell und fährt fort773 * `true`: Claude Code wechselt zum Fallback-Modell und fährt fort

774 * `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 Fehler774 * `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, etwa bei einem `-p`-Lauf, endet die gekennzeichnete Anfrage mit einem Fehler

775* **Standard**: nicht gesetzt. Claude Code wechselt automatisch, kann in einer interaktiven Sitzung aber [zuerst nachfragen](https://code.claude.com/docs/de/model-config.md#ask-before-switching)775* **Standard**: nicht gesetzt. Claude Code wechselt automatisch, kann aber in einer interaktiven Sitzung [zuerst nachfragen](https://code.claude.com/docs/de/model-config.md#ask-before-switching)

776 776 

777```json settings.json theme={null}777```json settings.json theme={null}

778{778{


780}780}

781```781```

782 782 

783Siehe [Vor dem Wechsel fragen](https://code.claude.com/docs/de/model-config.md#ask-before-switching).783Siehe [Vor dem Wechsel nachfragen](https://code.claude.com/docs/de/model-config.md#ask-before-switching).

784 784 

785### `ultracode`785### `ultracode`

786 786 

787Starten Sie Sitzungen mit aktiviertem [Ultracode](https://code.claude.com/docs/de/workflows.md#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](https://code.claude.com/docs/de/workflows.md) 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.787Starten Sie Sitzungen mit eingeschaltetem [ultracode](https://code.claude.com/docs/de/workflows.md#let-claude-decide-with-ultracode). Ist es eingeschaltet, plant Claude für jede substanzielle Aufgabe einen Workflow, statt darauf zu warten, dass Sie danach fragen. Claude plant Workflows nur, wenn [dynamische Workflows](https://code.claude.com/docs/de/workflows.md) 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` schaltet ultracode nur für die aktuelle Sitzung ein.

788 788 

789* **Geltungsbereich**: [`Beliebige Datei`](#scopes)789* **Geltungsbereich**: [`Any file`](#scopes)

790* **Typ**: Boolean790* **Typ**: Boolean

791 * `true`: Sitzungen starten mit aktiviertem Ultracode, wenn dynamische Workflows für Sie aktiviert sind und Ihr Modell `xhigh` unterstützt791 * `true`: Sitzungen starten mit eingeschaltetem ultracode, wenn dynamische Workflows für Sie aktiviert sind und Ihr Modell `xhigh` unterstützt

792 * `false`: Sitzungen starten mit deaktiviertem Ultracode792 * `false`: Sitzungen starten mit ausgeschaltetem ultracode

793* **Standard**: nicht gesetzt, daher ist Ultracode deaktiviert793* **Standard**: nicht gesetzt, ultracode ist also ausgeschaltet

794* **Ü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`794* **Überschreibungen pro Sitzung**: `/effort ultracode` schaltet ultracode für eine Sitzung ohne diesen Schlüssel ein, und `/effort ultracode off` schaltet es für eine Sitzung aus, wenn dieser Schlüssel `true` ist. Das Flag `--effort ultracode` schaltet es ebenfalls für eine Sitzung ein, mit dem Effort `xhigh`

795 795 

796```json settings.json theme={null}796```json settings.json theme={null}

797{797{


799}799}

800```800```

801 801 

802Die Effort-Stufe der Sitzung ergibt sich aus [`effortLevel`](#effortlevel), [`modelSettings`](#modelsettings) und den anderen [Effort-Quellen](https://code.claude.com/docs/de/model-config.md#adjust-effort-level), und eine [Effort-Obergrenze](https://code.claude.com/docs/de/model-config.md#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.802Die Effort-Stufe der Sitzung ergibt sich aus [`effortLevel`](#effortlevel), [`modelSettings`](#modelsettings) und den anderen [Effort-Quellen](https://code.claude.com/docs/de/model-config.md#adjust-effort-level), und eine [Effort-Obergrenze](https://code.claude.com/docs/de/model-config.md#organization-effort-limits) wie [`maxEffortLevel`](#maxeffortlevel) senkt diese Stufe, ohne ultracode auszuschalten. Dies sowie die Form `/effort ultracode off` erfordern Claude Code v2.1.284 oder höher. Vor v2.1.284 lief die Sitzung mit `ultracode: true` mit dem Effort `xhigh`, und eine Effort-Obergrenze unter `xhigh` hielt ultracode ausgeschaltet. Eine `apply_flag_settings`-Steuerungsanfrage des Agent SDK akzeptiert den Schlüssel ebenfalls.

803 803 

804## Berechtigungseinstellungen804## Berechtigungseinstellungen

805 805 


2424 2424 

2425Die Komprimierung im Leerlauf ist standardmäßig für Konversationen aktiviert, die alle diese Bedingungen erfüllen:2425Die Komprimierung im Leerlauf ist standardmäßig für Konversationen aktiviert, die alle diese Bedingungen erfüllen:

2426 2426 

2427* **Sitzung**: Sie befinden sich in einer interaktiven Terminal-Sitzung oder im Chatbereich der VS Code-Erweiterung bzw. im Code-Tab der Desktop-App mit einem [Konto, das Anthropic auswählt](#idle-compaction-in-vs-code-and-the-desktop-app)2427* **Sitzung**: Sie befinden sich in einer interaktiven Terminal-Sitzung, im Chatbereich der VS Code-Erweiterung oder im Code-Tab der Desktop-App, wenn die Sitzung auf Ihrem Rechner oder über SSH läuft

2428* **Automatische Komprimierung**: [`autoCompactEnabled`](#autocompactenabled) ist aktiviert2428* **Automatische Komprimierung**: [`autoCompactEnabled`](#autocompactenabled) ist aktiviert

2429* **Prompt-Cache**: Die Konversation verwendet die [einstündige Prompt-Cache-TTL](https://code.claude.com/docs/de/prompt-caching.md#which-ttl-each-request-gets)2429* **Prompt-Cache**: Die Konversation verwendet die [einstündige Prompt-Cache-TTL](https://code.claude.com/docs/de/prompt-caching.md#which-ttl-each-request-gets)

2430* **Feature-Flags**: Claude Code kann [Feature-Flags von Anthropic abrufen](https://code.claude.com/docs/de/env-vars.md#features-that-need-feature-flag-fetching)2430* **Feature-Flags**: Claude Code kann [Feature-Flags von Anthropic abrufen](https://code.claude.com/docs/de/env-vars.md#features-that-need-feature-flag-fetching)

2431* **Größe**: Der Kontext der Konversation hat den Token-Schwellenwert erreicht, den Sie gegenüber seinem Standardwert von 200.000 [ändern](#change-the-idle-compaction-threshold) können2431* **Größe**: Der Kontext der Konversation hat den Token-Schwellenwert erreicht, den Sie gegenüber seinem Standardwert von 200.000 [ändern](#change-the-idle-compaction-threshold) können

2432* **Leerlaufzeit**: Seit der letzten Anfrage sind etwa 54 Minuten vergangen, und Ihr Computer befindet sich zu diesem Zeitpunkt nicht im Ruhezustand2432* **Leerlaufzeit**: Seit der letzten Anfrage ist etwa eine Stunde vergangen, und Ihr Computer wechselt bis dahin nicht in den Ruhezustand

2433 2433 

2434Um die Komprimierung im Leerlauf auszuschalten, setzen Sie diesen Schlüssel auf `false`.2434Um die Komprimierung im Leerlauf auszuschalten, setzen Sie diesen Schlüssel auf `false`.

2435 2435 


2475Compacted using a summary written while you were away · turn off with "idleCompaction": false in settings.json2475Compacted using a summary written while you were away · turn off with "idleCompaction": false in settings.json

2476```2476```

2477 2477 

2478Sie müssen nichts tun. Um die Komprimierung im Leerlauf auszuschalten, setzen Sie `idleCompaction` in `~/.claude/settings.json` oder einer anderen [Einstellungsdatei](https://code.claude.com/docs/de/settings.md#settings-files-and-who-they-affect) auf `false`.2478Sie müssen nichts tun. Um die Komprimierung im Leerlauf auszuschalten, setzen Sie `idleCompaction` in `~/.claude/settings.json` auf dem Rechner bzw. in der WSL-Distribution, auf dem bzw. in der die Sitzung läuft, oder in einer anderen [Einstellungsdatei](https://code.claude.com/docs/de/settings.md#settings-files-and-who-they-affect) auf `false`.

2479 

2480Im Chatbereich der VS Code-Erweiterung und im Code-Tab der Desktop-App wird die Komprimierung im Leerlauf für Konten ausgeführt, die Anthropic auswählt. Claude Code schreibt die Zusammenfassung, während Sie abwesend sind, und komprimiert damit nur, wenn Ihre nächste Nachricht eine Stunde oder länger nach der letzten Anfrage eintrifft.

2481 2479 

2482### `plansDirectory`2480### `plansDirectory`

2483 2481 


5074 5072 

5075### `allowedProviders`5073### `allowedProviders`

5076 5074 

5077Listen 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](https://code.claude.com/docs/de/errors.md#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.5075Listen Sie die Dienste auf, über die ein Rechner 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 bei der nächsten Kontaktaufnahme mit der API abgelehnt, sodass auch ein Wechsel zu einem nicht aufgeführten Anbieter während der Sitzung abgelehnt wird. Die [Ablehnungsmeldung](https://code.claude.com/docs/de/errors.md#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 höher.

5078 5076 

5079* **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](https://code.claude.com/docs/de/managed-settings.md#how-claude-code-combines-managed-sources). Eine ausschließlich über server-verwaltete Einstellungen gelieferte Liste erreicht nur die Sitzungen, die [server-verwaltete Einstellungen abrufen](https://code.claude.com/docs/de/server-managed-settings.md#platform-availability).5077* **Geltungsbereich**: [`Managed`](#scopes). Eine Liste, die die eigenen Admin-Quellen des Rechners festlegen, also MDM-Richtlinien und verwaltete Einstellungsdateien, gilt weiterhin, wenn auch serververwaltete Einstellungen eine liefern: Eine Sitzung darf dann nur die Anbieter verwenden, die auf beiden Listen stehen, sodass eine serververwaltete Liste das, was der Rechner erlaubt, einschränken, aber nie erweitern kann. Welches `allowedProviders` einer Rechnerquelle zählt, richtet sich danach, [wie Claude Code verwaltete Quellen kombiniert](https://code.claude.com/docs/de/managed-settings.md#how-claude-code-combines-managed-sources). Eine Liste, die nur über serververwaltete Einstellungen geliefert wird, erreicht nur die Sitzungen, die [serververwaltete Einstellungen abrufen](https://code.claude.com/docs/de/server-managed-settings.md#platform-availability).

5080* **Typ**: Array von Strings, jeweils einer von:5078* **Typ**: Array von Strings, jeweils einer der folgenden Werte:

5081 * `"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änken5079 * `"anthropic"`: die Anthropic API auf Anthropics eigenem Host, über eine Anmeldung bei claude.ai oder der Console oder über einen API-Schlüssel. Kombinieren Sie ihn mit [`forceLoginMethod`](#forceloginmethod) oder [`forceLoginOrgUUID`](#forceloginorguuid), um auch die Anmeldung einzuschränken

5082 * `"bedrock"`: [Amazon Bedrock](https://code.claude.com/docs/de/amazon-bedrock.md)5080 * `"bedrock"`: [Amazon Bedrock](https://code.claude.com/docs/de/amazon-bedrock.md)

5083 * `"vertex"`: [Google Cloud's Agent Platform](https://code.claude.com/docs/de/google-vertex-ai.md), früher Vertex AI5081 * `"vertex"`: [Google Clouds Agent Platform](https://code.claude.com/docs/de/google-vertex-ai.md), früher Vertex AI

5084 * `"foundry"`: [Microsoft Foundry](https://code.claude.com/docs/de/microsoft-foundry.md)5082 * `"foundry"`: [Microsoft Foundry](https://code.claude.com/docs/de/microsoft-foundry.md)

5085 * `"anthropicAws"`: [Claude Platform on AWS](https://code.claude.com/docs/de/claude-platform-on-aws.md)5083 * `"anthropicAws"`: [Claude Platform on AWS](https://code.claude.com/docs/de/claude-platform-on-aws.md)

5086 * `"mantle"`: der Amazon Bedrock [Mantle-Endpunkt](https://code.claude.com/docs/de/amazon-bedrock.md#use-the-mantle-endpoint). Eine Sitzung, die [Mantle parallel zur Invoke API ausführt](https://code.claude.com/docs/de/amazon-bedrock.md#run-mantle-alongside-the-invoke-api), verwendet beide Anbieter; listen Sie dafür `"bedrock"` und `"mantle"` gemeinsam auf5084 * `"mantle"`: der Amazon Bedrock [Mantle-Endpunkt](https://code.claude.com/docs/de/amazon-bedrock.md#use-the-mantle-endpoint). Eine Sitzung, die [Mantle parallel zur Invoke API ausführt](https://code.claude.com/docs/de/amazon-bedrock.md#run-mantle-alongside-the-invoke-api), verwendet beide Anbieter; führen Sie dafür also `"bedrock"` und `"mantle"` gemeinsam auf

5087 * `"customEndpoint"`: die Anthropic API oder die API eines Cloud-Anbieters, die an einen anderen Host gesendet wird, etwa ein [LLM-Gateway](https://code.claude.com/docs/de/llm-gateway), das über `ANTHROPIC_BASE_URL` oder über die Endpunktvariable eines Anbieters wie `ANTHROPIC_BEDROCK_BASE_URL` angegeben ist. Claude Code lässt ihn nur für genau den Wert zu, den ein verwalteter [`env`](#env)-Block festlegt5085 * `"customEndpoint"`: die Anthropic API oder die API eines Cloud-Anbieters, die an einen anderen Host gesendet wird, etwa an ein [LLM-Gateway](https://code.claude.com/docs/de/llm-gateway), das durch `ANTHROPIC_BASE_URL` oder durch die Endpunktvariable eines Anbieters wie `ANTHROPIC_BEDROCK_BASE_URL` angegeben wird. Claude Code lässt ihn nur für genau den Wert zu, den ein verwalteter [`env`](#env)-Block festlegt

5088 * `"gateway"`: eine [Cloud-Gateway](https://code.claude.com/docs/de/claude-apps-gateway)-Anmeldung5086 * `"gateway"`: eine Anmeldung bei einem [Cloud gateway](https://code.claude.com/docs/de/claude-apps-gateway)

5089* **Standard**: nicht gesetzt, daher kann jeder Anbieter verwendet werden5087* **Standard**: nicht gesetzt, sodass jeder Anbieter verwendet werden kann

5090 5088 

5091```json managed-settings.json theme={null}5089```json managed-settings.json theme={null}

5092{5090{


5094}5092}

5095```5093```

5096 5094 

5097Der Eintrag eines Cloud-Anbieters bezeichnet den eigenen Dienst dieses Anbieters, einschließlich seiner regionalen, FIPS- und privaten Endpunkte.5095Der Eintrag eines Cloud-Anbieters steht jeweils für den eigenen Dienst dieses Anbieters, einschließlich seiner regionalen, FIPS- und privaten Endpunkte.

5098 5096 

5099Ein 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.5097Ein Eintrag, den Claude Code nicht als Anbieternamen erkennt, wird verworfen und gemeldet, und der Rest der Liste wird weiterhin durchgesetzt. Bei einer leeren Liste oder einer Liste, deren Einträge alle unbekannt sind, lehnt Claude Code jeden Anbieter ab und startet auf dem Rechner nicht.

5100 5098 

5101#### Endpunkte, die eine Festlegung im verwalteten `env` benötigen5099#### Endpunkte, die eine Festlegung im verwalteten `env` benötigen

5102 5100 

5103Eine 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:5101Eine 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:

5104 5102 

5105* **`"customEndpoint"`-Sitzungen**: die Variable, die den Host angibt, etwa `ANTHROPIC_BASE_URL`5103* **`"customEndpoint"`-Sitzungen**: die Variable, die den Host angibt, etwa `ANTHROPIC_BASE_URL`

5106* **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"`5104* **Amazon Bedrock**: die Variablen `AWS_ENDPOINT_URL`, `AWS_ENDPOINT_URL_BEDROCK` und `AWS_ENDPOINT_URL_BEDROCK_RUNTIME` des AWS SDK, wenn sie außerhalb des eigenen Dienstes von Bedrock zeigen. Die Sitzung bleibt unter `"bedrock"` statt `"customEndpoint"`

5107* **Die URL einer Gateway-Anmeldung**: Die Sitzung bleibt unter `"gateway"`, und [`forceLoginGatewayUrl`](#forcelogingatewayurl) zählt ebenfalls als Festlegung5105* **Die URL einer Gateway-Anmeldung**: Die Sitzung bleibt unter `"gateway"`, und [`forceLoginGatewayUrl`](#forcelogingatewayurl) zählt ebenfalls als Festlegung

5108 5106 

5109Welche `env`-Blöcke als Festlegungen zählen, hängt davon ab, wo die Liste gesetzt ist:5107Welche `env`-Blöcke als Festlegungen zählen, hängt davon ab, wo die Liste gesetzt ist:

5110 5108 

5111* **Eine Administratorquelle auf dem Computer setzt eine Liste**: Nur die `env`-Blöcke der eigenen Administratorquellen des Computers zählen5109* **Eine Administratorquelle auf dem Rechner setzt eine Liste**: Nur die `env`-Blöcke der eigenen Administratorquellen des Rechners zählen

5112* **Nur server-verwaltete Einstellungen setzen eine Liste**: Ein `env`-Wert in diesen server-verwalteten Einstellungen zählt ebenfalls5110* **Nur serververwaltete Einstellungen setzen eine Liste**: Auch ein `env`-Wert in diesen serververwalteten Einstellungen zählt

5113 5111 

5114Die 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.5112Die 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.

5115 5113 

5116### `apiKeyHelper`5114### `apiKeyHelper`

5117 5115 

5118Fü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.5116Führen Sie einen eigenen Befehl aus, um die Anmeldedaten zu erzeugen, die Claude Code mit Modellanfragen sendet. Claude Code führt den Befehl über die System-Shell aus, `/bin/sh` unter macOS und Linux und `cmd` unter Windows, und sendet seine Ausgabe sowohl als `X-Api-Key`- als auch als `Authorization: Bearer`-Header. Verwenden Sie dies für dynamische oder rotierende Anmeldedaten, etwa kurzlebige Token, die aus einem Vault abgerufen werden.

5119 5117 

5120* **Geltungsbereich**: [`Any file`](#scopes)5118* **Geltungsbereich**: [`Any file`](#scopes)

5121* **Typ**: string, eine Shell-Befehlszeile5119* **Typ**: String, eine Shell-Befehlszeile

5122* **Standard**: nicht gesetzt, daher führt Claude Code keinen Helfer aus5120* **Standard**: nicht gesetzt, sodass Claude Code kein Hilfsprogramm ausführt

5123 5121 

5124```json settings.json theme={null}5122```json settings.json theme={null}

5125{5123{


5127}5125}

5128```5126```

5129 5127 

5130Claude Code speichert den Wert zwischen und führt den Befehl in diesen Fällen erneut aus:5128Claude Code speichert den Wert im Cache und führt den Befehl in diesen Fällen erneut aus:

5131 5129 

5132* Nach der Cache-Lebensdauer, standardmäßig fünf Minuten oder das Intervall, das Sie mit [`CLAUDE_CODE_API_KEY_HELPER_TTL_MS`](https://code.claude.com/docs/de/env-vars) festlegen.5130* Nach Ablauf der Cache-Lebensdauer, standardmäßig fünf Minuten oder das Intervall, das Sie mit [`CLAUDE_CODE_API_KEY_HELPER_TTL_MS`](https://code.claude.com/docs/de/env-vars) festlegen.

5133* Wenn eine Anfrage an die Anthropic API, direkt oder über ein [LLM-Gateway](https://code.claude.com/docs/de/llm-gateway), mit `401` oder `403` fehlschlägt.5131* Wenn eine Anfrage an die Anthropic API, direkt oder über ein [LLM-Gateway](https://code.claude.com/docs/de/llm-gateway), mit `401` oder `403` fehlschlägt.

5134* Vor dem Senden einer Anfrage an die Anthropic API, direkt oder über ein LLM-Gateway, wenn die zwischengespeicherte Ausgabe ein JWT ist, das nach der Generierung durch den Helfer abgelaufen ist. Erfordert Claude Code v2.1.246 oder später.5132* Vor dem Senden einer Anfrage an die Anthropic API, direkt oder über ein LLM-Gateway, wenn die zwischengespeicherte Ausgabe ein JWT ist, das abgelaufen ist, nachdem das Hilfsprogramm es erzeugt hat. Erfordert Claude Code v2.1.246 oder höher.

5135 5133 

5136Die 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.5134Die letzten beiden Fälle gelten nur, wenn die Ausgabe des Hilfsprogramms die Anmeldedaten sind, die Claude Code sendet, und `ANTHROPIC_AUTH_TOKEN` nicht gesetzt ist.

5137 5135 

5138In 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](https://code.claude.com/docs/de/authentication.md#credential-management).5136Wenn der Befehl in interaktiven Sitzungen aus Projekt- oder lokalen Einstellungen stammt, führt Claude Code ihn erst aus, nachdem Sie die Vertrauensabfrage für den Workspace akzeptiert haben. Siehe [Verwaltung von Anmeldedaten](https://code.claude.com/docs/de/authentication.md#credential-management).

5139 5137 

5140### `awsAuthRefresh`5138### `awsAuthRefresh`

5141 5139 

5142Fü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](https://code.claude.com/docs/de/amazon-bedrock.md) 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.5140Führen Sie einen eigenen Befehl wie `aws sso login` aus, um die Anmeldedaten in Ihrem `.aws`-Verzeichnis zu aktualisieren, wenn die Anmeldedaten, die Claude Code für [Amazon Bedrock](https://code.claude.com/docs/de/amazon-bedrock.md) hat, nicht mehr funktionieren. Claude Code prüft die aktuellen Anmeldedaten zuerst gegen STS und führt den Befehl nur aus, wenn diese Prüfung fehlschlägt, und liest dann das aktualisierte `.aws`-Verzeichnis.

5143 5141 

5144Wenn 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`](https://code.claude.com/docs/de/env-vars) auf `1`.5142Wenn die Prü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 diese Ausführung, statt eine eigene zu starten. Ein Prozess, der mit einer ausstehenden Anfrage 60 Sekunden gewartet hat, führt den Befehl selbst aus. Um dies auszuschalten, setzen Sie [`CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK`](https://code.claude.com/docs/de/env-vars) auf `1`.

5145 5143 

5146* **Geltungsbereich**: [`Any file`](#scopes)5144* **Geltungsbereich**: [`Any file`](#scopes)

5147* **Typ**: string, eine Shell-Befehlszeile5145* **Typ**: String, eine Shell-Befehlszeile

5148* **Standard**: nicht gesetzt, daher aktualisiert Claude Code AWS-Anmeldedaten nicht für Sie5146* **Standard**: nicht gesetzt, sodass Claude Code AWS-Anmeldedaten nicht für Sie aktualisiert

5149 5147 

5150```json settings.json theme={null}5148```json settings.json theme={null}

5151{5149{


5153}5151}

5154```5152```

5155 5153 

5156Verwenden Sie diesen Schlüssel, wenn Ihr Aktualisierungsablauf in `.aws` schreibt; verwenden Sie [`awsCredentialExport`](#awscredentialexport), wenn er stattdessen Anmeldedaten ausgibt. Siehe [erweiterte Anmeldedatenkonfiguration](https://code.claude.com/docs/de/amazon-bedrock.md#advanced-credential-configuration).5154Verwenden Sie diesen Schlüssel, wenn Ihr Aktualisierungsablauf in `.aws` schreibt; verwenden Sie [`awsCredentialExport`](#awscredentialexport), wenn er stattdessen Anmeldedaten ausgibt. Siehe [erweiterte Konfiguration von Anmeldedaten](https://code.claude.com/docs/de/amazon-bedrock.md#advanced-credential-configuration).

5157 5155 

5158### `awsCredentialExport`5156### `awsCredentialExport`

5159 5157 

5160Führen Sie Ihren eigenen Befehl aus, der AWS-Anmeldedaten als JSON ausgibt, damit Claude Code [Amazon Bedrock](https://code.claude.com/docs/de/amazon-bedrock.md) 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.5158Führen Sie einen eigenen Befehl aus, der AWS-Anmeldedaten als JSON ausgibt, damit Claude Code [Amazon Bedrock](https://code.claude.com/docs/de/amazon-bedrock.md) mit Anmeldedaten aufrufen kann, die sich nicht in Ihrem `.aws`-Verzeichnis befinden. Claude Code akzeptiert das Ausgabeformat von `aws sts` und das flache Format von `aws configure export-credentials` und beschränkt die Anmeldedaten auf seinen eigenen Bedrock-Client, sodass die Shell-Befehle, die Claude ausführt, weiterhin Ihre Umgebungs-Anmeldedaten sehen.

5161 5159 

5162* **Geltungsbereich**: [`Any file`](#scopes)5160* **Geltungsbereich**: [`Any file`](#scopes)

5163* **Typ**: string, eine Shell-Befehlszeile5161* **Typ**: String, eine Shell-Befehlszeile

5164* **Standard**: nicht gesetzt, daher verwendet Claude Code die Umgebungs-AWS-Anmeldedatenkette5162* **Standard**: nicht gesetzt, sodass Claude Code die Standard-AWS-Anmeldedatenkette der Umgebung verwendet

5165 5163 

5166```json settings.json theme={null}5164```json settings.json theme={null}

5167{5165{


5169}5167}

5170```5168```

5171 5169 

5172Im Gegensatz zu [`awsAuthRefresh`](#awsauthrefresh) führt Claude Code diesen Befehl immer aus, wenn er gesetzt ist, ohne zunächst die Umgebungsanmeldedaten zu überprüfen. Siehe [erweiterte Anmeldedatenkonfiguration](https://code.claude.com/docs/de/amazon-bedrock.md#advanced-credential-configuration).5170Anders als bei [`awsAuthRefresh`](#awsauthrefresh) führt Claude Code diesen Befehl immer aus, wenn er gesetzt ist, ohne zuerst die Umgebungs-Anmeldedaten zu prüfen. Siehe [erweiterte Konfiguration von Anmeldedaten](https://code.claude.com/docs/de/amazon-bedrock.md#advanced-credential-configuration).

5173 5171 

5174### `forceLoginMethod`5172### `forceLoginMethod`

5175 5173 

5176Beschrä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](https://code.claude.com/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](https://code.claude.com/docs/de/authentication.md#sign-in-without-an-api-key) in den Sitzungen, auf die diese Datei zutrifft.5174Schränken Sie ein, 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 statt zu einer First-Party-Anmeldung zu einem [Cloud-Gateway](https://code.claude.com/docs/de/claude-apps-gateway) zu leiten. Administratoren setzen dies in verwalteten Einstellungen und kombinieren es mit [`forceLoginOrgUUID`](#forceloginorguuid), um die claude.ai-Anmeldungen der Entwickler auf eine Organisation zu beschränken.

5177 5175 

5178* **Geltungsbereich**: [`Any file`](#scopes). Claude Code berücksichtigt `"gateway"` aus denselben Quellen wie [`forceLoginGatewayUrl`](#forcelogingatewayurl) und behandelt es überall sonst als nicht gesetzt.5176Wenn Sie den Wert in einer beliebigen Einstellungsdatei auf `"claudeai"` setzen, bietet Claude Code in den Sitzungen, für die diese Datei gilt, auch die [schlüssellose Console-Anmeldung](https://code.claude.com/docs/de/authentication.md#sign-in-without-an-api-key) nicht mehr an. Mit `"console"` allein können Personen die schlüssellose Anmeldung nach einer fehlgeschlagenen Anmeldung weiterhin erreichen. Wie Sie verhindern, dass Claude Code sie anbietet, erfahren Sie unter [Schlüssellose Anmeldung auf verwalteten Rechnern nicht mehr anbieten](https://code.claude.com/docs/de/authentication.md#stop-offering-the-keyless-sign-in-on-managed-machines); dort ist auch aufgeführt, was `forceLoginOrgUUID` sonst noch ändert.

5179* **Typ**: string, einer von:5177 

5180 * `"claudeai"`: nur claude.ai-Konten können sich anmelden5178* **Geltungsbereich**: [`Any file`](#scopes). Claude Code berücksichtigt `"gateway"` aus denselben Quellen wie [`forceLoginGatewayUrl`](#forcelogingatewayurl) und behandelt den Wert überall sonst als nicht gesetzt.

5181 * `"console"`: nur Claude Console-Konten können sich anmelden5179* **Typ**: String, einer der folgenden Werte:

5182 * `"gateway"`: Claude Code sendet Personen zu einem Cloud-Gateway statt zu einer First-Party-Anmeldung5180 * `"claudeai"`: Nur claude.ai-Konten können sich anmelden

5183* **Standard**: nicht gesetzt, daher wählen Personen eine Anmeldemethode5181 * `"console"`: Nur Claude Console-Konten können sich anmelden

5182 * `"gateway"`: Claude Code leitet Personen statt zu einer First-Party-Anmeldung zu einem Cloud-Gateway

5183* **Standard**: nicht gesetzt, sodass Personen eine Anmeldemethode wählen

5184 5184 

5185```json settings.json theme={null}5185```json settings.json theme={null}

5186{5186{


5188}5188}

5189```5189```

5190 5190 

5191Jeder First-Party-Anmeldepfad wendet die Einschränkung an, einschließlich der [VS Code-Erweiterung](https://code.claude.com/docs/de/vs-code.md), des Agent SDK, `claude setup-token` und `/install-github-app`, mit Ausnahme des interaktiven Anmeldebildschirms des Terminals, der über `/login` oder das Onboarding beim ersten Start erreichbar ist, das die Methode vorwählt, ohne sie zu erzwingen. Vor v2.1.212 galt dies nur für Terminal-Anmeldungen. Siehe [Anmeldung auf Ihre Organisation beschränken](https://code.claude.com/docs/de/authentication.md#restrict-login-to-your-organization), um zu erfahren, wie jeder Anmeldepfad, Umgebungsanmeldedaten und Drittanbieter behandelt werden.5191Jeder First-Party-Anmeldeweg wendet die Einschränkung an, einschließlich der [VS Code-Erweiterung](https://code.claude.com/docs/de/vs-code.md), des Agent SDK, `claude setup-token` und `/install-github-app`, mit Ausnahme des interaktiven Anmeldebildschirms im Terminal, der über `/login` oder das Onboarding beim ersten Start erreicht wird; dieser wählt die Methode vor, ohne sie zu erzwingen. Vor v2.1.212 wendeten nur Terminal-Anmeldungen sie an. Unter [Anmeldung auf Ihre Organisation beschränken](https://code.claude.com/docs/de/authentication.md#restrict-login-to-your-organization) erfahren Sie, wie jeder Anmeldeweg, Anmeldedaten aus der Umgebung und Drittanbieter behandelt werden.

5192 5192 

5193Wenn eine verwaltete Quelle auf dem Computer `"gateway"` setzt, verwendet Claude Code keine verbleibende Anmeldung, keinen API-Schlüssel oder `apiKeyHelper`-Anmeldedaten. Siehe [Administrator-Richtlinie erfordert eine Cloud-Gateway-Anmeldung](https://code.claude.com/docs/de/errors.md#administrator-policy-requires-a-cloud-gateway-sign-in) für die Nachricht, die jede erzeugt. Wenn Sie einen Cloud-Anbieter über `CLAUDE_CODE_USE_BEDROCK` oder eine ähnliche Umgebungsvariable auswählen, benötigt die Sitzung keine Gateway-Anmeldung. Vor v2.1.261 verwendete Claude Code eine verbleibende Anmeldung auf diesen Computern.5193Wenn eine verwaltete Quelle auf dem Rechner `"gateway"` setzt, verwendet Claude Code keine übrig gebliebene Anmeldung, keinen API-Schlüssel und keine `apiKeyHelper`-Anmeldedaten. Unter [Administrator policy requires a Cloud gateway sign-in](https://code.claude.com/docs/de/errors.md#administrator-policy-requires-a-cloud-gateway-sign-in) finden Sie die Meldung, die jeweils erzeugt wird. Wenn Sie einen Cloud-Anbieter über `CLAUDE_CODE_USE_BEDROCK` oder eine ähnliche Umgebungsvariable auswählen, benötigt die Sitzung keine Gateway-Anmeldung. Vor v2.1.261 verwendete Claude Code auf diesen Rechnern eine übrig gebliebene Anmeldung.

5194 5194 

5195### `forceLoginGatewayUrl`5195### `forceLoginGatewayUrl`

5196 5196 

5197Legen Sie die Gateway-URL fest, mit der sich der `/login` Cloud-Gateway-Bildschirm verbindet, damit Personen Ihr [Cloud-Gateway](https://code.claude.com/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.5197Legen Sie die Gateway-URL fest, mit der sich der `/login`-Bildschirm „Cloud gateway“ verbindet, sodass Personen Ihr [Cloud-Gateway](https://code.claude.com/docs/de/claude-apps-gateway) erreichen, ohne dessen Adresse einzugeben. Der Bildschirm hat kein URL-Feld: Ist dieser Schlüssel gesetzt, zeigt er Ihre Gateway-URL an und verbindet sich, wenn die Person Enter drückt; ohne ihn fordert er die Person auf, sich an ihren IT-Administrator zu wenden.

5198 5198 

5199In verwalteten Einstellungen macht entweder dieser Schlüssel oder `forceLoginMethod: "gateway"` 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](https://code.claude.com/docs/de/errors.md#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.5199In verwalteten Einstellungen macht entweder dieser Schlüssel oder `forceLoginMethod: "gateway"` den Rechner zu einem reinen Gateway-Rechner, mit Ausnahme von Sitzungen, die mit `CLAUDE_CODE_USE_*` einen Cloud-Anbieter auswählen. `/login` öffnet sich dann auf dem Bildschirm „Cloud gateway“ ohne Auswahl der Anmeldemethode. Unter [Administrator policy requires a Cloud gateway sign-in](https://code.claude.com/docs/de/errors.md#administrator-policy-requires-a-cloud-gateway-sign-in) erfahren Sie, was mit einer übrig gebliebenen First-Party-Anmeldung oder einem API-Schlüssel geschieht. Setzen Sie beide Schlüssel, damit sich der Bildschirm verbindet, statt einen Fehler anzuzeigen.

5200 5200 

5201* **Geltungsbereich**: [`User or managed`](#scopes). Wird von einer verwalteten Quelle auf dem Computer gelesen: `managed-settings.json`, die macOS plist oder Windows HKLM-Registrierung oder ein Policy-Helfer. Auf einem Computer ohne eine dieser Quellen liest Claude Code v2.1.295 oder später es auch aus den [Benutzereinstellungen](https://code.claude.com/docs/de/claude-apps-gateway#set-the-gateway-url-in-user-settings). Claude Code ignoriert es in HKCU- und Server-verwalteten Einstellungen.5201* **Geltungsbereich**: [`User or managed`](#scopes). Wird aus einer verwalteten Quelle auf dem Rechner gelesen: `managed-settings.json`, der macOS-plist oder der Windows-HKLM-Registry oder einem Richtlinien-Hilfsprogramm. Auf einem Rechner ohne eine dieser Quellen liest Claude Code v2.1.295 oder höher ihn auch aus den [Benutzereinstellungen](https://code.claude.com/docs/de/claude-apps-gateway#set-the-gateway-url-in-user-settings). Claude Code ignoriert ihn in HKCU und in serververwalteten Einstellungen.

5202* **Typ**: string, eine vollständige URL einschließlich des Schemas5202* **Typ**: String, eine vollständige URL einschließlich Schema

5203* **Standard**: nicht gesetzt, daher zeigt der Cloud-Gateway-Bildschirm einen Fehler an, der Personen auffordert, sich an ihren IT-Administrator zu wenden5203* **Standard**: nicht gesetzt, sodass der Bildschirm „Cloud gateway“ einen Fehler anzeigt, der Personen auffordert, sich an ihren IT-Administrator zu wenden

5204 5204 

5205```json managed-settings.json theme={null}5205```json managed-settings.json theme={null}

5206{5206{


5208}5208}

5209```5209```

5210 5210 

5211Wenn der Wert keine gültige URL ist, meldet der Anmeldebildschirm dies, und der Rest der verwalteten Einstellungsdatei wird immer noch angewendet. Siehe [Gateway-URL festlegen](https://code.claude.com/docs/de/claude-apps-gateway#set-the-gateway-url).5211Wenn der Wert keine gültige URL ist, meldet der Anmeldebildschirm dies, und der Rest der verwalteten Einstellungsdatei gilt weiterhin. Siehe [Gateway-URL festlegen](https://code.claude.com/docs/de/claude-apps-gateway#set-the-gateway-url).

5212 5212 

5213### `forceLoginOrgUUID`5213### `forceLoginOrgUUID`

5214 5214 

5215Verlangen 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](https://code.claude.com/docs/de/authentication.md#sign-in-without-an-api-key) in den Sitzungen, auf die diese Datei zutrifft, und erstellt stattdessen einen API-Schlüssel.5215Verlangen Sie aus einer verwalteten Quelle, dass claude.ai-Kontoanmeldungen zu einer Anthropic-Organisation gehören, angegeben als einzelne UUID, oder zu einer von mehreren Organisationen, angegeben als Array. Aus jeder Einstellungsdatei verwendet Claude Code eine einzelne UUID außerdem, um diese Organisation bei einer Anmeldung bei claude.ai oder der Claude Console vorzuwählen; bei einem Array wird nichts vorgewählt. Wenn Sie den Schlüssel in einer beliebigen Einstellungsdatei setzen, bietet Claude Code in den Sitzungen, für die diese Datei gilt, auch die [schlüssellose Console-Anmeldung](https://code.claude.com/docs/de/authentication.md#sign-in-without-an-api-key) nicht mehr an und erstellt stattdessen einen API-Schlüssel.

5216 5216 

5217* **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.5217* **Geltungsbereich**: [`Any file`](#scopes). Nur eine verwaltete Quelle erzwingt die Einschränkung; eine einzelne UUID in einer anderen Einstellungsdatei wählt die Organisation bei der Anmeldung vor, ohne sie einzuschränken.

5218* **Typ**: string, eine UUID, oder Array von Strings, mehrere UUIDs5218* **Typ**: String, eine UUID, oder Array von Strings, mehrere UUIDs

5219* **Standard**: nicht gesetzt, daher kann sich jede Organisation anmelden5219* **Standard**: nicht gesetzt, sodass sich jede Organisation anmelden kann

5220 5220 

5221Dieses Beispiel akzeptiert Anmeldungen von einer von zwei Organisationen, ohne eine vorzuwählen:5221Dieses Beispiel akzeptiert Anmeldungen von einer von zwei Organisationen, ohne eine vorzuwählen:

5222 5222 


5226}5226}

5227```5227```

5228 5228 

5229Wenn eine verwaltete Quelle ein leeres Array setzt oder einen Wert, der weder ein String noch ein Array von Strings ist, können Benutzer, die sich mit einem Anthropic-Konto anmelden, Claude Code nicht starten und keine Anmeldung abschließen. Sie sehen eine Meldung, die `forceLoginOrgUUID` nennt und sie auffordert, sich an ihren Administrator zu wenden. Ein [`policyHelper`](#policyhelper), der einen Wert des falschen Typs ausgibt, [schlägt bei seinem Lauf fehl](#helper-failures) statt dessen.5229Wenn eine verwaltete Quelle ein leeres Array oder einen Wert setzt, der weder ein String noch ein Array von Strings ist, können Benutzer, die sich mit einem Anthropic-Konto anmelden, Claude Code nicht starten und keine Anmeldung abschließen. Sie sehen eine Meldung, die `forceLoginOrgUUID` nennt und sie auffordert, sich an ihren Administrator zu wenden. Ein [`policyHelper`](#policyhelper), der einen Wert des falschen Typs ausgibt, [lässt stattdessen seine Ausführung fehlschlagen](#helper-failures).

5230 5230 

5231Siehe [Anmeldung auf Ihre Organisation beschränken](https://code.claude.com/docs/de/authentication.md#restrict-login-to-your-organization), um zu erfahren, wie Claude Code Claude Console-Anmeldungen, die anderen Anmeldepfade und Umgebungsanmeldedaten behandelt.5231Unter [Anmeldung auf Ihre Organisation beschränken](https://code.claude.com/docs/de/authentication.md#restrict-login-to-your-organization) erfahren Sie, wie Claude Code Claude Console-Anmeldungen, die anderen Anmeldewege und Anmeldedaten aus der Umgebung behandelt.

5232 5232 

5233### `gatewayInternalNetworks`5233### `gatewayInternalNetworks`

5234 5234 

5235Deklarieren Sie die öffentlichen IPv4-Blöcke, aus denen Ihre Organisation ihr internes Netzwerk nummeriert, damit `/login` ein [Cloud-Gateway](https://code.claude.com/docs/de/claude-apps-gateway) dort akzeptiert. Erfordert Claude Code v2.1.268 oder später.5235Geben Sie die öffentlichen IPv4-Blöcke an, aus denen Ihre Organisation ihr internes Netzwerk adressiert, damit `/login` dort ein [Cloud-Gateway](https://code.claude.com/docs/de/claude-apps-gateway) akzeptiert. Erfordert Claude Code v2.1.268 oder höher.

5236 5236 

5237Ohne 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.5237Ohne diesen Schlüssel verbindet sich `/login` mit jedem Gateway an einer privaten Adresse und mit nichts anderem. Mit ihm akzeptiert `/login` auch ein Gateway innerhalb eines aufgeführten Blocks, allerdings nur über eine direkte Verbindung. Die eigene Adresse des Rechners auf dieser Verbindung muss ebenfalls innerhalb desselben Blocks liegen.

5238 5238 

5239* **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.5239* **Geltungsbereich**: [`Managed`](#scopes). Wird nur aus einer Quelle auf dem Rechner gelesen: `managed-settings.json`, der macOS-plist oder der Windows-HKLM-Registry oder einem Richtlinien-Hilfsprogramm. Claude Code ignoriert ihn in HKCU und in serververwalteten Einstellungen.

5240* **Typ**: Array von Strings, höchstens vier IPv4-CIDR-Blöcke, jeweils `/8` bis `/32`, nicht überlappend miteinander und keine Überlappung mit privatem Raum.5240* **Typ**: Array von Strings, höchstens vier IPv4-CIDR-Blöcke, jeweils `/8` bis `/32`, die sich weder gegenseitig noch mit privatem Adressraum überschneiden.

5241* **Standard**: nicht gesetzt, daher akzeptiert `/login` nur Gateways auf privaten Adressen5241* **Standard**: nicht gesetzt, sodass `/login` nur Gateways an privaten Adressen akzeptiert

5242 5242 

5243```json managed-settings.json theme={null}5243```json managed-settings.json theme={null}

5244{5244{


5246}5246}

5247```5247```

5248 5248 

5249Ersetzen Sie den Dokumentationsbereich im Beispiel durch Ihren eigenen Block. Claude Code lehnt die Dokumentationsbereiche, die Bereiche, die VPN- und NAT64-Clients lokal verwenden, und reservierten Raum ab, aus dem kein Netzwerk nummeriert wird, wie Multicast.5249Ersetzen Sie den Dokumentationsbereich im Beispiel durch Ihren eigenen Block. Claude Code lehnt die Dokumentationsbereiche ab, ebenso die Bereiche, die VPN- und NAT64-Clients lokal verwenden, sowie reservierten Adressraum, aus dem kein Netzwerk adressiert wird, etwa Multicast.

5250 5250 

5251Wenn ein Eintrag ungültig ist oder der Wert keine Liste von Strings ist, benennt `/login` das Problem und lehnt jede neue Gateway-Anmeldung auf dem Computer ab, bis Sie den Wert korrigieren. Bestehende Anmeldungen funktionieren weiterhin. Siehe [Erlauben Sie ein Gateway auf öffentlichem Adressraum, den Sie besitzen](https://code.claude.com/docs/de/claude-apps-gateway#allow-a-gateway-on-public-address-space-you-own) für die vollständigen Regeln und was Entwickler sehen.5251Wenn ein Eintrag ungültig ist oder der Wert keine Liste von Strings ist, nennt `/login` das Problem und lehnt jede neue Gateway-Anmeldung auf dem Rechner ab, bis Sie den Wert korrigieren. Bestehende Anmeldungen funktionieren weiterhin. Unter [Ein Gateway in eigenem öffentlichem Adressraum zulassen](https://code.claude.com/docs/de/claude-apps-gateway#allow-a-gateway-on-public-address-space-you-own) finden Sie die vollständigen Regeln und was Entwickler sehen.

5252 5252 

5253### `gcpAuthRefresh`5253### `gcpAuthRefresh`

5254 5254 

5255Fü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](https://code.claude.com/docs/de/google-vertex-ai.md) weiterhin funktionieren, ohne dass Sie sich manuell erneut authentifizieren müssen.5255Führen Sie einen 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 Clouds Agent Platform](https://code.claude.com/docs/de/google-vertex-ai.md) weiterhin funktionieren, ohne dass Sie sich manuell erneut authentifizieren müssen.

5256 5256 

5257Wenn 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`](https://code.claude.com/docs/de/env-vars) auf `1`.5257Wenn 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 diese Ausführung, statt eine eigene zu starten. Ein Prozess, der mit einer ausstehenden Anfrage 60 Sekunden gewartet hat, führt den Befehl selbst aus. Um dies auszuschalten, setzen Sie [`CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK`](https://code.claude.com/docs/de/env-vars) auf `1`.

5258 5258 

5259* **Geltungsbereich**: [`Any file`](#scopes)5259* **Geltungsbereich**: [`Any file`](#scopes)

5260* **Typ**: string, eine Shell-Befehlszeile5260* **Typ**: String, eine Shell-Befehlszeile

5261* **Standard**: nicht gesetzt, daher teilt Ihnen der Anmeldedatenfehler von Claude Code mit, `gcloud auth application-default login` selbst auszuführen5261* **Standard**: nicht gesetzt, sodass der Anmeldedatenfehler von Claude Code Sie auffordert, `gcloud auth application-default login` selbst auszuführen

5262 5262 

5263```json settings.json theme={null}5263```json settings.json theme={null}

5264{5264{


5266}5266}

5267```5267```

5268 5268 

5269Siehe [erweiterte Anmeldedatenkonfiguration](https://code.claude.com/docs/de/google-vertex-ai.md#advanced-credential-configuration).5269Siehe [erweiterte Konfiguration von Anmeldedaten](https://code.claude.com/docs/de/google-vertex-ai.md#advanced-credential-configuration).

5270 5270 

5271### `otelHeadersHelper`5271### `otelHeadersHelper`

5272 5272 

5273Fü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.5273Führen Sie einen eigenen Befehl aus, um die Header zu erzeugen, die Claude Code mit OpenTelemetry-Exporten sendet, für Backends mit rotierenden Token. Claude Code führt ihn beim Start und danach regelmäßig aus und erwartet auf stdout ein JSON-Objekt mit String-Headerwerten.

5274 5274 

5275* **Geltungsbereich**: [`Any file`](#scopes)5275* **Geltungsbereich**: [`Any file`](#scopes)

5276* **Typ**: string, ein ausführbarer Pfad oder eine Shell-Befehlszeile5276* **Typ**: String, ein Pfad zu einer ausführbaren Datei oder eine Shell-Befehlszeile

5277* **Standard**: nicht gesetzt, daher fügt Claude Code keine Helfer-generierten Header hinzu5277* **Standard**: nicht gesetzt, sodass Claude Code keine vom Hilfsprogramm erzeugten Header hinzufügt

5278 5278 

5279```json settings.json theme={null}5279```json settings.json theme={null}

5280{5280{


5282}5282}

5283```5283```

5284 5284 

5285Legen Sie das Aktualisierungsintervall mit [`CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS`](https://code.claude.com/docs/de/env-vars) fest. Siehe [Dynamische Header](https://code.claude.com/docs/de/monitoring-usage.md#dynamic-headers) für die Skriptanforderungen und was passiert, wenn der Helfer fehlschlägt.5285Legen Sie das Aktualisierungsintervall mit [`CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS`](https://code.claude.com/docs/de/env-vars) fest. Unter [Dynamische Header](https://code.claude.com/docs/de/monitoring-usage.md#dynamic-headers) finden Sie die Anforderungen an das Skript und was passiert, wenn das Hilfsprogramm fehlschlägt.

5286 5286 

5287## Aktualisierungen und Versionsverwaltung5287## Aktualisierungen und Versionsverwaltung

5288 5288 


5585| 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 |5585| 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 |

5586| 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) |5586| 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) |

5587| 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) |5587| 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) |

5588| 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) |5588| 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`, [`parentSettingsBehavior`](#parentsettingsbehavior), [`modelPicker`](#modelpicker), [`policyHelper`](#policyhelper), [`permissions.defaultMode`](#permissions-defaultmode) |

5589| `env` | [Zusammenführung pro Variable über Admin-Quellen](https://code.claude.com/docs/de/managed-settings.md#keys-read-from-every-admin-source), unter sowohl `"first-wins"` als auch `"merge"` | [`env`](#env) |5589| `env` | [Zusammenführung pro Variable über Admin-Quellen](https://code.claude.com/docs/de/managed-settings.md#keys-read-from-every-admin-source), unter sowohl `"first-wins"` als auch `"merge"` | [`env`](#env) |

5590| Jeder andere Schlüssel | Nimmt den Wert aus der höchsten Quelle, die ihn setzt | [`cleanupPeriodDays`](#cleanupperioddays), [`model`](#model) |5590| Jeder andere Schlüssel | Nimmt den Wert aus der höchsten Quelle, die ihn setzt | [`cleanupPeriodDays`](#cleanupperioddays), [`model`](#model) |

5591 5591 


5596* **[`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.5596* **[`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.

5597* **[`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.5597* **[`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.

5598* **[`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.5598* **[`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.

5599* **[`forceLoginOrgUUID`](#forceloginorguuid) und die `"claudeai"`- und `"console"`-Werte von [`forceLoginMethod`](#forceloginmethod)**: Welcher Wert gilt, entnehmen Sie nicht der Tabelle, sondern [Welche verwaltete Quelle Anmeldeschlüssel liefert](https://code.claude.com/docs/de/managed-settings.md#which-managed-source-supplies-login-keys).

5599* **[`allowedProviders`](#allowedproviders)**: Nach der Regel der Tabelle begrenzt die eigene Liste des Computers das Ergebnis weiterhin, wie im Hinweis unter „Bereich“ seines Eintrags angegeben.5600* **[`allowedProviders`](#allowedproviders)**: Nach der Regel der Tabelle begrenzt die eigene Liste des Computers das Ergebnis weiterhin, wie im Hinweis unter „Bereich“ seines Eintrags angegeben.

5600 5601 

5601Um zu bestätigen, welche Quellen auf einem Computer kombiniert wurden, führen Sie `/status` aus und [lesen Sie die Zeile `Setting sources`](https://code.claude.com/docs/de/managed-settings#read-the-source-in-/status).5602Um zu bestätigen, welche Quellen auf einem Computer kombiniert wurden, führen Sie `/status` aus und [lesen Sie die Zeile `Setting sources`](https://code.claude.com/docs/de/managed-settings#read-the-source-in-/status).

skills.md +10 −3

Details

395| Feld | Erforderlich | Beschreibung |395| Feld | Erforderlich | Beschreibung |

396| :- | :- | :- |396| :- | :- | :- |

397| `name` | Nein | Befehlsname, der im `/`-Menü angezeigt wird. Standardmäßig der Verzeichnisname. Siehe [Wie eine Fähigkeit ihren Befehlsnamen erhält](#how-a-skill-gets-its-command-name), um zu sehen, wie das Feld mit dem Namen interagiert, den Sie eingeben, um die Fähigkeit aufzurufen. |397| `name` | Nein | Befehlsname, der im `/`-Menü angezeigt wird. Standardmäßig der Verzeichnisname. Siehe [Wie eine Fähigkeit ihren Befehlsnamen erhält](#how-a-skill-gets-its-command-name), um zu sehen, wie das Feld mit dem Namen interagiert, den Sie eingeben, um die Fähigkeit aufzurufen. |

398| `description` | Empfohlen | Was die Fähigkeit tut und wann sie verwendet werden soll. Claude verwendet dies, um zu entscheiden, wann die Fähigkeit angewendet werden soll. Wenn weggelassen, wird die erste nicht leere Zeile des Markdown-Inhalts verwendet. Setzen Sie den wichtigsten Anwendungsfall zuerst: Der kombinierte `description`- und `when_to_use`-Text wird in der Fähigkeitsauflistung auf 1.536 Zeichen gekürzt, um die Kontextnutzung zu reduzieren. |398| `description` | Empfohlen | Was der Skill tut und wann er verwendet werden soll. Claude verwendet dies, um zu entscheiden, wann der Skill angewendet werden soll. Wenn weggelassen, wird die erste nicht leere Zeile des Markdown-Inhalts verwendet. Setzen Sie den wichtigsten Anwendungsfall zuerst: Der kombinierte `description`- und `when_to_use`-Text wird in der Skill-Auflistung auf 1.536 Zeichen gekürzt, um die Kontextnutzung zu reduzieren. Spitze Klammern im Text [werden als `&lt;` und `&gt;` angezeigt](#angle-brackets-in-a-skill-description). |

399| `when_to_use` | Nein | Zusätzlicher Kontext für den Zeitpunkt, zu dem Claude die Fähigkeit aufrufen sollte, z. B. Trigger-Phrasen oder Beispielanfragen. An `description` in der Fähigkeitsauflistung angehängt und zählt zur 1.536-Zeichen-Obergrenze. |399| `when_to_use` | Nein | Zusätzlicher Kontext für den Zeitpunkt, zu dem Claude die Fähigkeit aufrufen sollte, z. B. Trigger-Phrasen oder Beispielanfragen. An `description` in der Fähigkeitsauflistung angehängt und zählt zur 1.536-Zeichen-Obergrenze. |

400| `argument-hint` | Nein | Hinweis, der während der Autovervollständigung angezeigt wird, um erwartete Argumente anzuzeigen. Beispiel: `[issue-number]` oder `[filename] [format]`. |400| `argument-hint` | Nein | Hinweis, der während der Autovervollständigung angezeigt wird, um erwartete Argumente anzuzeigen. Beispiel: `[issue-number]` oder `[filename] [format]`. |

401| `arguments` | Nein | Benannte Positionsargumente für [`$name`-Substitution](#available-string-substitutions) im Fähigkeitsinhalt. Akzeptiert eine durch Leerzeichen getrennte Zeichenkette oder eine YAML-Liste. Namen werden in Reihenfolge Argumentpositionen zugeordnet. |401| `arguments` | Nein | Benannte Positionsargumente für [`$name`-Substitution](#available-string-substitutions) im Fähigkeitsinhalt. Akzeptiert eine durch Leerzeichen getrennte Zeichenkette oder eine YAML-Liste. Namen werden in Reihenfolge Argumentpositionen zugeordnet. |


778 778 

779Hängen Sie bei der Standard-Shell `bash` `|| true` an jeden anderen Befehl an, bei dem Sie einen Exit-Code ungleich null erwarten. Ein Prüfskript, das mit 1 endet, wenn es Probleme findet, ist ein Beispiel dafür.779Hängen Sie bei der Standard-Shell `bash` `|| true` an jeden anderen Befehl an, bei dem Sie einen Exit-Code ungleich null erwarten. Ein Prüfskript, das mit 1 endet, wenn es Probleme findet, ist ein Beispiel dafür.

780 780 

781#### Steuerzeichen in eingefügten Befehlen781#### Wenn kein Shell-Befehl ausgeführt wurde

782 782 

783`No shell command in <name> was run` bedeutet, dass einer der `!`-Befehle der Datei ein rohes Steuerzeichen außer Tabulator oder Zeilenumbruch enthält, sodass keiner von ihnen ausgeführt wird. Siehe [wie Sie das Zeichen finden und entfernen](https://code.claude.com/docs/de/errors.md#no-shell-command-was-run).783`No shell command in <name> was run` bedeutet, dass einer seiner Shell-Befehle ein Zeichen enthält, das das Tool nicht akzeptiert. Wie Sie das Zeichen finden und entfernen, erfahren Sie in der [Fehlerreferenz](https://code.claude.com/docs/de/errors.md#no-shell-command-was-run).

784 784 

785#### Berechtigungsprüfungen bei eingefügten Befehlen785#### Berechtigungsprüfungen bei eingefügten Befehlen

786 786 


1229 1229 

1230Um das Budget zu erhöhen, legen Sie die Einstellung [`skillListingBudgetFraction`](https://code.claude.com/docs/de/settings-reference#skilllistingbudgetfraction) (z. B. `0.02` = 2 %) oder die Umgebungsvariable `SLASH_COMMAND_TOOL_CHAR_BUDGET` auf eine feste Zeichenanzahl fest. Um Budget für andere Skills freizugeben, legen Sie Einträge mit niedriger Priorität auf `"name-only"` in [`skillOverrides`](#override-skill-visibility-from-settings) fest, sodass sie ohne Beschreibung aufgelistet werden. Sie können auch den Text `description` und `when_to_use` an der Quelle kürzen: Stellen Sie den wichtigsten Anwendungsfall zuerst, da der kombinierte Text jedes Eintrags unabhängig vom Budget auf 1.536 Zeichen begrenzt ist. Die Obergrenze ist mit [`skillListingMaxDescChars`](https://code.claude.com/docs/de/settings-reference#skilllistingmaxdescchars) konfigurierbar.1230Um das Budget zu erhöhen, legen Sie die Einstellung [`skillListingBudgetFraction`](https://code.claude.com/docs/de/settings-reference#skilllistingbudgetfraction) (z. B. `0.02` = 2 %) oder die Umgebungsvariable `SLASH_COMMAND_TOOL_CHAR_BUDGET` auf eine feste Zeichenanzahl fest. Um Budget für andere Skills freizugeben, legen Sie Einträge mit niedriger Priorität auf `"name-only"` in [`skillOverrides`](#override-skill-visibility-from-settings) fest, sodass sie ohne Beschreibung aufgelistet werden. Sie können auch den Text `description` und `when_to_use` an der Quelle kürzen: Stellen Sie den wichtigsten Anwendungsfall zuerst, da der kombinierte Text jedes Eintrags unabhängig vom Budget auf 1.536 Zeichen begrenzt ist. Die Obergrenze ist mit [`skillListingMaxDescChars`](https://code.claude.com/docs/de/settings-reference#skilllistingmaxdescchars) konfigurierbar.

1231 1231 

1232### Spitze Klammern in einer Skill-Beschreibung werden als `&lt;` und `&gt;` angezeigt

1233 

1234Claude Code zeigt `<` und `>` in den Feldern `description` und `when_to_use` als `&lt;` und `&gt;` an. Um einen Platzhalter wie `<branch>` anzuzeigen, verwenden Sie eckige Klammern oder [`argument-hint`](#frontmatter-reference):

1235 

1236* **Eckige Klammern**: Ersetzen Sie `<branch>` durch `[branch]`, was so angezeigt wird, wie es eingegeben wurde

1237* **`argument-hint`**: Verschieben Sie den Platzhalter in eine neue Zeile `argument-hint: <branch>`. Er wird nach dem Befehlsnamen angezeigt. Wenn Sie den Skill auch auf claude.ai oder in die Skills API hochladen, [prüfen Sie zuerst, ob `argument-hint` dort akzeptiert wird](#using-skill-frontmatter-outside-claude-code).

1238 

1232### Persönliche Skills sind verschwunden1239### Persönliche Skills sind verschwunden

1233 1240 

1234Wenn Skill-Ordner, die Sie in `~/.claude/skills/` erstellt haben, weg sind, schauen Sie in `~/.claude/skills/.trash/`. Wenn Claude Code [Skills von claude.ai synchronisiert](#how-synced-skills-behave), lädt es sie in den separaten `synced`-Unterordner herunter und verschiebt oder löscht nicht die Ordner, die Sie erstellen.1241Wenn Skill-Ordner, die Sie in `~/.claude/skills/` erstellt haben, weg sind, schauen Sie in `~/.claude/skills/.trash/`. Wenn Claude Code [Skills von claude.ai synchronisiert](#how-synced-skills-behave), lädt es sie in den separaten `synced`-Unterordner herunter und verschiebt oder löscht nicht die Ordner, die Sie erstellen.

statusline.md +15 −15

Details

130 130 

131## Wie Statuszeilen funktionieren131## Wie Statuszeilen funktionieren

132 132 

133Claude Code führt Ihr Skript mit [JSON-Sitzungsdaten](#available-data) auf stdin aus und zeigt alles an, was das Skript auf stdout druckt.133Claude Code führt Ihr Skript mit [JSON-Sitzungsdaten](#available-data) auf stdin aus und zeigt alles an, was das Skript auf stdout ausgibt.

134 134 

135> [!NOTE]135> [!NOTE]

136>136>

137> Die Statuszeile wird lokal ausgeführt und verbraucht keine API-Token. Sie wird vorübergehend während bestimmter UI-Interaktionen ausgeblendet, einschließlich des Hilfemenüs und Berechtigungsabfragen.137> Die Statuszeile wird lokal ausgeführt und verbraucht keine API-Token. Sie wird bei bestimmten UI-Interaktionen vorübergehend ausgeblendet, darunter das Hilfemenü und Berechtigungsabfragen.

138 138 

139### Wann die Statuszeile aktualisiert wird139### Wann die Statuszeile aktualisiert wird

140 140 

141Ihr Skript wird einmal ausgeführt, wenn eine Sitzung startet, auch wenn Sie eine fortsetzen. Danach wird es erneut ausgeführt, wenn:141Ihr Skript wird einmal ausgeführt, wenn eine Sitzung startet, auch wenn Sie eine Sitzung fortsetzen. Danach wird es erneut ausgeführt, wenn:

142 142 

143* Eine neue Assistentnachricht ankommt143* Eine neue Assistentennachricht eintrifft

144* `/compact` abgeschlossen ist144* `/compact` abgeschlossen ist

145* Der Berechtigungsmodus sich ändert145* Sich der Berechtigungsmodus ändert

146* Der Vim-Modus umgeschaltet wird146* Der Vim-Modus umgeschaltet wird

147* Sie den `command` in Ihren `statusLine`-Einstellungen ändern147* Sie den `command` in Ihren `statusLine`-Einstellungen ändern

148* Ein [`refreshInterval`](#manually-configure-a-status-line)-Timer abläuft, falls Sie einen festgelegt haben148* Ein [`refreshInterval`](#manually-configure-a-status-line)-Timer abläuft, sofern Sie einen festgelegt haben

149* Ein [Rate-Limit-Fenster](#rate-limit-usage) in den Daten, die Ihr Skript zuletzt erhalten hat, seine `resets_at`-Zeit erreicht149* Ein [Rate-Limit-Zeitfenster](#rate-limit-usage) in den zuletzt von Ihrem Skript empfangenen Daten seinen `resets_at`-Zeitpunkt erreicht

150* Ein warmer [Prompt-Cache](#prompt-cache-fields) in den Daten, die Ihr Skript zuletzt erhalten hat, seine `expires_at`-Zeit erreicht150* Ein warmer [Prompt-Cache](#prompt-cache-fields) in den zuletzt von Ihrem Skript empfangenen Daten seinen `expires_at`-Zeitpunkt erreicht

151 151 

152Claude Code entprellt Aktualisierungen bei 300 ms, sodass schnelle Änderungen zusammengefasst werden und Ihr Skript einmal ausgeführt wird, nachdem die Änderungen aufgehört haben. Eine Änderung des `command` selbst überspringt die Entprellung: Claude Code führt den neuen Befehl sofort aus. Wenn eine neue Aktualisierung ausgelöst wird, während Ihr Skript noch läuft, bricht Claude Code das laufende Skript ab. Wenn Sie Ihr Skript bearbeiten, werden die Änderungen beim nächsten Mal angezeigt, wenn ein Aktualisierungs-Trigger es erneut ausführt.152Claude Code entprellt Aktualisierungen mit 300 ms, sodass schnell aufeinanderfolgende Änderungen gebündelt werden und Ihr Skript einmal ausgeführt wird, nachdem die Änderungen aufhören. Eine Änderung am `command` selbst überspringt die Entprellung: Claude Code führt den neuen Befehl sofort aus. Wenn eine neue Aktualisierung ausgelöst wird, während Ihr Skript noch läuft, bricht Claude Code das laufende Skript ab. Wenn Sie Ihr Skript bearbeiten, erscheinen die Änderungen beim nächsten Mal, wenn ein Aktualisierungsauslöser es erneut ausführt.

153 153 

154Die ereignisgesteuerten Trigger können ruhig werden, wenn die Hauptsitzung untätig ist, beispielsweise während ein Koordinator auf Hintergrund-Subagenten wartet. Um zeitbasierte oder extern bezogene Segmente während untätiger Perioden aktuell zu halten, setzen Sie [`refreshInterval`](#manually-configure-a-status-line), um den Befehl auch auf einem festen Timer erneut auszuführen.154Die ereignisgesteuerten Auslöser können ausbleiben, wenn die Hauptsitzung inaktiv ist, zum Beispiel während ein Koordinator auf Subagenten im Hintergrund wartet. Um zeitbasierte oder extern bezogene Segmente auch in Leerlaufphasen aktuell zu halten, setzen Sie [`refreshInterval`](#manually-configure-a-status-line), damit der Befehl zusätzlich in einem festen Intervall erneut ausgeführt wird.

155 155 

156### Was Ihr Skript ausgeben kann156### Was Ihr Skript ausgeben kann

157 157 

158Ihr Skript kann mehr als eine einzelne Zeile einfachen Text ausgeben:158Ihr Skript kann mehr als eine einzelne Zeile einfachen Texts ausgeben:

159 159 

160* **Mehrere Zeilen**: Jede `echo` oder `print` Anweisung wird als separate Zeile angezeigt. Siehe das [mehrzeilige Beispiel](#display-multiple-lines).160* **Mehrere Zeilen**: Jede `echo`- oder `print`-Anweisung wird als separate Zeile angezeigt. Siehe das [Beispiel mit mehreren Zeilen](#display-multiple-lines).

161* **Farben**: Verwenden Sie [ANSI-Escape-Codes](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors) wie `\033[32m` für Grün (Terminal muss diese unterstützen). Siehe das [Git-Status-Beispiel](#git-status-with-colors).161* **Farben**: Verwenden Sie [ANSI-Escape-Codes](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors) wie `\033[32m` für Grün (das Terminal muss diese unterstützen). Siehe das [Git-Status-Beispiel](#git-status-with-colors).

162* **Links**: Verwenden Sie [OSC 8 Escape-Sequenzen](https://en.wikipedia.org/wiki/ANSI_escape_code#OSC), um Text anklickbar zu machen (Cmd+Klick auf macOS, Strg+Klick auf Windows/Linux). Erfordert ein Terminal, das Hyperlinks wie iTerm2, Kitty oder WezTerm unterstützt. Siehe das [anklickbare Links-Beispiel](#clickable-links).162* **Links**: Verwenden Sie [OSC-8-Escape-Sequenzen](https://en.wikipedia.org/wiki/ANSI_escape_code#OSC), um Text anklickbar zu machen (Cmd+Klick unter macOS, Ctrl+Klick unter Windows/Linux). Erfordert ein Terminal, das Hyperlinks unterstützt, wie iTerm2, Kitty oder WezTerm. Siehe das [Beispiel für anklickbare Links](#clickable-links).

163 163 

164### Ausgabe an die Terminalgröße anpassen164### Ausgabe an die Terminalgröße anpassen

165 165 

166Claude Code erfasst die Ausgabe Ihres Skripts, anstatt sie direkt mit dem Terminal zu verbinden, daher können `tput cols` und sprachgestützte Breitenerkennung die Terminalgröße nicht von innerhalb des Skripts lesen. Lesen Sie stattdessen die Umgebungsvariablen `COLUMNS` und `LINES`. Claude Code setzt diese auf die aktuellen Terminaldimensionen, bevor Ihr Skript ausgeführt wird.166Claude Code erfasst die Ausgabe Ihres Skripts, anstatt sie direkt mit dem Terminal zu verbinden, daher können `tput cols` und die Breitenerkennung auf Sprachebene die Terminalgröße nicht aus dem Skript heraus auslesen. Lesen Sie stattdessen die Umgebungsvariablen `COLUMNS` und `LINES`. Claude Code setzt diese auf die aktuellen Terminalabmessungen, bevor Ihr Skript ausgeführt wird.

167 167 

168## Verfügbare Daten168## Verfügbare Daten

169 169 

sub-agents.md +1 −1

Details

938 938 

939Um weiterzuarbeiten, während Claude wartet, drücken Sie **Ctrl+B** im Terminal oder klicken Sie in VS Code auf [**Run in background**](https://code.claude.com/docs/de/vs-code.md#move-a-running-command-or-subagent-to-the-background).939Um weiterzuarbeiten, während Claude wartet, drücken Sie **Ctrl+B** im Terminal oder klicken Sie in VS Code auf [**Run in background**](https://code.claude.com/docs/de/vs-code.md#move-a-running-command-or-subagent-to-the-background).

940 940 

941Wenn Sie die Umgebungsvariable [`CLAUDE_CODE_DISABLE_BACKGROUND_TASKS`](https://code.claude.com/docs/de/env-vars) auf `1` setzen, anstatt den Fork-Modus auszuschalten, wartet Claude auf jeden Subagenten. Auch Hintergrundbefehle sind dann ausgeschaltet, und **Ctrl+B** verschiebt nichts in den Hintergrund.941Wenn Sie die Umgebungsvariable [`CLAUDE_CODE_DISABLE_BACKGROUND_TASKS`](https://code.claude.com/docs/de/env-vars) auf `1` setzen, anstatt den Fork-Modus auszuschalten, wartet Claude, bis Subagenten fertig sind, bevor er fortfährt. Auch Hintergrundbefehle sind dann ausgeschaltet, und **Ctrl+B** verschiebt nichts in den Hintergrund.

942 942 

943#### Tools, Berechtigungen und Ergebnisse von Hintergrund-Subagenten943#### Tools, Berechtigungen und Ergebnisse von Hintergrund-Subagenten

944 944 

terminal-config.md +96 −96

Details

18 18 

19Diese Seite behandelt das Konfigurieren Ihres Terminals, um die richtigen Signale an Claude Code zu senden. Um zu ändern, auf welche Tasten Claude Code selbst reagiert, siehe stattdessen [Tastenbelegungen](https://code.claude.com/docs/de/keybindings.md).19Diese Seite behandelt das Konfigurieren Ihres Terminals, um die richtigen Signale an Claude Code zu senden. Um zu ändern, auf welche Tasten Claude Code selbst reagiert, siehe stattdessen [Tastenbelegungen](https://code.claude.com/docs/de/keybindings.md).

20 20 

21## Mehrzeilige Eingabeaufforderungen eingeben21## Mehrzeilige Prompts eingeben

22 22 

23Durch Drücken der Eingabetaste wird Ihre Nachricht abgesendet. Um einen Zeilenumbruch hinzuzufügen, ohne abzusenden, drücken Sie Strg+J, oder geben Sie `\` ein und drücken dann die Eingabetaste. Beide Methoden funktionieren in jedem Terminal ohne Setup.23Durch Drücken von Enter wird Ihre Nachricht gesendet. Um einen Zeilenumbruch einzufügen, ohne zu senden, drücken Sie Ctrl+J, oder geben Sie `\` ein und drücken Sie dann Enter. Beides funktioniert in jedem Terminal ohne Einrichtung.

24 24 

25In den meisten Terminals können Sie auch Umschalt+Eingabe drücken, aber die Unterstützung variiert je nach Terminal-Emulator:25In den meisten Terminals können Sie auch Shift+Enter drücken, die Unterstützung variiert jedoch je nach Terminal-Emulator:

26 26 

27| Terminal | Umschalt+Eingabe für Zeilenumbruch |27| Terminal | Shift+Enter für Zeilenumbruch |

28| :- | :- |28| :- | :- |

29| Ghostty, Kitty, iTerm2, WezTerm, Warp, Apple Terminal, Windows Terminal | Funktioniert ohne Setup |29| Ghostty, Kitty, iTerm2, WezTerm, Warp, Apple Terminal, Windows Terminal | Funktioniert ohne Einrichtung |

30| Andere Terminals, die das Kitty-Tastaturprotokoll unterstützen, wie foot und Alacritty 0.16 oder später | Funktioniert ohne Setup. Erfordert Claude Code v2.1.269 oder später |30| Andere Terminals, die das Kitty-Tastaturprotokoll unterstützen, wie foot und Alacritty 0.16 oder neuer | Funktioniert ohne Einrichtung. Erfordert Claude Code v2.1.269 oder neuer |

31| VS Code, Cursor, Devin Desktop, Alacritty vor 0.16, Zed | Führen Sie `/terminal-setup` einmal aus |31| VS Code, Cursor, Devin Desktop, Alacritty vor 0.16, Zed | Führen Sie einmalig `/terminal-setup` aus |

32| gnome-terminal, JetBrains IDEs wie PyCharm und Android Studio | Nicht verfügbar; verwenden Sie Strg+J oder `\` und dann Eingabetaste |32| gnome-terminal, JetBrains-IDEs wie PyCharm und Android Studio | Nicht verfügbar; verwenden Sie Ctrl+J oder `\` und dann Enter |

33 33 

34Für VS Code, Cursor, Devin Desktop, Alacritty vor 0.16 und Zed schreibt `/terminal-setup` eine Umschalt+Eingabe-Tastenbindung in die Konfigurationsdatei des Terminals. Bei der ersten Ausführung wird eine Bestätigung wie `Installed VSCode terminal Shift+Enter key binding` angezeigt. Vorhandene Bindungen bleiben erhalten; wenn Sie eine Meldung wie `VSCode terminal Shift+Enter key binding already configured` sehen, wurde keine Änderung vorgenommen. Führen Sie `/terminal-setup` direkt im Host-Terminal aus, nicht innerhalb von tmux oder screen, da es in die Konfiguration des Host-Terminals schreiben muss.34Für VS Code, Cursor, Devin Desktop, Alacritty vor 0.16 und Zed schreibt `/terminal-setup` eine Shift+Enter-Tastenkombination in die Konfigurationsdatei des Terminals. Beim ersten Ausführen sehen Sie eine Bestätigung wie `Installed VSCode terminal Shift+Enter key binding`. Vorhandene Tastenkombinationen bleiben erhalten; wenn Sie eine Meldung wie `VSCode terminal Shift+Enter key binding already configured` sehen, wurde nichts geändert. Führen Sie `/terminal-setup` direkt im Host-Terminal aus und nicht innerhalb von tmux oder screen, da es in die Konfiguration des Host-Terminals schreiben muss.

35 35 

36In VS Code, Cursor und Devin Desktop aktualisiert `/terminal-setup` auch zwei Editor-Einstellungen: Es setzt `terminal.integrated.gpuAcceleration` auf `"off"`, um verzerrten Text im integrierten Terminal zu verhindern, und es setzt `terminal.integrated.mouseWheelScrollSensitivity` für sanfteres Scrollen im [Vollbildmodus](https://code.claude.com/docs/de/fullscreen.md). Um die GPU-Beschleunigungsänderung rückgängig zu machen, setzen Sie sie auf `"auto"` zurück und laden Sie das Editor-Fenster neu.36In VS Code, Cursor und Devin Desktop aktualisiert `/terminal-setup` außerdem zwei Editor-Einstellungen: Es setzt `terminal.integrated.gpuAcceleration` auf `"off"`, um verstümmelten Text im integrierten Terminal zu verhindern, und es setzt `terminal.integrated.mouseWheelScrollSensitivity` für flüssigeres Scrollen im [Vollbildmodus](https://code.claude.com/docs/de/fullscreen.md). Um die Änderung der GPU-Beschleunigung rückgängig zu machen, setzen Sie sie wieder auf `"auto"` und laden Sie das Editorfenster neu.

37 37 

38In Zed aktualisiert `/terminal-setup` Ihre `keymap.json` an Ort und Stelle:38In Zed aktualisiert `/terminal-setup` Ihre `keymap.json` direkt:

39 39 

40* Wenn die Keymap bereits Bindungen hat und keine davon eine Terminal-`shift-enter` ist, sichert Claude Code diese zunächst in einer Kopie im selben Verzeichnis, z. B. `keymap.json.1a2b3c4d.bak`, und führt dann die Umschalt+Eingabe-Bindung in Ihre Keymap ein, wobei Ihre anderen Tastenbindungen und Kommentare erhalten bleiben40* Wenn die Keymap bereits Tastenkombinationen enthält und keine davon ein Terminal-`shift-enter` ist, sichert Claude Code sie zunächst in eine Kopie im selben Verzeichnis, etwa `keymap.json.1a2b3c4d.bak`, und führt dann die Shift+Enter-Tastenkombination mit Ihrer Keymap zusammen, wobei Ihre anderen Tastenkombinationen und Kommentare erhalten bleiben

41* Wenn Claude Code die Keymap nicht lesen oder analysieren kann, sie nicht sichern kann oder das zusammengeführte Ergebnis nicht überprüfen kann, [lässt es die Datei unverändert und gibt den Tastenbindungsblock zum manuellen Hinzufügen aus](https://code.claude.com/docs/de/errors.md#terminal-setup-left-your-zed-keymap-unchanged)41* Wenn Claude Code die Keymap nicht lesen oder parsen, nicht sichern oder das zusammengeführte Ergebnis nicht überprüfen kann, [lässt es die Datei unverändert und gibt den Block mit der Tastenkombination aus, den Sie selbst hinzufügen können](https://code.claude.com/docs/de/errors.md#terminal-setup-left-your-zed-keymap-unchanged)

42 42 

43Wenn Sie innerhalb von tmux ausgeführt werden, erfordert Umschalt+Eingabe auch die [tmux-Konfiguration unten](#configure-tmux), selbst wenn das äußere Terminal dies unterstützt.43Wenn Sie Claude Code innerhalb von tmux ausführen, erfordert Shift+Enter zusätzlich die [unten beschriebene tmux-Konfiguration](#configure-tmux), selbst wenn das äußere Terminal es unterstützt.

44 44 

45Um Zeilenumbruch an eine andere Taste zu binden oder das Verhalten zu tauschen, sodass Eingabetaste einen Zeilenumbruch einfügt und Umschalt+Eingabe absendet, ordnen Sie die Aktionen `chat:newline` und `chat:submit` in Ihrer [Tastenbindungsdatei](https://code.claude.com/docs/de/keybindings.md) zu.45Um den Zeilenumbruch auf eine andere Taste zu legen oder das Verhalten umzukehren, sodass Enter einen Zeilenumbruch einfügt und Shift+Enter sendet, ordnen Sie die Aktionen `chat:newline` und `chat:submit` in Ihrer [Datei für Tastenkombinationen](https://code.claude.com/docs/de/keybindings.md) zu.

46 46 

47## Option-Taste-Tastenkombinationen auf macOS aktivieren47## Option-Tastenkombinationen unter macOS aktivieren

48 48 

49Einige Claude Code-Tastenkombinationen verwenden die Option-Taste, z. B. Option+Eingabe für einen Zeilenumbruch oder Option+P zum Wechsel von Modellen. Auf macOS senden die meisten Terminals die Option-Taste standardmäßig nicht als Modifizierer, daher funktionieren diese Tastenkombinationen nicht, bis Sie dies aktivieren. Die Terminal-Einstellung dafür wird normalerweise als „Use Option as Meta Key“ bezeichnet; Meta ist der historische Unix-Name für die Taste, die jetzt als Option oder Alt bezeichnet wird.49Einige Tastenkombinationen in Claude Code verwenden die Option-Taste, etwa Option+Enter für einen Zeilenumbruch oder Option+P zum Wechseln des Modells. Unter macOS senden die meisten Terminals Option standardmäßig nicht als Modifikatortaste, daher bewirken diese Tastenkombinationen nichts, bis Sie dies aktivieren. Die entsprechende Terminal-Einstellung heißt in der Regel „Use Option as Meta Key“; Meta ist die historische Unix-Bezeichnung für die Taste, die heute mit Option oder Alt beschriftet ist.

50 50 

51**Apple Terminal**51**Apple Terminal**

52 52 

53Öffnen Sie Einstellungen → Profile → Tastatur und aktivieren Sie „Use Option as Meta Key“.53Öffnen Sie Settings → Profiles → Keyboard und aktivieren Sie „Use Option as Meta Key“.

54 54 

55Wenn Sie die erste Einrichtungsaufforderung des Terminals von Claude Code akzeptiert haben, ist dies bereits erledigt. Diese Aufforderung führt `/terminal-setup` für Sie aus, wodurch Option als Meta aktiviert und die akustische Benachrichtigung in Ihrem Apple Terminal-Profil deaktiviert wird.55Wenn Sie beim ersten Start von Claude Code die Abfrage zur Terminal-Einrichtung bestätigt haben, ist dies bereits erledigt. Diese Abfrage führt `/terminal-setup` für Sie aus, wodurch Option als Meta aktiviert und der akustische Signalton in Ihrem Apple-Terminal-Profil ausgeschaltet wird.

56 56 

57Im [Bildschirmlesemodus](https://code.claude.com/docs/de/accessibility.md) lässt `/terminal-setup` die Benachrichtigungseinstellung unverändert, sodass die Terminal-Benachrichtigung hörbar bleibt. Wenn ein früherer Durchlauf die Benachrichtigung deaktiviert hat, aktivieren Sie sie unter Einstellungen → Profile → Erweitert → „Audible bell“ erneut.57Im [Screenreader-Modus](https://code.claude.com/docs/de/accessibility.md) lässt `/terminal-setup` die Signalton-Einstellung unverändert, sodass der Terminal-Signalton hörbar bleibt. Falls ein früherer Durchlauf den Signalton ausgeschaltet hat, schalten Sie ihn unter Settings → Profiles → Advanced → „Audible bell“ wieder ein.

58 58 

59**iTerm2**59**iTerm2**

60 60 

61Öffnen Sie Einstellungen → Profile → Tasten → Allgemein und setzen Sie die linke Option-Taste und die rechte Option-Taste auf „Esc+“.61Öffnen Sie Settings → Profiles → Keys → General und setzen Sie Left Option key und Right Option key auf „Esc+“.

62 62 

63Das Ausführen von `/terminal-setup` in iTerm2 aktiviert „Applications in terminal may access clipboard“ unter Einstellungen → Allgemein → Auswahl, damit der Befehl `/copy` in Ihre Systemzwischenablage schreiben kann. Der Befehl erkennt iTerm2 auch, wenn er von innerhalb von tmux ausgeführt wird. Starten Sie iTerm2 neu, damit die Änderung wirksam wird.63Wenn Sie `/terminal-setup` in iTerm2 ausführen, wird „Applications in terminal may access clipboard“ unter Settings → General → Selection aktiviert, damit der Befehl `/copy` in Ihre System-Zwischenablage schreiben kann. Der Befehl erkennt iTerm2 auch dann, wenn er innerhalb von tmux ausgeführt wird. Starten Sie iTerm2 neu, damit die Änderung wirksam wird.

64 64 

65**VS Code**65**VS Code**

66 66 

67Fügen Sie `"terminal.integrated.macOptionIsMeta": true` zu Ihren VS Code-Einstellungen hinzu.67Fügen Sie `"terminal.integrated.macOptionIsMeta": true` zu Ihren VS Code-Einstellungen hinzu.

68 68 

69Für Ghostty, Kitty und andere Terminals suchen Sie in der Konfigurationsdatei des Terminals nach einer Option-als-Alt- oder Option-als-Meta-Einstellung.69Suchen Sie bei Ghostty, Kitty und anderen Terminals in der Konfigurationsdatei des Terminals nach einer Einstellung wie Option-as-Alt oder Option-as-Meta.

70 70 

71## Terminalglockenton oder Benachrichtigung erhalten71## Terminalglockenton oder Benachrichtigung erhalten

72 72 


138 138 

139Ein [`Image` eines Mods](https://code.claude.com/docs/de/plugins/mods/reference#elements) benötigt die Zeilen `allow-passthrough` und `focus-events` sowie die weiteren [Voraussetzungen für das Zeichnen innerhalb von tmux](https://code.claude.com/docs/de/plugins/mods/gallery.md#draw-an-image-inside-tmux). Nachdem Sie die Zeilen hinzugefügt haben, trennen Sie außerdem die Verbindung zu tmux, verbinden Sie sich erneut und starten Sie Claude Code neu.139Ein [`Image` eines Mods](https://code.claude.com/docs/de/plugins/mods/reference#elements) benötigt die Zeilen `allow-passthrough` und `focus-events` sowie die weiteren [Voraussetzungen für das Zeichnen innerhalb von tmux](https://code.claude.com/docs/de/plugins/mods/gallery.md#draw-an-image-inside-tmux). Nachdem Sie die Zeilen hinzugefügt haben, trennen Sie außerdem die Verbindung zu tmux, verbinden Sie sich erneut und starten Sie Claude Code neu.

140 140 

141## Behebung: Rücktaste löscht auf Windows ein ganzes Wort141## Backspace löscht unter Windows ein ganzes Wort

142 142 

143Unter Windows liest Claude Code eine Rücktaste, die als `^H` ankommt, als Strg+Rücktaste, was [das vorherige Wort löscht](https://code.claude.com/docs/de/interactive-mode.md#text-editing), außer wenn `TERM_PROGRAM` `mintty` oder `TERM` `cygwin` ist. Auf macOS und Linux liest Claude Code sie als einfache Rücktaste.143Unter Windows interpretiert Claude Code ein Backspace, das als `^H` ankommt, als Ctrl+Backspace, was [das vorherige Wort löscht](https://code.claude.com/docs/de/interactive-mode.md#text-editing), außer wenn `TERM_PROGRAM` auf `mintty` oder `TERM` auf `cygwin` gesetzt ist. Unter macOS und Linux interpretiert Claude Code es als einfaches Backspace.

144 144 

145Wenn jedes Drücken der Rücktaste ein ganzes Wort löscht, sendet Ihr Terminal `^H` für die einfache Rücktaste. Setzen Sie [`CLAUDE_CODE_BS_AS_CTRL_BACKSPACE=0`](https://code.claude.com/docs/de/env-vars). Rücktaste und Strg+H löschen dann jeweils ein Zeichen. Wenn Strg+Rücktaste auf macOS oder Linux nur ein Zeichen löscht, weil Ihr Terminal `^H` dafür sendet, setzen Sie die Variable stattdessen auf `1`.145Wenn jeder Druck auf Backspace ein ganzes Wort löscht, sendet Ihr Terminal `^H` für einfaches Backspace. Setzen Sie [`CLAUDE_CODE_BS_AS_CTRL_BACKSPACE=0`](https://code.claude.com/docs/de/env-vars). Backspace und Ctrl+H löschen dann jeweils ein Zeichen. Wenn Ctrl+Backspace unter macOS oder Linux nur ein Zeichen löscht, weil Ihr Terminal dafür `^H` sendet, setzen Sie die Variable stattdessen auf `1`.

146 146 

147## Farbschema anpassen147## Das Farbschema anpassen

148 148 

149Verwenden Sie den Befehl `/theme` oder die Designauswahl in `/config`, um ein Claude Code-Design auszuwählen, das zu Ihrem Terminal passt. Wenn Sie die Option „auto“ auswählen, wird der helle oder dunkle Hintergrund Ihres Terminals erkannt, sodass das Design den Änderungen des Betriebssystems folgt, wenn Ihr Terminal dies tut. Claude Code steuert nicht das Farbschema des Terminals selbst, das von der Terminalanwendung festgelegt wird.149Verwenden Sie den Befehl `/theme` oder die Theme-Auswahl in `/config`, um ein Claude Code-Theme zu wählen, das zu Ihrem Terminal passt. Wenn Sie die Option „auto“ auswählen, wird der helle oder dunkle Hintergrund Ihres Terminals erkannt, sodass das Theme Änderungen am Erscheinungsbild des Betriebssystems folgt, sobald Ihr Terminal dies tut. Claude Code steuert nicht das eigene Farbschema des Terminals, das von der Terminal-Anwendung festgelegt wird.

150 150 

151Um anzupassen, was am unteren Rand der Benutzeroberfläche angezeigt wird, konfigurieren Sie eine [benutzerdefinierte Statuszeile](https://code.claude.com/docs/de/statusline.md), die das aktuelle Modell, das Arbeitsverzeichnis, den Git-Branch oder andere Kontextinformationen anzeigt.151Um anzupassen, was am unteren Rand der Oberfläche angezeigt wird, konfigurieren Sie eine [benutzerdefinierte Statuszeile](https://code.claude.com/docs/de/statusline.md), die das aktuelle Modell, das Arbeitsverzeichnis, den Git-Branch oder anderen Kontext anzeigt.

152 152 

153### Benutzerdefiniertes Design erstellen153### Ein benutzerdefiniertes Theme erstellen

154 154 

155Zusätzlich zu den integrierten Voreinstellungen listet `/theme` alle benutzerdefinierten Designs auf, die Sie definiert haben, sowie alle Designs, die von installierten [Plugins](https://code.claude.com/docs/de/plugins/components.md#themes-and-output-styles) beigetragen wurden. Wählen Sie **Neues benutzerdefiniertes Design…** am Ende der Liste, um eines interaktiv zu erstellen: Sie benennen das Design und wählen dann einzelne Farbtoken aus, um sie zu überschreiben. Drücken Sie `Ctrl+E`, während ein benutzerdefiniertes Design hervorgehoben ist, um es zu bearbeiten.155Zusätzlich zu den integrierten Voreinstellungen listet `/theme` alle von Ihnen definierten benutzerdefinierten Themes sowie alle Themes auf, die von installierten [Plugins](https://code.claude.com/docs/de/plugins/components.md#themes-and-output-styles) bereitgestellt werden. Wählen Sie **New custom theme…** am Ende der Liste, um interaktiv ein Theme zu erstellen: Sie benennen das Theme und wählen dann einzelne Farb-Token aus, die Sie überschreiben möchten. Drücken Sie `Ctrl+E`, während ein benutzerdefiniertes Theme hervorgehoben ist, um es zu bearbeiten.

156 156 

157Jedes benutzerdefinierte Design ist eine JSON-Datei in `~/.claude/themes/`. Der Dateiname ohne die `.json`-Erweiterung ist der Slug des Designs, und das Auswählen des Designs speichert `custom:<slug>` als Ihre Design-Einstellung. Die Datei hat drei optionale Felder:157Jedes benutzerdefinierte Theme ist eine JSON-Datei in `~/.claude/themes/`. Der Dateiname ohne die Endung `.json` ist der Slug des Themes, und bei Auswahl des Themes wird `custom:<slug>` als Ihre Theme-Einstellung gespeichert. Die Datei hat drei optionale Felder:

158 158 

159| Feld | Typ | Beschreibung |159| Feld | Typ | Beschreibung |

160| :- | :- | :- |160| :- | :- | :- |

161| `name` | string | Anzeigebezeichnung in `/theme`. Standardmäßig der Dateiname-Slug |161| `name` | string | Anzeigename, der in `/theme` angezeigt wird. Standardmäßig der Slug des Dateinamens |

162| `base` | string | Integrierte Voreinstellung, von der das Design ausgeht: `dark`, `light`, `dark-daltonized`, `light-daltonized`, `dark-ansi` oder `light-ansi`. Standardmäßig `dark` |162| `base` | string | Integrierte Voreinstellung, von der das Theme ausgeht: `dark`, `light`, `dark-daltonized`, `light-daltonized`, `dark-ansi` oder `light-ansi`. Standardmäßig `dark` |

163| `overrides` | object | Zuordnung von Farbtoken-Namen zu Farbwerten. Token, die hier nicht aufgelistet sind, fallen auf die Basisvoreinstellung zurück |163| `overrides` | object | Zuordnung von Farb-Token-Namen zu Farbwerten. Hier nicht aufgeführte Token fallen auf die Basis-Voreinstellung zurück |

164 164 

165Farbwerte akzeptieren `#rrggbb`, `#rgb`, `rgb(r,g,b)`, `ansi256(n)` oder `ansi:<name>`, wobei `<name>` einer der 16 standardmäßigen ANSI-Farbnamen wie `red` oder `cyanBright` ist. Unbekannte Token und ungültige Farbwerte werden ignoriert, sodass ein Tippfehler das Rendering nicht beschädigen kann.165Farbwerte akzeptieren `#rrggbb`, `#rgb`, `rgb(r,g,b)`, `ansi256(n)` oder `ansi:<name>`, wobei `<name>` einer der 16 Standard-ANSI-Farbnamen wie `red` oder `cyanBright` ist. Unbekannte Token und ungültige Farbwerte werden ignoriert, sodass ein Tippfehler die Darstellung nicht beeinträchtigen kann.

166 166 

167Das folgende Beispiel definiert ein Design, das die dunkle Voreinstellung beibehält, aber die Eingabeaufforderungs-Akzentfarbe, Fehlertext und Erfolgstexte neu färbt:167Das folgende Beispiel definiert ein Theme, das die dunkle Voreinstellung beibehält, aber die Akzentfarbe des Prompts, den Fehlertext und den Erfolgstext umfärbt:

168 168 

169```json ~/.claude/themes/dracula.json theme={null}169```json ~/.claude/themes/dracula.json theme={null}

170{170{


178}178}

179```179```

180 180 

181Claude Code überwacht `~/.claude/themes/` und lädt neu, wenn eine Datei hinzugefügt oder geändert wird, sodass Änderungen in Ihrem Editor auf eine laufende Sitzung angewendet werden, ohne einen Neustart erforderlich zu machen. Wenn der Ordner `~/.claude/themes/` nicht existierte, als Claude Code gestartet wurde, starten Sie einmal neu, nachdem Sie Ihre erste Design-Datei erstellt haben. Danach werden Änderungen ohne Neustart angewendet.181Claude Code überwacht `~/.claude/themes/` und lädt neu, wenn eine Datei hinzugefügt oder geändert wird, sodass Bearbeitungen in Ihrem Editor ohne Neustart in einer laufenden Sitzung wirksam werden. Wenn der Ordner `~/.claude/themes/` selbst beim Start von Claude Code noch nicht existierte, starten Sie nach dem Erstellen Ihrer ersten Theme-Datei einmal neu. Danach werden Änderungen ohne Neustart wirksam.

182 182 

183Die folgende Referenz behandelt die Token, die Sie in `overrides` festlegen können. Der interaktive Editor in `/theme` zeigt die gleichen Token mit einer Live-Vorschau sowie einige spezialisierte Akzente wie Onboarding-Bildschirmfarben, die hier weggelassen sind.183Die folgende Referenz behandelt die Token, die Sie in `overrides` festlegen können. Der interaktive Editor in `/theme` zeigt dieselben Token mit einer Live-Vorschau sowie einige Akzente für einzelne Zwecke, etwa Farben des Onboarding-Bildschirms, die hier ausgelassen sind.

184 184 

185> **Farbtoken-Referenz**185> **Referenz der Farb-Token**

186>186>

187> Das folgende Beispiel kombiniert Token aus mehreren der folgenden Gruppen: der Brand-Akzent, der Plan Mode-Rahmen, die Diff-Hintergründe und der Nachrichtenhintergrund.187> Das folgende Beispiel kombiniert Token aus mehreren der untenstehenden Gruppen: den Marken-Akzent, den Rahmen des Plan-Modus, die Diff-Hintergründe und den Nachrichtenhintergrund.

188>188>

189> ```json ~/.claude/themes/midnight.json theme={null}189> ```json ~/.claude/themes/midnight.json theme={null}

190> {190> {


202>202>

203> #### Text- und Akzentfarben203> #### Text- und Akzentfarben

204>204>

205> Steuern Sie den primären Brand-Akzent und die Vordergrund-Textschattierungen, die in der gesamten Benutzeroberfläche verwendet werden.205> Steuern Sie den primären Marken-Akzent und die Vordergrund-Textfarbtöne, die in der gesamten Oberfläche verwendet werden.

206>206>

207> | Token | Steuert |207> | Token | Steuert |

208> | :- | :- |208> | :- | :- |

209> | `claude` | Primärer Brand-Akzent, verwendet für den Spinner und die Assistent-Bezeichnung |209> | `claude` | Primärer Marken-Akzent, verwendet für den Spinner und die Assistenten-Beschriftung |

210> | `text` | Standard-Vordergrundtext |210> | `text` | Standard-Vordergrundtext |

211> | `inverseText` | Text, der auf einem farbigen Hintergrund gezeichnet wird, z. B. Statusabzeichen |211> | `inverseText` | Text, der auf einem farbigen Hintergrund dargestellt wird, etwa bei Status-Badges |

212> | `inactive` | Sekundärer Text wie Hinweise, Zeitstempel und deaktivierte Elemente |212> | `inactive` | Sekundärer Text wie Hinweise, Zeitstempel und deaktivierte Elemente |

213> | `subtle` | Schwache Rahmen und de-betonte sekundäre Texte |213> | `subtle` | Blasse Rahmen und zurückgenommener sekundärer Text |

214> | `suggestion` | Autocomplete-Vorschläge und Auswahlhervorhebung in Auswahlfeldern |214> | `suggestion` | Autovervollständigungsvorschläge und Auswahlhervorhebung in Auswahllisten |

215> | `permission` | Dialog-Rahmen, einschließlich Berechtigungsaufforderungen und Auswahlfelder |215> | `permission` | Dialograhmen, einschließlich Berechtigungsabfragen und Auswahllisten |

216> | `remember` | Speicher- und `CLAUDE.md`-Indikatoren |216> | `remember` | Memory- und `CLAUDE.md`-Indikatoren |

217>217>

218> #### Statusfarben218> #### Statusfarben

219>219>

220> Signalisieren Sie Erfolgs-, Fehler- und Warnzustände über Nachrichten und Indikatoren.220> Signalisieren Erfolgs-, Fehler- und Warnzustände in Nachrichten und Indikatoren.

221>221>

222> | Token | Steuert |222> | Token | Steuert |

223> | :- | :- |223> | :- | :- |

224> | `success` | Erfolgsmeldungen und bestandene Überprüfungen |224> | `success` | Erfolgsmeldungen und bestandene Prüfungen |

225> | `error` | Fehlermeldungen und Fehler |225> | `error` | Fehlermeldungen und Fehlschläge |

226> | `warning` | Warnungen, Vorsichtsmeldungen und der Auto-Modus-Rahmen |226> | `warning` | Warnungen, Hinweismeldungen und der Indikator für den Auto-Modus |

227> | `merged` | Status der zusammengeführten Pull-Anfrage |227> | `merged` | Status zusammengeführter Pull Requests |

228>228>

229> #### Eingabefeld und Modusindikatoren229> #### Eingabefeld und Modus-Indikatoren

230>230>

231> Legen Sie die Rahmenfarbe des Eingabefelds und den Akzent fest, der angezeigt wird, während ein Berechtigungsmodus oder Indikator aktiv ist.231> Legen Sie die Rahmenfarbe des Eingabefelds und den Akzent fest, der angezeigt wird, während ein Berechtigungsmodus oder Indikator aktiv ist.

232>232>

233> | Token | Steuert |233> | Token | Steuert |

234> | :- | :- |234> | :- | :- |

235> | `promptBorder` | Eingabefeld-Rahmen |235> | `promptBorder` | Rahmen des Eingabefelds |

236> | `planMode` | Plan Mode-Akzent, Plan-Nachrichten und Plan-Mode-Dialoge |236> | `planMode` | Akzent des Plan-Modus, Plan-Nachrichten und Dialoge im Plan-Modus |

237> | `autoAccept` | Accept-edits-Modus-Akzent |237> | `autoAccept` | Akzent des Accept-Edits-Modus |

238> | `bashBorder` | Eingabefeld-Rahmen beim Eingeben eines `!` Shell-Befehls |238> | `bashBorder` | Rahmen des Eingabefelds bei der Eingabe eines `!`-Shell-Befehls |

239> | `ide` | IDE-Verbindungsindikator |239> | `ide` | Indikator für die IDE-Verbindung |

240> | `fastMode` | Fast Mode-Indikator |240> | `fastMode` | Indikator für den Fast-Modus |

241> | `effortUltra` | Das `ultracode`-Tag auf dem Eingabefeld-Rahmen, während [ultracode](https://code.claude.com/docs/de/model-config.md#adjust-effort-level) aktiviert ist. Ihre Überschreibung dieser Farbe wird in Claude Code v2.1.239 oder später wirksam |241> | `effortUltra` | Das `ultracode`-Tag am Rahmen des Eingabefelds, während [ultracode](https://code.claude.com/docs/de/model-config.md#adjust-effort-level) aktiviert ist. Wenn Sie diese Farbe überschreiben, wird dies ab Claude Code v2.1.239 wirksam |

242>242>

243> #### Diff-Rendering243> #### Diff-Darstellung

244>244>

245> Färben Sie hinzugefügte und entfernte Code in Dateibearbeitungen und Überprüfungen.245> Färben Sie hinzugefügten und entfernten Code in Dateibearbeitungen und Reviews.

246>246>

247> | Token | Steuert |247> | Token | Steuert |

248> | :- | :- |248> | :- | :- |

249> | `diffAdded` | Hintergrund hinzugefügter Zeilen |249> | `diffAdded` | Hintergrund hinzugefügter Zeilen |

250> | `diffRemoved` | Hintergrund entfernter Zeilen |250> | `diffRemoved` | Hintergrund entfernter Zeilen |

251> | `diffAddedDimmed` | Hintergrund hinzugefügter Zeilen im abgedunkelten Diff, das angezeigt wird, nachdem Sie eine Bearbeitung ablehnen |251> | `diffAddedDimmed` | Hintergrund hinzugefügter Zeilen im abgedunkelten Diff, der angezeigt wird, nachdem Sie eine Bearbeitung abgelehnt haben |

252> | `diffRemovedDimmed` | Hintergrund entfernter Zeilen im abgedunkelten Diff, das angezeigt wird, nachdem Sie eine Bearbeitung ablehnen |252> | `diffRemovedDimmed` | Hintergrund entfernter Zeilen im abgedunkelten Diff, der angezeigt wird, nachdem Sie eine Bearbeitung abgelehnt haben |

253> | `diffAddedWord` | Hervorhebung auf Wortebene innerhalb einer hinzugefügten Zeile |253> | `diffAddedWord` | Hervorhebung auf Wortebene innerhalb einer hinzugefügten Zeile |

254> | `diffRemovedWord` | Hervorhebung auf Wortebene innerhalb einer entfernten Zeile |254> | `diffRemovedWord` | Hervorhebung auf Wortebene innerhalb einer entfernten Zeile |

255>255>

256> #### Vollbildmodus256> #### Vollbildmodus

257>257>

258> Claude Code verwendet `userMessageBackgroundHover`, `selectionBg` und `composerSidebarBackground` nur im [Vollbild-Rendering-Modus](https://code.claude.com/docs/de/fullscreen.md). `userMessageBackground`, `bashMessageBackgroundColor` und `memoryBackgroundColor` malt es sowohl im Standard- als auch im Vollbild-Renderer.258> Claude Code verwendet `userMessageBackgroundHover`, `selectionBg` und `composerSidebarBackground` nur im [Vollbild-Darstellungsmodus](https://code.claude.com/docs/de/fullscreen.md). `userMessageBackground`, `bashMessageBackgroundColor` und `memoryBackgroundColor` werden sowohl im Standard- als auch im Vollbild-Renderer dargestellt.

259>259>

260> | Token | Steuert |260> | Token | Steuert |

261> | :- | :- |261> | :- | :- |

262> | `userMessageBackground` | Hintergrund hinter Ihren Nachrichten im Transkript |262> | `userMessageBackground` | Hintergrund hinter Ihren Nachrichten im Transkript |

263> | `userMessageBackgroundHover` | Hintergrund hinter einer Nachricht beim Hovern oder Erweitern |263> | `userMessageBackgroundHover` | Hintergrund hinter einer Nachricht, während sie mit der Maus überfahren oder erweitert wird |

264> | `bashMessageBackgroundColor` | Hintergrund hinter `!` Shell-Befehls-Einträgen im Transkript |264> | `bashMessageBackgroundColor` | Hintergrund hinter `!`-Shell-Befehlseinträgen im Transkript |

265> | `memoryBackgroundColor` | Hintergrund hinter `#` Speicher-Einträgen im Transkript |265> | `memoryBackgroundColor` | Hintergrund hinter `#`-Memory-Einträgen im Transkript |

266> | `selectionBg` | Hintergrund von mit der Maus ausgewähltem Text |266> | `selectionBg` | Hintergrund von mit der Maus ausgewähltem Text |

267> | `composerSidebarBackground` | Hintergrund des Bereichs neben der Konversation, z. B. des [Diff-Bereichs](https://code.claude.com/docs/de/fullscreen.md#watch-your-changes-in-the-diff-panel) oder des [Bereichs eines Mods](https://code.claude.com/docs/de/plugins/mods/interface.md) |267> | `composerSidebarBackground` | Hintergrund des Bereichs neben der Konversation, etwa des [Diff-Bereichs](https://code.claude.com/docs/de/fullscreen.md#watch-your-changes-in-the-diff-panel) oder des [Bereichs eines Mods](https://code.claude.com/docs/de/plugins/mods/interface.md) |

268>268>

269> #### Nutzungsmesser und Sprecherkennzeichnungen269> #### Nutzungsanzeige und Sprecher-Beschriftungen

270>270>

271> Passen Sie den Balken an, der in der `/usage`-Ansicht angezeigt wird, und die Kennzeichnungen, die Ihre Nachrichten von Claudes unterscheiden.271> Passen Sie den Balken in der `/usage`-Ansicht und die Beschriftungen an, die Ihre Nachrichten von denen von Claude unterscheiden.

272>272>

273> | Token | Steuert |273> | Token | Steuert |

274> | :- | :- |274> | :- | :- |

275> | `rate_limit_fill` | Gefüllter Teil des Nutzungsmessers |275> | `rate_limit_fill` | Gefüllter Teil der Nutzungsanzeige |

276> | `rate_limit_empty` | Ungefüllter Teil des Nutzungsmessers |276> | `rate_limit_empty` | Ungefüllter Teil der Nutzungsanzeige |

277> | `briefLabelYou` | Farbe der `You`-Kennzeichnung auf Ihren Nachrichten |277> | `briefLabelYou` | Farbe der Beschriftung `You` bei Ihren Nachrichten |

278> | `briefLabelClaude` | Farbe der `Claude`-Kennzeichnung auf Assistent-Nachrichten |278> | `briefLabelClaude` | Farbe der Beschriftung `Claude` bei Nachrichten des Assistenten |

279>279>

280> #### Shimmer-Varianten und Subagent-Farben280> #### Shimmer-Varianten und Subagenten-Farben

281>281>

282> Mehrere Token haben eine gepaarte Shimmer-Variante, die die hellere Farbe liefert, die im animierten Farbverlauf des Spinners verwendet wird. Überschreiben Sie den Shimmer zusammen mit seinem Basis-Token, wenn die Animation nicht übereinstimmt.282> Mehrere Token haben eine zugehörige Shimmer-Variante, die die hellere Farbe für den animierten Farbverlauf des Spinners liefert. Überschreiben Sie die Shimmer-Variante zusammen mit dem zugehörigen Basis-Token, wenn die Animation unstimmig wirkt.

283>283>

284> * `claude` und `claudeShimmer`284> * `claude` und `claudeShimmer`

285> * `warning` und `warningShimmer`285> * `warning` und `warningShimmer`


288> * `inactive` und `inactiveShimmer`288> * `inactive` und `inactiveShimmer`

289> * `fastMode` und `fastModeShimmer`289> * `fastMode` und `fastModeShimmer`

290>290>

291> Jeder [Subagent](https://code.claude.com/docs/de/sub-agents.md) und jede parallele Aufgabe wird in einer von acht benannten Farben angezeigt, damit Sie sie im Transkript unterscheiden können. Die Token-Namen folgen dem Muster `<color>_FOR_SUBAGENTS_ONLY`, wobei `<color>` `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink` oder `cyan` ist. Überschreiben Sie diese, um zu ändern, wie jede benannte Farbe aussieht. Beispielsweise wird ein Subagent mit `color: blue` in seiner Definition mit dem Wert `blue_FOR_SUBAGENTS_ONLY` gezeichnet.291> Jeder [Subagent](https://code.claude.com/docs/de/sub-agents.md) und jede parallele Aufgabe wird in einer von acht benannten Farben angezeigt, damit Sie sie im Transkript unterscheiden können. Die Token-Namen folgen dem Muster `<color>_FOR_SUBAGENTS_ONLY`, wobei `<color>` `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink` oder `cyan` ist. Überschreiben Sie diese, um zu ändern, wie jede benannte Farbe aussieht. Beispielsweise wird ein Subagent mit `color: blue` in seiner Definition mit dem Wert von `blue_FOR_SUBAGENTS_ONLY` dargestellt.

292>292>

293> Wenn [`ultrathink`](https://code.claude.com/docs/de/model-config#use-ultrathink-for-one-off-deep-reasoning) den Aufwand eines Turns erhöhen kann, rendert Claude Code das Wort im Prompt-Eingabefeld mit einem siebenfarbigen Regenbogenfarbverlauf. Die Token-Namen folgen dem Muster `rainbow_<color>` und `rainbow_<color>_shimmer`, wobei `<color>` `red`, `orange`, `yellow`, `green`, `blue`, `indigo` oder `violet` ist.293> Wenn [`ultrathink`](https://code.claude.com/docs/de/model-config#use-ultrathink-for-one-off-deep-reasoning) den Aufwand eines Turns erhöhen kann, stellt Claude Code das Wort im Prompt-Eingabefeld mit einem siebenfarbigen Regenbogen-Farbverlauf dar. Die Token-Namen folgen dem Muster `rainbow_<color>` und `rainbow_<color>_shimmer`, wobei `<color>` `red`, `orange`, `yellow`, `green`, `blue`, `indigo` oder `violet` ist.

294 294 

295## Zu Vollbildrendering wechseln295## Zu Vollbildrendering wechseln

296 296 


322 322 

323In einem breiten Terminal erstreckt sich jede Textzeile in Claudes Antworten über die volle Breite des Fensters. Um den Text stattdessen bei einer festgelegten Anzahl von Spalten umzubrechen, setzen Sie [`maxProseWidth`](https://code.claude.com/docs/de/settings-reference#maxprosewidth) in Ihren Einstellungen.323In einem breiten Terminal erstreckt sich jede Textzeile in Claudes Antworten über die volle Breite des Fensters. Um den Text stattdessen bei einer festgelegten Anzahl von Spalten umzubrechen, setzen Sie [`maxProseWidth`](https://code.claude.com/docs/de/settings-reference#maxprosewidth) in Ihren Einstellungen.

324 324 

325## Großen Inhalt einfügen325## Große Inhalte einfügen

326 326 

327Wenn Sie mehr als 800 Zeichen oder mehr als drei Zeilen in die Eingabeaufforderung einfügen, reduziert Claude Code die Eingabe auf einen Platzhalter wie `[Eingefügter Text #1 +120 Zeilen]`, damit das Eingabefeld nutzbar bleibt, und sendet dennoch den vollständigen Inhalt, wenn Sie die Eingabe absenden. Für sehr große Eingaben wie ganze Dateien oder lange Protokolle schreiben Sie den Inhalt in eine Datei und bitten Sie Claude, diese zu lesen, anstatt sie einzufügen. Das Gesprächstranskript bleibt lesbar und Claude kann die Datei in späteren Durchläufen nach Pfad referenzieren. Das in VS Code integrierte Terminal kann auch Zeichen aus sehr großen Einfügungen verlieren, bevor sie Claude Code erreichen. Verwenden Sie daher dort eine Datei.327Wenn Sie mehr als 800 Zeichen oder mehr als drei Zeilen in den Prompt einfügen, reduziert Claude Code die Eingabe auf einen Platzhalter wie `[Pasted text #1 +120 lines]`, damit das Eingabefeld nutzbar bleibt, und sendet beim Absenden dennoch den vollständigen Inhalt. Bei sehr großen Eingaben wie ganzen Dateien oder langen Logs schreiben Sie den Inhalt in eine Datei und bitten Claude, diese zu lesen, anstatt ihn einzufügen. Das Transkript der Konversation bleibt so lesbar, und Claude kann in späteren Turns über den Pfad auf die Datei verweisen. Das integrierte Terminal von VS Code kann bei sehr großen Einfügungen außerdem Zeichen verlieren, bevor diese Claude Code erreichen, verwenden Sie dort daher eine Datei.

328 328 

329Wenn die eingefügte Datei [unsichtbare Unicode-Zeichen](https://code.claude.com/docs/de/interactive-mode.md#invisible-characters-in-prompts) enthält, entfernt Claude Code diese, wenn Sie die Eingabetaste drücken, und setzt die bereinigte Eingabeaufforderung in das Eingabefeld zurück, damit Sie sie mit einer weiteren Eingabetaste absenden können.329Enthält der eingefügte Text [unsichtbare Unicode-Zeichen](https://code.claude.com/docs/de/interactive-mode.md#invisible-characters-in-prompts), entfernt Claude Code diese, wenn Sie Enter drücken, und setzt den bereinigten Prompt wieder in das Eingabefeld, damit Sie ihn mit einem weiteren Enter senden können.

330 330 

331### Wie Claude eingefügten Text behandelt331### Wie Claude eingefügten Text behandelt

332 332 

333Wenn Sie absenden, sieht Claude den Inhalt hinter jedem `[Eingefügter Text #N]`-Platzhalter als Text markiert, den Sie von irgendwo anders eingefügt haben, anstatt ihn zu tippen. Claude wird mitgeteilt, dass eine Einfügung Anweisungen enthalten kann, die Sie nicht geschrieben haben, und dass er Anweisungen darin nur dort befolgen soll, wo die von Ihnen eingegebene Nachricht dies verlangt. In Sitzungen, die [Feature-Flags nicht abrufen](https://code.claude.com/docs/de/env-vars.md#features-that-need-feature-flag-fetching), werden Einfügungen nicht markiert.333Beim Absenden sieht Claude den Inhalt hinter jedem Platzhalter `[Pasted text #N]` als Text gekennzeichnet, den Sie von anderswo eingefügt und nicht selbst getippt haben. Claude wird mitgeteilt, dass eingefügter Text Anweisungen enthalten kann, die nicht von Ihnen stammen, und dass Claude Anweisungen darin nur befolgen soll, wenn die von Ihnen getippte Nachricht dazu auffordert. In Sitzungen, die keine [Feature-Flags abrufen](https://code.claude.com/docs/de/env-vars.md#features-that-need-feature-flag-fetching), wird eingefügter Text nicht gekennzeichnet.

334 334 

335### Eine reduzierte Einfügung löschen und wiederherstellen335### Reduzierte Einfügung löschen und wiederherstellen

336 336 

337Wenn Sie mit einer Wort- oder Zeilenkürzel wie `Ctrl+W` oder `Ctrl+K` löschen oder mit einem Vim-Löschbefehl durch eine `f`/`t`-Bewegung wie `df]` löschen und der gelöschte Bereich in einen `[Eingefügter Text #N]`-Platzhalter hineinreicht, entfernt Claude Code den Platzhalter vollständig. Um ihn wiederherzustellen, fügen Sie das Gelöschte mit [`Ctrl+Y`](https://code.claude.com/docs/de/interactive-mode#text-editing) nach einem Wort- oder Zeilenkürzel ein, oder mit [`p` im NORMAL-Modus](https://code.claude.com/docs/de/interactive-mode#editing-normal-mode) nach einem Vim-Löschbefehl.337Wenn Sie mit einem Wort- oder Zeilen-Tastenkürzel wie `Ctrl+W` oder `Ctrl+K` oder mit einem vim-Löschbefehl über eine `f`/`t`-Bewegung wie `df]` löschen und der gelöschte Bereich in einen Platzhalter `[Pasted text #N]` hineinreicht, entfernt Claude Code den Platzhalter vollständig. Um ihn wiederherzustellen, fügen Sie das Gelöschte nach einem Wort- oder Zeilen-Tastenkürzel mit [`Ctrl+Y`](https://code.claude.com/docs/de/interactive-mode#text-editing) oder nach einem vim-Löschbefehl mit [`p` im NORMAL-Modus](https://code.claude.com/docs/de/interactive-mode#editing-normal-mode) wieder ein.

338 338 

339### Eine Eingabeaufforderung mit eingefügtem Text abrufen339### Einen Prompt mit eingefügtem Text erneut aufrufen

340 340 

341Claude Code speichert den Inhalt hinter jedem `[Eingefügter Text #N]`-Platzhalter unter `~/.claude/paste-cache/`, sodass Sie beim Abrufen einer Eingabeaufforderung aus dem [Befehlsverlauf](https://code.claude.com/docs/de/interactive-mode.md#command-history) und erneuter Absendung der vollständige eingefügte Inhalt erneut gesendet wird, auch in einer späteren Sitzung.341Claude Code speichert den Inhalt hinter jedem Platzhalter `[Pasted text #N]` unter `~/.claude/paste-cache/`. Wenn Sie also einen Prompt aus dem [Befehlsverlauf](https://code.claude.com/docs/de/interactive-mode.md#command-history) erneut aufrufen und absenden, wird der vollständige eingefügte Inhalt erneut gesendet, auch in einer späteren Sitzung.

342 342 

343Cache-Dateien, die älter als [`cleanupPeriodDays`](https://code.claude.com/docs/de/settings-reference#cleanupperioddays) sind, werden gemäß den [Aufräumregeln](https://code.claude.com/docs/de/claude-directory.md#cleaned-up-automatically) gelöscht, sodass eine abgerufene Eingabeaufforderung auf eingefügten Text verweisen kann, der nicht mehr vorhanden ist. Wenn Sie eine solche Eingabeaufforderung absenden, sendet Claude Code niemals die wörtliche Zeichenkette `[Eingefügter Text #N]` und zeigt eine Benachrichtigung an, die den fehlenden Einfügungstext benennt:343Cache-Dateien, die älter als [`cleanupPeriodDays`](https://code.claude.com/docs/de/settings-reference#cleanupperioddays) sind, werden gemäß den [Regeln für die automatische Bereinigung](https://code.claude.com/docs/de/claude-directory.md#cleaned-up-automatically) gelöscht, sodass ein erneut aufgerufener Prompt auf eingefügten Text verweisen kann, der nicht mehr existiert. Wenn Sie einen solchen Prompt absenden, sendet Claude Code niemals die wörtliche Zeichenfolge `[Pasted text #N]` und zeigt eine Benachrichtigung an, die die fehlende Einfügung benennt:

344 344 

345* In einer einfachen Eingabeaufforderung mit verbleibendem Text entfernt Claude Code den Platzhalter und sendet den verbleibenden Text.345* Bei einem einfachen Prompt mit verbleibendem Text entfernt Claude Code den Platzhalter und sendet den verbleibenden Text.

346* In einem [Shell-Modus](https://code.claude.com/docs/de/interactive-mode.md#shell-mode-with-prefix)-Befehl oder einem `/`-Befehl, bei dem die Entfernung das Ausgeführte ändern würde, und in jeder Eingabeaufforderung, bei der die Entfernung zu einer leeren Eingabe führt, bricht Claude Code die Absendung ab und behält den ursprünglichen Text in der Eingabe, wobei der Platzhalter noch darin enthalten ist. Löschen Sie den Platzhalter oder bearbeiten Sie den Befehl, und senden Sie dann erneut ab.346* Bei einem Befehl im [Shell-Modus](https://code.claude.com/docs/de/interactive-mode.md#shell-mode-with-prefix) oder einem `/`-Befehl, bei dem das Entfernen ändern würde, was ausgeführt wird, sowie bei jedem Prompt, der durch das Entfernen leer wäre, bricht Claude Code das Absenden ab und behält den ursprünglichen Text einschließlich des Platzhalters im Eingabefeld. Löschen Sie den Platzhalter oder bearbeiten Sie den Befehl und senden Sie ihn dann erneut ab.

347 347 

348## Prompts mit Vim-Tastenbindungen bearbeiten348## Prompts mit Vim-Tastenkombinationen bearbeiten

349 349 

350Claude Code enthält einen Vim-ähnlichen Bearbeitungsmodus für die Eingabeaufforderung. Aktivieren Sie ihn über `/config` → Editor mode, oder indem Sie [`editorMode`](https://code.claude.com/docs/de/settings-reference#editormode) in `~/.claude/settings.json` auf `"vim"` setzen. Setzen Sie Editor mode zurück auf `normal`, um ihn auszuschalten.350Claude Code enthält einen Bearbeitungsmodus im Vim-Stil für die Prompt-Eingabe. Aktivieren Sie ihn über `/config` → Editor mode oder indem Sie [`editorMode`](https://code.claude.com/docs/de/settings-reference#editormode) in `~/.claude/settings.json` auf `"vim"` setzen. Setzen Sie Editor mode wieder auf `normal`, um ihn auszuschalten.

351 351 

352Der Vim-Modus unterstützt eine Teilmenge von NORMAL- und VISUAL-Modus-Bewegungen und Operatoren, wie z. B. `hjkl`-Navigation, `v`/`V`-Auswahl und `d`/`c`/`y` mit Textobjekten. Siehe die [Vim-Editor-Modus-Referenz](https://code.claude.com/docs/de/interactive-mode.md#vim-editor-mode) für die vollständige Tabelle der Tasten.352Der Vim-Modus unterstützt eine Teilmenge der Bewegungen und Operatoren im NORMAL- und VISUAL-Modus, etwa die Navigation mit `hjkl`, die Auswahl mit `v`/`V` sowie `d`/`c`/`y` mit Textobjekten. Die vollständige Tastentabelle finden Sie in der [Referenz zum Vim-Editormodus](https://code.claude.com/docs/de/interactive-mode.md#vim-editor-mode).

353 353 

354Vim-Bewegungen können nicht über die Tastenbindungsdatei neu zugeordnet werden. Um eine zweitastige INSERT-Modus-Sequenz wie `jj` auf Escape abzubilden, setzen Sie [`vimInsertModeRemaps`](https://code.claude.com/docs/de/interactive-mode#remap-insert-mode-key-sequences) in Ihren Benutzereinstellungen.354Vim-Bewegungen lassen sich nicht über die Datei für Tastenkombinationen neu belegen. Um eine Tastenfolge aus zwei Tasten im INSERT-Modus wie `jj` auf Escape abzubilden, setzen Sie [`vimInsertModeRemaps`](https://code.claude.com/docs/de/interactive-mode#remap-insert-mode-key-sequences) in Ihren Benutzereinstellungen.

355 355 

356Das Drücken der Eingabetaste sendet Ihre Eingabeaufforderung im INSERT-Modus weiterhin ab, anders als bei Standard-Vim. Verwenden Sie `o` oder `O` im NORMAL-Modus oder Strg+J, um stattdessen eine neue Zeile einzufügen.356Anders als im Standard-Vim sendet Enter im INSERT-Modus weiterhin Ihren Prompt ab. Verwenden Sie stattdessen `o` oder `O` im NORMAL-Modus oder Ctrl+J, um einen Zeilenumbruch einzufügen.

357 357 

358## Verwandte Ressourcen358## Verwandte Ressourcen

359 359 

tools-reference.md +23 −23

Details

616 616 

617Ohne die Task-Tools koordiniert sich ein Agent mit seinem Team durch Nachrichten statt über die [gemeinsame Aufgabenliste](https://code.claude.com/docs/de/agent-teams.md#assign-and-claim-tasks).617Ohne die Task-Tools koordiniert sich ein Agent mit seinem Team durch Nachrichten statt über die [gemeinsame Aufgabenliste](https://code.claude.com/docs/de/agent-teams.md#assign-and-claim-tasks).

618 618 

619## WebFetch-Tool-Verhalten619## Verhalten des WebFetch-Tools

620 620 

621WebFetch nimmt eine URL und einen Prompt entgegen, der beschreibt, was extrahiert werden soll. Es ruft die Seite ab und konvertiert die Antwort in Markdown, wenn der Server HTML zurückgibt. Bei den meisten Abrufen führt es den Prompt anschließend in einem separaten Modellaufruf gegen den Inhalt aus, und Claude erhält das Ergebnis dieses Aufrufs statt der rohen Seite. Der Konvertierungsschritt ist nicht konfigurierbar.621WebFetch nimmt eine URL und einen Prompt entgegen, der beschreibt, was extrahiert werden soll. Es ruft die Seite ab und wandelt die Antwort in Markdown um, wenn der Server HTML zurückgibt. Bei den meisten Abrufen führt es den Prompt anschließend in einem separaten Modellaufruf auf den Inhalt aus, und Claude erhält das Ergebnis dieses Aufrufs statt der unbearbeiteten Seite. Der Umwandlungsschritt ist nicht konfigurierbar.

622 622 

623Dies macht WebFetch absichtlich verlustbehaftet. Die Extraktions-Eingabeaufforderung bestimmt, was Claude erreicht, daher kann ein Ergebnis, das besagt, dass eine Seite etwas nicht erwähnt, nur bedeuten, dass die Eingabeaufforderung nicht danach gefragt hat. Bitten Sie Claude, die Seite erneut mit einer spezifischeren Eingabeaufforderung abzurufen, oder verwenden Sie `curl` über Bash für die unverarbeitete Seite.623Dadurch ist WebFetch konstruktionsbedingt verlustbehaftet. Der Extraktions-Prompt bestimmt, was bei Claude ankommt. Ein Ergebnis, das besagt, eine Seite erwähne etwas nicht, kann also auch nur bedeuten, dass der Prompt nicht danach gefragt hat. Bitten Sie Claude, die Seite mit einem spezifischeren Prompt erneut abzurufen, oder verwenden Sie `curl` über Bash, um die unbearbeitete Seite zu erhalten.

624 624 

625Einige Verhaltensweisen prägen die Antwort, die Claude erhält:625Einige Verhaltensweisen prägen die Antwort, die Claude erhält:

626 626 

627* WebFetch lehnt `localhost` und jeden anderen Hostnamen ohne einen Punkt ab, z. B. einen bloßen Intranet-Namen, bevor eine Anfrage gestellt wird. Der [Fehler, den es zurückgibt](https://code.claude.com/docs/de/errors.md#webfetch-cannot-fetch-localhost), teilt Claude mit, dass lokale Server mit `curl` über Bash erreicht werden sollen.627* WebFetch lehnt `localhost` und jeden anderen Hostnamen ohne Punkt, etwa einen einfachen Intranet-Namen, ab, bevor eine Anfrage gestellt wird. Der [zurückgegebene Fehler](https://code.claude.com/docs/de/errors.md#webfetch-cannot-fetch-localhost) weist Claude an, lokale Server stattdessen mit `curl` über Bash zu erreichen.

628* HTTP-URLs werden automatisch auf HTTPS aktualisiert.628* HTTP-URLs werden automatisch auf HTTPS umgestellt.

629* WebFetch liest pro Aufruf bis zu 100.000 Zeichen des Inhalts einer Seite. Auf Claude Code v2.1.290 oder später teilt das Ergebnis für eine längere Seite Claude mit, wie viel ungelesen blieb, sodass Claude den nächsten Teil abrufen kann.629* WebFetch liest pro Aufruf bis zu 100.000 Zeichen des Seiteninhalts. Ab Claude Code v2.1.290 teilt das Ergebnis bei einer längeren Seite Claude mit, wie viel ungelesen blieb, sodass Claude den nächsten Teil abrufen kann.

630* WebFetch speichert jede Antwort standardmäßig 15 Minuten lang zwischen, sodass wiederholte Abrufe derselben URL schnell zurückgegeben werden. Auf Claude Code v2.1.233 oder später können Sie [`CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS`](https://code.claude.com/docs/de/env-vars#variables) setzen, um zu ändern, wie lange WebFetch jede Antwort speichert.630* WebFetch speichert jede Antwort standardmäßig 15 Minuten lang im Cache, sodass wiederholte Abrufe derselben URL schnell zurückkehren. Ab Claude Code v2.1.233 können Sie mit [`CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS`](https://code.claude.com/docs/de/env-vars#variables) festlegen, wie lange WebFetch jede Antwort vorhält.

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

632* Wenn eine URL zu einem anderen Host umleitet, gibt WebFetch ein Textergebnis zurück, das die ursprüngliche URL und das Umleitungsziel benennt, anstatt ihr zu folgen. Claude ruft dann die neue URL mit einem zweiten WebFetch-Aufruf ab.632* Wenn eine URL auf einen anderen Host weiterleitet, gibt WebFetch ein Textergebnis zurück, das die ursprüngliche URL und das Weiterleitungsziel nennt, statt der Weiterleitung zu folgen. Claude ruft die neue URL dann mit einem zweiten WebFetch-Aufruf ab.

633* Wenn der Extraktionsschritt eine überladene API trifft, versucht Claude Code es mit Backoff erneut; ein Abruf, der immer noch fehlschlägt, gibt ein Fehlerergebnis zurück.633* Wenn der Extraktionsschritt auf eine überlastete API trifft, versucht Claude Code ihn mit Backoff erneut; ein Abruf, der dennoch fehlschlägt, gibt ein Fehlerergebnis zurück.

634 634 

635In Manual und `acceptEdits` [Berechtigungsmodi](https://code.claude.com/docs/de/permission-modes.md) fordert WebFetch vor dem Abruf auf, außer für Domänen, die Ihre [Berechtigungsregeln](https://code.claude.com/docs/de/permissions.md#manage-permissions) bereits zulassen oder ablehnen, und eine integrierte Reihe von genehmigten Dokumentationsdomänen, die ohne Eingabeaufforderung abgerufen werden. Unabhängig davon, was Ihre Regeln zulassen, muss ein Abruf auch zuerst die [WebFetch-Domänensicherheitsprüfung](https://code.claude.com/docs/de/data-usage.md#webfetch-domain-safety-check) bestehen; dieser Abschnitt behandelt, was die Prüfung sendet und die Einstellung, die sie überspringt. Die Eingabeaufforderung bietet drei Optionen:635In den [Berechtigungsmodi](https://code.claude.com/docs/de/permission-modes.md) Manual und `acceptEdits` fragt WebFetch vor dem Abruf nach, außer bei Domains, die Ihre [Berechtigungsregeln](https://code.claude.com/docs/de/permissions.md#manage-permissions) bereits erlauben oder verweigern, sowie bei einer integrierten Gruppe vorab genehmigter Dokumentationsdomains, die ohne Nachfrage abgerufen werden. Unabhängig davon, was Ihre Regeln erlauben, durchläuft ein Abruf zuerst auch die [WebFetch-Domain-Sicherheitsprüfung](https://code.claude.com/docs/de/data-usage.md#webfetch-domain-safety-check); dieser Abschnitt beschreibt, was die Prüfung sendet und mit welcher Einstellung sie übersprungen wird. Die Berechtigungsabfrage bietet drei Optionen:

636 636 

637* **Ja**: genehmigt diesen Abruf nur. Der nächste WebFetch-Aufruf fordert erneut auf, auch für dieselbe Domäne.637* **Yes**: genehmigt nur diesen Abruf. Der nächste WebFetch-Aufruf fragt erneut nach, auch für dieselbe Domain.

638* **Ja, und frag mich nicht mehr für `<domain>`**: genehmigt den Abruf und speichert eine `WebFetch(domain:...)`-Zulassungsregel für diese Domäne in `.claude/settings.local.json` für dieses Repository. Siehe [wie gespeicherte Genehmigungen bestehen bleiben](https://code.claude.com/docs/de/permissions.md#permission-system). Wenn Ihre Organisation [`allowManagedPermissionRulesOnly`](https://code.claude.com/docs/de/permissions#managed-only-settings) setzt, blendet Claude Code diese Option aus.638* **Yes, and don't ask again for `<domain>`**: genehmigt den Abruf und speichert eine `WebFetch(domain:...)`-allow-Regel für diese Domain in `.claude/settings.local.json` für dieses Repository. Siehe [wie gespeicherte Genehmigungen erhalten bleiben](https://code.claude.com/docs/de/permissions.md#permission-system). Wenn Ihre Organisation [`allowManagedPermissionRulesOnly`](https://code.claude.com/docs/de/permissions#managed-only-settings) festlegt, blendet Claude Code diese Option aus.

639* **Nein, und sag Claude, was er stattdessen tun soll**: lehnt den Abruf ab.639* **No, and tell Claude what to do differently**: lehnt den Abruf ab.

640 640 

641Um eine Domäne im Voraus ohne Eingabeaufforderung zuzulassen, fügen Sie eine Zulassungsregel wie `WebFetch(domain:example.com)` hinzu; `WebFetch(domain:*)` lässt jede Domäne zu. Die `auto` und `bypassPermissions` [Berechtigungsmodi](https://code.claude.com/docs/de/permissions.md#permission-modes) überspringen die Eingabeaufforderung, außer für eine Domäne, die eine explizite `ask`-Regel erfüllt.641Um eine Domain vorab ohne Nachfrage zu erlauben, fügen Sie eine allow-Regel wie `WebFetch(domain:example.com)` hinzu; `WebFetch(domain:*)` erlaubt jede Domain. Die [Berechtigungsmodi](https://code.claude.com/docs/de/permissions.md#permission-modes) `auto` und `bypassPermissions` überspringen die Nachfrage, außer bei einer Domain, auf die eine explizite `ask`-Regel zutrifft.

642 642 

643Eine explizite `WebFetch(domain:...)`-Regel in `deny`, `ask` oder `allow` hat Vorrang vor der genehmigten Reihe, sodass Sie eine genehmigte Domäne blockieren oder eine Eingabeaufforderung dafür verlangen können.643Eine explizite `WebFetch(domain:...)`-Regel in `deny`, `ask` oder `allow` hat Vorrang vor der vorab genehmigten Gruppe, sodass Sie eine vorab genehmigte Domain blockieren oder für sie eine Nachfrage verlangen können.

644 644 

645Wenn die URL ein claude.ai-[Artefakt](https://code.claude.com/docs/de/artifacts.md)-Link ist, kann Claude Code zusätzlich um Genehmigung bitten, das Artefakt selbst zu lesen. Für die Fälle, in denen es nachfragt, siehe [Ein mit Ihnen geteiltes Artefakt lesen](https://code.claude.com/docs/de/artifacts.md#read-an-artifact-shared-with-you).645Wenn die URL ein claude.ai-[Artefakt](https://code.claude.com/docs/de/artifacts.md)-Link ist, kann Claude Code auch um Genehmigung bitten, das Artefakt selbst zu lesen. Die Fälle, in denen nachgefragt wird, finden Sie unter [Ein mit Ihnen geteiltes Artefakt lesen](https://code.claude.com/docs/de/artifacts.md#read-an-artifact-shared-with-you).

646 646 

647WebFetch setzt einen `User-Agent`-Header, der mit `Claude-User` beginnt, und einen `Accept`-Header, der Markdown gegenüber HTML bevorzugt, sodass Server, die Inhaltsaushandlung unterstützen, Markdown direkt zurückgeben können.647WebFetch setzt einen `User-Agent`-Header, der mit `Claude-User` beginnt, sowie einen `Accept`-Header, der Markdown gegenüber HTML bevorzugt, damit Server, die Content Negotiation unterstützen, direkt Markdown zurückgeben können.

648 648 

649Sandbox-Befehle erben nicht die integrierte Reihe von genehmigten Dokumentationsdomänen von WebFetch. Um einem Sandbox-Befehl den Zugriff auf eine Domäne ohne Eingabeaufforderung zu ermöglichen, fügen Sie die Domäne zu [`allowedDomains`](https://code.claude.com/docs/de/settings-reference#sandbox-network-alloweddomains) hinzu oder lassen Sie sie mit einer `WebFetch(domain:...)`-Regel zu, die die [Sandbox auch berücksichtigt](https://code.claude.com/docs/de/sandboxing.md#network-isolation). WebFetch liest die Sandbox-Zulassungsliste im Gegenzug nie, daher verhindert das Hinzufügen einer Domäne zu einer Sandbox- oder Organisations-Netzwerk-Zulassungsliste nicht, dass WebFetch danach fragt.649In einer Sandbox ausgeführte Befehle übernehmen nicht die integrierte Gruppe vorab genehmigter Dokumentationsdomains von WebFetch. Damit ein in einer Sandbox ausgeführter Befehl eine Domain ohne Nachfrage erreichen kann, fügen Sie die Domain zu [`allowedDomains`](https://code.claude.com/docs/de/settings-reference#sandbox-network-alloweddomains) hinzu oder erlauben Sie sie mit einer `WebFetch(domain:...)`-Regel, die [auch die Sandbox berücksichtigt](https://code.claude.com/docs/de/sandboxing.md#network-isolation). Umgekehrt liest WebFetch nie die Sandbox-Allowlist. Wenn Sie also eine Domain zu einer Sandbox- oder Organisations-Netzwerk-Allowlist hinzufügen, fragt WebFetch für sie trotzdem weiterhin nach.

650 650 

651### WebFetch-Verfügbarkeit651### Verfügbarkeit von WebFetch

652 652 

653Auf Claude Code v2.1.285 oder später können Sie [`CLAUDE_CODE_DISABLE_WEB_FETCH`](https://code.claude.com/docs/de/env-vars#variables) auf `1` setzen, um WebFetch auszuschalten.653Ab Claude Code v2.1.285 setzen Sie [`CLAUDE_CODE_DISABLE_WEB_FETCH`](https://code.claude.com/docs/de/env-vars#variables) auf `1`, um WebFetch auszuschalten.

654 654 

655Wenn Sie sich mit einem Team- oder Enterprise-claude.ai-Konto anmelden und nicht über ein [LLM-Gateway](https://code.claude.com/docs/de/llm-gateway) verbunden sind, hängt WebFetch auch von der Richtlinie Ihrer Organisation ab, die Claude Code beim Start einer Sitzung von `api.anthropic.com` anfordert. Dasselbe gilt für eine Sitzung, deren Plan Claude Code nicht bestimmen kann, z. B. eine, die unter einem claude.ai-Token ausgeführt wird, das eine andere App bereitgestellt hat.655Wenn Sie sich mit einem Team- oder Enterprise-claude.ai-Konto anmelden und keine Verbindung über ein [LLM-Gateway](https://code.claude.com/docs/de/llm-gateway) herstellen, hängt WebFetch außerdem von der Richtlinie Ihrer Organisation ab, die Claude Code beim Start einer Sitzung von `api.anthropic.com` anfordert. Dasselbe gilt für eine Sitzung, deren Tarif Claude Code nicht ermitteln kann, etwa eine Sitzung, die mit einem claude.ai-Token läuft, das eine andere App bereitgestellt hat.

656 656 

657Wenn WebFetch in einer Sitzung fehlt, führen Sie `/status` in der Sitzung aus. Wenn die Zeile `Organization policy` meldet, dass die Richtlinie nicht geladen wurde und Web Fetch unter den Funktionen aufgeführt ist, die darauf warten, hält Claude Code WebFetch zurück, bis es bestätigen kann, dass Ihre Organisation es zulässt. Außerhalb einer Sitzung macht `claude doctor` eine eigene Anfrage und gibt dieselbe Zeile aus. Sobald eine Richtlinie, die WebFetch zulässt, geladen wird, gibt das Tool ohne Neustart zurück.657Wenn WebFetch in einer Sitzung fehlt, führen Sie `/status` in der Sitzung aus. Wenn die Zeile `Organization policy` meldet, dass die Richtlinie nicht geladen wurde, und Web Fetch unter den Funktionen nennt, die darauf warten, hält Claude Code WebFetch zurück, bis bestätigt werden kann, dass Ihre Organisation es erlaubt. Außerhalb einer Sitzung stellt `claude doctor` eine eigene Anfrage und gibt dieselbe Zeile aus. Sobald eine Richtlinie geladen ist, die WebFetch erlaubt, steht das Tool ohne Neustart wieder zur Verfügung.

658 658 

659## WebSearch-Tool-Verhalten659## WebSearch-Tool-Verhalten

660 660 

Details

1169 1169 

1170### OAuth-Anmeldung schlägt in WSL2, SSH oder Containern fehl1170### OAuth-Anmeldung schlägt in WSL2, SSH oder Containern fehl

1171 1171 

1172Wenn Claude Code in WSL2, auf einem Remote-Rechner über SSH oder in einem Container ausgeführt wird, öffnet sich der Browser normalerweise auf einem anderen Host und seine Umleitung kann Claude Code's lokalen Callback-Server nicht erreichen. Nachdem Sie sich anmelden, zeigt der Browser einen Anmeldecode statt einer automatischen Umleitung an. Fügen Sie diesen Code in das Terminal bei der Aufforderung `Paste code here if prompted` ein, um die Anmeldung abzuschließen.1172Wenn sich kein Browser öffnet oder der Browser Sie anmeldet und dann einen Verbindungsfehler für eine `localhost`-Adresse anzeigt, können Sie die Anmeldung abschließen, ohne eines der beiden Probleme zu beheben. Melden Sie sich stattdessen über die separate Anmelde-URL an, die das Terminal oberhalb seiner Eingabeaufforderung zum Einfügen anzeigt:

1173 1173 

1174Wenn der Browser überhaupt nicht aus WSL2 geöffnet wird, setzen Sie die `BROWSER` Umgebungsvariable auf Ihren Windows-Browser-Pfad:1174**1. Kopieren Sie die Anmelde-URL**

1175 1175 

1176```bash theme={null}1176Drücken Sie bei der interaktiven Anmeldeaufforderung `c`, um die URL zu kopieren, oder markieren Sie sie im Terminal. Kopieren Sie bei `claude auth login` die URL, die der Befehl ausgibt.

1177export BROWSER="/mnt/c/Program Files/Google/Chrome/Application/chrome.exe"1177 

1178claude1178**2. Melden Sie sich über diese URL an**

1179```1179 

1180Öffnen Sie die URL in einem Browser auf Ihrem lokalen Rechner und melden Sie sich an. Der Browser zeigt dann einen Code an, statt zu `localhost` zurückzukehren.

1181 

1182**3. Fügen Sie den Code ein**

1180 1183 

1181Alternativ drücken Sie `c` bei der interaktiven Anmeldungsaufforderung, um die OAuth-URL zu kopieren, oder kopieren Sie die URL, die `claude auth login` ausgibt, und öffnen Sie sie in einem Browser auf Ihrem lokalen Rechner.1184Fügen Sie diesen Code im Terminal bei der Eingabeaufforderung ein, die mit `Paste code here` beginnt.

1182 1185 

1183Wenn das Einfügen des Codes in die interaktive Aufforderung nichts bewirkt, erreicht die Paste-Bindung Ihres Terminals wahrscheinlich nicht das Eingabefeld. Versuchen Sie die alternative Paste-Verknüpfung Ihres Terminals, oft Rechtsklick oder Shift+Insert in Windows Terminal, oder verwenden Sie stattdessen `claude auth login`, das den eingefügten Code aus der Standardeingabe liest:1186Wenn das Einfügen des Codes in die interaktive Aufforderung nichts bewirkt, erreicht die Paste-Bindung Ihres Terminals wahrscheinlich nicht das Eingabefeld. Versuchen Sie die alternative Paste-Verknüpfung Ihres Terminals, oft Rechtsklick oder Shift+Insert in Windows Terminal, oder verwenden Sie stattdessen `claude auth login`, das den eingefügten Code aus der Standardeingabe liest:

1184 1187 


1188 1191 

1189Dieser Fallback gilt auch auf nativem Windows oder jedem Terminal, bei dem das Einfügen in die interaktive Aufforderung fehlschlägt.1192Dieser Fallback gilt auch auf nativem Windows oder jedem Terminal, bei dem das Einfügen in die interaktive Aufforderung fehlschlägt.

1190 1193 

1194Wenn sich unter WSL2 kein Browser geöffnet hat, können Sie Claude Code beim nächsten Mal auch Ihren Windows-Browser öffnen lassen, indem Sie die Umgebungsvariable `BROWSER` auf den Pfad dieses Browsers setzen:

1195 

1196```bash theme={null}

1197export BROWSER="/mnt/c/Program Files/Google/Chrome/Application/chrome.exe"

1198claude

1199```

1200 

1191### Nicht angemeldet oder Token abgelaufen1201### Nicht angemeldet oder Token abgelaufen

1192 1202 

1193Wenn Claude Code Sie nach einer Sitzung erneut zur Anmeldung auffordert, ist Ihr OAuth-Token möglicherweise abgelaufen.1203Wenn Claude Code Sie nach einer Sitzung erneut zur Anmeldung auffordert, ist Ihr OAuth-Token möglicherweise abgelaufen.

ultrareview.md +25 −25

Details

145 145 

146Wenn die Review abgeschlossen ist, zeigt Claude Code die verifizierten Ergebnisse als Benachrichtigung in Ihrer Sitzung an. Jedes Ergebnis enthält den Dateispeicherort und eine Erklärung des Problems, sodass Sie Claude direkt bitten können, es zu beheben.146Wenn die Review abgeschlossen ist, zeigt Claude Code die verifizierten Ergebnisse als Benachrichtigung in Ihrer Sitzung an. Jedes Ergebnis enthält den Dateispeicherort und eine Erklärung des Problems, sodass Sie Claude direkt bitten können, es zu beheben.

147 147 

148## Ultrareview nicht-interaktiv ausführen148## Ultrareview nicht interaktiv ausführen

149 149 

150Verwenden Sie den Unterbefehl `claude ultrareview`, um eine Ultrareview von CI oder einem Skript ohne eine interaktive Sitzung zu starten. Der Unterbefehl startet die gleiche Review wie `/code-review ultra`, blockiert, bis die Remote-Review abgeschlossen ist, und gibt die Ergebnisse auf stdout aus. Wenn die Ausführung mit `Error: Workspace not trusted` beendet wird, lesen Sie [Dem Ordner vertrauen, bevor die Review läuft](#trust-the-folder-before-the-review-runs).150Verwenden Sie den Unterbefehl `claude ultrareview`, um ein Ultrareview aus CI oder einem Skript ohne interaktive Sitzung zu starten. Der Unterbefehl startet dasselbe Review wie `/code-review ultra`, blockiert, bis das Remote-Review abgeschlossen ist, und gibt die Ergebnisse auf stdout aus. Wenn der Lauf mit `Error: Workspace not trusted` endet, lesen Sie [Dem Ordner vertrauen, bevor das Review läuft](#trust-the-folder-before-the-review-runs).

151 151 

152```bash theme={null}152```bash theme={null}

153claude ultrareview153claude ultrareview


155claude ultrareview origin/main155claude ultrareview origin/main

156```156```

157 157 

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

159 159 

160Sie stimmen dem Fallback für das gesamte Repository und der Abfrage zu Abrechnung und Bedingungen zu, wenn Sie den Unterbefehl ausführen, sodass die Ausführung nicht anhält, um diese bestätigen zu lassen. 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.160Wenn Sie den Unterbefehl ausführen, stimmen Sie dem Fallback auf das gesamte Repository sowie der Abfrage zu Abrechnung und Bedingungen zu, sodass der Lauf nicht anhält, um diese zu bestätigen. Dass Sie ihn selbst ausführen, gilt als Zustimmung. Wenn stattdessen Claude den Unterbefehl für Sie ausführt, zum Beispiel über das Bash-Tool, verweigert Claude Code das Review des gesamten Repositorys.

161 161 

162> [!NOTE]162> [!NOTE]

163>163>

164> `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.164> `claude -p '/code-review ultra'` liefert Ihnen keine Ergebnisse, verwenden Sie daher in Skripten `claude ultrareview`. Der `-p`-Lauf startet das Cloud-Review und beendet sich, ohne darauf zu warten. Wenn das Review Nutzungsguthaben abrechnen würde, hält der `-p`-Lauf an, ohne es zu starten.

165 165 

166| Flag | Beschreibung |166| Flag | Beschreibung |

167| - | - |167| - | - |

168| `--json` | Geben Sie die rohe `bugs.json`-Nutzlast statt der formatierten Ergebnisse aus |168| `--json` | Gibt die rohe `bugs.json`-Payload anstelle der formatierten Ergebnisse aus |

169| `--timeout <minutes>` | Maximale Minuten zum Warten auf den Abschluss der Review. Standard ist 45 |169| `--timeout <minutes>` | Maximale Anzahl Minuten, die auf den Abschluss des Reviews gewartet wird. Standardwert ist 45 |

170| `--post` | [Posten Sie die fertigen Ergebnisse](#post-findings-to-the-pull-request) als einen einfachen Kommentar aus Ihrem GitHub-Konto zum Pull Request. Funktioniert bei `github.com` Pull-Request-Zielen; bei anderen Zielen ignoriert Claude Code das Flag und teilt dies mit. Erfordert Claude Code v2.1.227 oder später |170| `--post` | [Veröffentlicht die fertigen Ergebnisse](#post-findings-to-the-pull-request) im Pull Request als einen einfachen Kommentar von Ihrem GitHub-Konto. Funktioniert bei Pull-Request-Zielen auf `github.com`; bei anderen Zielen ignoriert Claude Code das Flag und weist darauf hin. Erfordert Claude Code v2.1.227 oder neuer |

171| `--no-post` | Posten Sie die Ergebnisse nicht. Dies ist die Standardeinstellung, und wenn Sie beide Flags übergeben, postet Claude Code nicht. Erfordert Claude Code v2.1.227 oder später |171| `--no-post` | Veröffentlicht die Ergebnisse nicht. Dies ist der Standard, und wenn Sie beide Flags übergeben, veröffentlicht Claude Code nichts. Erfordert Claude Code v2.1.227 oder neuer |

172| `--trust-workspace` | [Vertrauen Sie dem aktuellen Ordner](#trust-the-folder-before-the-review-runs) nur für diese Ausführung, ohne Nachfrage, damit ein Skript oder CI-Job einen Checkout überprüfen kann, dem Sie nicht vertraut haben. Nimmt keinen Wert an: Setzen Sie eine PR-Nummer oder einen Base-Branch davor. Erfordert Claude Code v2.1.309 oder später |172| `--trust-workspace` | [Vertraut dem aktuellen Ordner](#trust-the-folder-before-the-review-runs) nur für diesen Lauf, ohne nachzufragen, sodass ein Skript oder CI-Job einen Checkout prüfen kann, dem Sie nicht vertraut haben. Nimmt keinen Wert an: Setzen Sie eine PR-Nummer oder einen Basis-Branch davor. Erfordert Claude Code v2.1.309 oder neuer |

173 173 

174`claude ultrareview` schreibt seine Fortschrittsmeldungen auf stderr, sodass stdout analysierbar bleibt.174`claude ultrareview` schreibt seine Fortschrittsmeldungen auf stderr, damit stdout parsebar bleibt.

175 175 

176Das Ausführen von `claude ultrareview` erfordert die gleiche Authentifizierung und Nutzungsguthaben-Konfiguration wie `/code-review ultra`.176Das Ausführen von `claude ultrareview` erfordert dieselbe Authentifizierung und dieselbe Konfiguration des Nutzungsguthabens wie `/code-review ultra`.

177 177 

178Der Unterbefehl beendet sich mit einem von drei Codes:178Der Unterbefehl endet mit einem von drei Exit-Codes:

179 179 

180* **0**: Die Review wurde abgeschlossen, mit oder ohne Ergebnisse180* **0**: Das Review wurde abgeschlossen, mit oder ohne Ergebnisse

181* **1**: Die Review konnte nicht gestartet werden oder wurde vor dem Abschluss gestoppt, die Cloud-Sitzung ist fehlgeschlagen, oder der Timeout ist abgelaufen. Der Code ist ebenfalls 1, wenn dem [Ordner nicht vertraut wird](#trust-the-folder-before-the-review-runs), auch wenn Sie bei der Vertrauensabfrage mit `n` antworten, die Eingabetaste drücken oder Strg+C drücken.181* **1**: Das Review konnte nicht gestartet werden oder wurde vor dem Abschluss angehalten, die Cloud-Sitzung ist auf einen Fehler gestoßen, oder der Timeout ist abgelaufen. Der Code ist auch 1, wenn dem [Ordner nicht vertraut wird](#trust-the-folder-before-the-review-runs), einschließlich wenn Sie bei der Vertrauensfrage mit `n` antworten, Enter drücken oder Ctrl-C drücken.

182* **130**: Sie haben Strg+C gedrückt, während der Unterbefehl die Review gestartet, auf die Ergebnisse gewartet oder den `--post`-Kommentar gesendet hat, und nicht bei der Vertrauensabfrage182* **130**: Sie haben Ctrl-C gedrückt, während der Unterbefehl das Review startete, auf die Ergebnisse wartete oder den `--post`-Kommentar sendete, und nicht bei der Vertrauensfrage

183 183 

184Wenn sich der Unterbefehl beendet, bevor die Ergebnisse eintreffen, erreichen diese Ihr Terminal nie. Die Review läuft möglicherweise noch in der Cloud. Ein erneutes Ausführen des Unterbefehls startet eine neue Review, statt die bisherige fortzusetzen, und die neue Review [verbraucht eine kostenlose Ausführung oder wird über Nutzungsguthaben abgerechnet](#pricing-and-free-runs).184Wenn der Unterbefehl endet, bevor die Ergebnisse eintreffen, erreichen diese Ihr Terminal nie. Das Review läuft möglicherweise noch in der Cloud. Wenn Sie den Unterbefehl erneut ausführen, wird ein neues Review gestartet, anstatt das vorherige fortzusetzen, und das neue Review [verbraucht einen kostenlosen Lauf oder wird als Nutzungsguthaben abgerechnet](#pricing-and-free-runs).

185 185 

186Mit `--post` startet der Unterbefehl das Posten direkt nach dem Ausdrucken der Ergebnisse und gibt den Link auf stderr aus.186Mit `--post` beginnt der Unterbefehl direkt nach der Ausgabe der Ergebnisse mit dem Veröffentlichen und gibt den Link auf stderr aus.

187 187 

188* Wenn die Ausführung fehlschlägt, gestoppt wird oder eine Zeitüberschreitung auftritt, postet der Unterbefehl nichts.188* Wenn der Lauf fehlschlägt, angehalten wird oder eine Zeitüberschreitung auftritt, veröffentlicht der Unterbefehl nichts.

189* 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.189* Wenn das Review abgeschlossen wird, der Kommentar aber nicht veröffentlicht wird, gibt Claude Code den Grund auf stderr aus, und die Ergebnisse bleiben auf stdout, sodass Sie sie manuell veröffentlichen können.

190 190 

191Für automatische Reviews bei GitHub Pull Requests integriert sich [Code Review](https://code.claude.com/docs/de/code-review.md) direkt mit Ihrem Repository und veröffentlicht Ergebnisse als Inline-PR-Kommentare ohne einen CLI-Schritt.191Für automatische Reviews von GitHub-Pull-Requests lässt sich [Code Review](https://code.claude.com/docs/de/code-review.md) direkt in Ihr Repository integrieren und veröffentlicht Ergebnisse als Inline-Kommentare im PR, ohne CLI-Schritt.

192 192 

193### Dem Ordner vertrauen, bevor die Review läuft193### Dem Ordner vertrauen, bevor das Review läuft

194 194 

195Wenn `claude ultrareview` mit `Trust <folder>? [y/N]` nachfragt, antworten Sie mit `y`, um [dem Ordner zu vertrauen](https://code.claude.com/docs/de/permissions.md#project-allow-rules-and-workspace-trust). Vertrauen Sie ihm nur, wenn Sie seinem Code vertrauen, denn Git und Claude Code können dann Programme ausführen, die in seiner Git-Konfiguration und seinen Projekteinstellungen benannt sind.195Wenn `claude ultrareview` mit `Trust <folder>? [y/N]` nachfragt, antworten Sie mit `y`, um [dem Ordner zu vertrauen](https://code.claude.com/docs/de/permissions.md#project-allow-rules-and-workspace-trust). Vertrauen Sie ihm nur, wenn Sie seinem Code vertrauen, denn Git und Claude Code können dann Programme ausführen, die in seiner Git-Konfiguration und seinen Projekteinstellungen angegeben sind.

196 196 

197Wenn der Unterbefehl Sie nicht fragen kann, etwa in einem CI-Job oder wenn die Ausgabe in eine Datei umgeleitet wird, beendet er sich mit [`Error: Workspace not trusted`](https://code.claude.com/docs/de/errors#workspace-not-trusted-when-running-claude-ultrareview). Hängen Sie `--trust-workspace` an, um dem Ordner für diese Ausführung zu vertrauen:197Wenn der Befehl nicht nachfragen kann, etwa in einem CI-Job oder wenn die Ausgabe in eine Datei umgeleitet wird, endet er mit [`Error: Workspace not trusted`](https://code.claude.com/docs/de/errors#workspace-not-trusted-when-running-claude-ultrareview). Hängen Sie `--trust-workspace` an, um dem Ordner für diesen Lauf zu vertrauen:

198 198 

199```bash theme={null}199```bash theme={null}

200claude ultrareview 1234 --trust-workspace200claude ultrareview 1234 --trust-workspace

201```201```

202 202 

203Um einen nicht vertrauenswürdigen Pull Request zu überprüfen, führen Sie `claude ultrareview <PR number> --trust-workspace` von einem Branch aus, dem Sie vertrauen. Der PR wird [in der Cloud geklont](#review-a-pull-request), sodass Sie seinen Branch nicht lokal benötigen.203Um einen nicht vertrauenswürdigen Pull Request zu prüfen, führen Sie `claude ultrareview <PR number> --trust-workspace` von einem Branch aus, dem Sie vertrauen. Der PR wird [in der Cloud geklont](#review-a-pull-request), sodass Sie seinen Branch nicht lokal benötigen.

204 204 

205## Wie Ultrareview mit /code-review verglichen wird205## Wie Ultrareview mit /code-review verglichen wird

206 206 

Details

93 93 

94Das erste Tippen startet die Aufnahme nur, wenn die Eingabeaufforderung leer ist, sodass Sie immer noch normal Leerzeichen eingeben können, während Sie eine Nachricht verfassen. Das zweite Tippen stoppt die Aufnahme unabhängig vom Eingabeinhalt. Die Aufnahme stoppt auch automatisch nach 15 Sekunden Stille oder zwei Minuten insgesamt.94Das erste Tippen startet die Aufnahme nur, wenn die Eingabeaufforderung leer ist, sodass Sie immer noch normal Leerzeichen eingeben können, während Sie eine Nachricht verfassen. Das zweite Tippen stoppt die Aufnahme unabhängig vom Eingabeinhalt. Die Aufnahme stoppt auch automatisch nach 15 Sekunden Stille oder zwei Minuten insgesamt.

95 95 

96## Aufzeichnung abbrechen96## Eine Aufnahme abbrechen

97 97 

98Drücken Sie `Esc` oder `Strg+C`, um eine Diktataufzeichnung abzubrechen, anstatt sie abzuschließen. Claude Code stoppt das Mikrofon, verwirft das Transkript und stellt die Eingabeaufforderung auf den Stand vor Beginn der Aufzeichnung zurück.98Drücken Sie `Esc` oder `Ctrl+C`, um ein Diktat abzubrechen, anstatt es abzuschließen. Claude Code stoppt das Mikrofon, verwirft das Transkript und stellt den Prompt auf den Stand vor Beginn der Aufnahme wieder her.

99 99 

100Beide Tasten brechen auch ab, während das Transkript einer abgeschlossenen Aufzeichnung noch verarbeitet wird. Eine Eingabeaufforderung, die Sie während der Verarbeitung bearbeitet oder eingereicht haben, bleibt so, wie Sie sie hinterlassen haben.100Beide Tasten brechen auch ab, während das Transkript einer beendeten Aufnahme noch verarbeitet wird. Ein Prompt, den Sie während der Verarbeitung bearbeitet oder abgesendet haben, bleibt so, wie Sie ihn hinterlassen haben.

101 101 

102Keine der beiden Tasten bewirkt etwas anderes bei dem Tastendruck, der abbricht: `Esc` unterbricht nicht Claudes Antwort, und `Strg+C` löscht nicht die Eingabeaufforderung und zählt nicht als der erste der [zwei Tastendrücke, die Claude Code beenden](https://code.claude.com/docs/de/interactive-mode.md#general-controls).102Keine der beiden Tasten bewirkt beim abbrechenden Tastendruck etwas anderes: `Esc` unterbricht nicht die Antwort von Claude, und `Ctrl+C` leert den Prompt nicht und zählt auch nicht als erster der [zwei Tastendrücke, mit denen Claude Code beendet wird](https://code.claude.com/docs/de/interactive-mode.md#general-controls).

103 103 

104## Ändern Sie die Erfassungssprache104## Ändern Sie die Erfassungssprache

105 105 

vs-code.md +16 −5

Details

133 Wenn das aktuelle Modell [Effort-Stufen](https://code.claude.com/docs/de/model-config.md#adjust-effort-level) unterstützt, zeigt die Auswahl zusätzlich eine Zeile **Effort** an, und die Schaltfläche mit dem Modellnamen zeigt die gewählte Stufe. Wenn Sie eine andere Stufe als `max` wählen, speichert Claude Code sie für das aktuelle Modell als Ihren Standard unter [`modelSettings`](https://code.claude.com/docs/de/settings-reference#modelsettings) in Ihren Benutzereinstellungen; `max` gilt nur für die aktuelle Sitzung. Die Schaltfläche mit dem Modellnamen und die Zeile **Effort** erfordern Claude Code v2.1.257 oder höher.133 Wenn das aktuelle Modell [Effort-Stufen](https://code.claude.com/docs/de/model-config.md#adjust-effort-level) unterstützt, zeigt die Auswahl zusätzlich eine Zeile **Effort** an, und die Schaltfläche mit dem Modellnamen zeigt die gewählte Stufe. Wenn Sie eine andere Stufe als `max` wählen, speichert Claude Code sie für das aktuelle Modell als Ihren Standard unter [`modelSettings`](https://code.claude.com/docs/de/settings-reference#modelsettings) in Ihren Benutzereinstellungen; `max` gilt nur für die aktuelle Sitzung. Die Schaltfläche mit dem Modellnamen und die Zeile **Effort** erfordern Claude Code v2.1.257 oder höher.

134 134 

135 Wenn [dynamische Workflows](https://code.claude.com/docs/de/workflows.md) aktiviert sind und das aktuelle Modell dies unterstützt, erscheint unter der Zeile **Effort** ein Schalter **Ultracode**. Schalten Sie ihn ein, damit Claude für jede umfangreichere Aufgabe in dieser Sitzung einen [Workflow](https://code.claude.com/docs/de/workflows.md#let-claude-decide-with-ultracode) mit der gewählten Effort-Stufe plant. Solange er eingeschaltet ist, zeigt die Schaltfläche mit dem Modellnamen nach der Stufe `· Ultracode` an. Der Schalter erfordert Claude Code v2.1.284 oder höher.135 Wenn [dynamische Workflows](https://code.claude.com/docs/de/workflows.md) aktiviert sind und das aktuelle Modell dies unterstützt, erscheint unter der Zeile **Effort** ein Schalter **Ultracode**. Schalten Sie ihn ein, damit Claude für jede umfangreichere Aufgabe in dieser Sitzung einen [Workflow](https://code.claude.com/docs/de/workflows.md#let-claude-decide-with-ultracode) mit der gewählten Effort-Stufe plant. Solange er eingeschaltet ist, zeigt die Schaltfläche mit dem Modellnamen nach der Stufe `· Ultracode` an. Der Schalter erfordert Claude Code v2.1.284 oder höher.

136* **Befehlsmenü**: Klicken Sie auf `/` oder geben Sie `/` ein, um das Befehlsmenü zu öffnen. Zu den Optionen gehören das Anhängen von Dateien, das Wechseln von Modellen und das Ein- und Ausschalten von Extended Thinking.136* **Befehlsmenü**: Klicken Sie auf `/` oder geben Sie `/` ein, um das Befehlsmenü zu öffnen. Zu den Optionen gehören das Anhängen von Dateien und das Wechseln von Modellen.

137 137 

138 Der Bereich Customize enthält Einträge wie MCP-Server, Befehle, Ausgabestile, Hooks, Memory, Anweisungen, Berechtigungen und Plugins. Einträge mit einem Terminal-Symbol werden im integrierten Terminal geöffnet.138 Der Bereich Customize enthält Einträge wie MCP-Server, Befehle, Ausgabestile, Hooks, Memory, Anweisungen, Berechtigungen und Plugins. Einträge mit einem Terminal-Symbol werden im integrierten Terminal geöffnet.

139 139 


191 Um die Übersicht zu öffnen, wenn keine Agentenanzahl angezeigt wird, etwa wenn Claude eine Hintergrund-Shell, aber keine Subagenten gestartet hat, geben Sie `/tasks` in das Eingabefeld ein. Hintergrundaufgaben in der Übersicht und die Eingabe von `/tasks` erfordern Claude Code v2.1.277 oder höher.191 Um die Übersicht zu öffnen, wenn keine Agentenanzahl angezeigt wird, etwa wenn Claude eine Hintergrund-Shell, aber keine Subagenten gestartet hat, geben Sie `/tasks` in das Eingabefeld ein. Hintergrundaufgaben in der Übersicht und die Eingabe von `/tasks` erfordern Claude Code v2.1.277 oder höher.

192 192 

193 Ab Claude Code v2.1.286 endet der aktuelle Turn, wenn Sie auf **Stop** klicken oder `Esc` drücken. Hintergrundagenten laufen weiter, bis sie fertig sind oder Sie sie in der Übersicht stoppen.193 Ab Claude Code v2.1.286 endet der aktuelle Turn, wenn Sie auf **Stop** klicken oder `Esc` drücken. Hintergrundagenten laufen weiter, bis sie fertig sind oder Sie sie in der Übersicht stoppen.

194* **Extended Thinking**: ermöglicht es Claude, sich mehr Zeit für das Durchdenken komplexer Probleme zu nehmen. Schalten Sie es über das Befehlsmenü (`/`) ein. Claudes Überlegungen erscheinen in der Konversation als eingeklappte Blöcke: Klicken Sie auf einen Block, um ihn zu lesen, oder drücken Sie `Ctrl+O`, um alle Thinking-Blöcke der Sitzung auf- oder zuzuklappen. Details finden Sie unter [Extended Thinking](https://code.claude.com/docs/de/model-config.md#extended-thinking).194* **Extended Thinking**: ermöglicht es Claude, sich mehr Zeit für das Durchdenken komplexer Probleme zu nehmen. Um es aus- oder wieder einzuschalten, verwenden Sie den Schalter **Thinking** im Bereich Model des Befehlsmenüs (`/`). Bei Modellen, bei denen sich [Thinking nicht ausschalten lässt](https://code.claude.com/docs/de/model-config.md#extended-thinking), enthält das Menü keinen Schalter **Thinking**, und Thinking bleibt eingeschaltet.

195 

196 Ein Thinking-Block, der nur eine Beschriftung wie `Thought for 12s` zeigt, enthält keinen Text und öffnet sich beim Anklicken nicht. Um Thinking-Zusammenfassungen zu sehen, setzen Sie [`showThinkingSummaries`](https://code.claude.com/docs/de/settings-reference#showthinkingsummaries) in `~/.claude/settings.json` auf `true` und führen Sie anschließend **Developer: Reload Window** über die Befehlspalette aus.

197 

198 Bereits vorhandene Thinking-Blöcke bleiben leer. Klicken Sie in Antworten nach dem Neuladen auf einen Block oder drücken Sie `Ctrl+O`, um alle aufzuklappen.

195* **Mehrzeilige Eingabe**: Drücken Sie `Shift+Enter`, um eine neue Zeile hinzuzufügen, ohne zu senden. Dies funktioniert auch in der Freitexteingabe „Other“ von Fragedialogen.199* **Mehrzeilige Eingabe**: Drücken Sie `Shift+Enter`, um eine neue Zeile hinzuzufügen, ohne zu senden. Dies funktioniert auch in der Freitexteingabe „Other“ von Fragedialogen.

196 200 

197### Auf Dateien und Ordner verweisen201### Auf Dateien und Ordner verweisen


333 337 

334Führen Sie `/usage` aus, um den Dialog Account & usage zu öffnen, der Ihr angemeldetes Konto und Ihre Nutzung anzeigt. Die Nutzungsangaben hängen davon ab, wie Sie sich angemeldet haben:338Führen Sie `/usage` aus, um den Dialog Account & usage zu öffnen, der Ihr angemeldetes Konto und Ihre Nutzung anzeigt. Die Nutzungsangaben hängen davon ab, wie Sie sich angemeldet haben:

335 339 

336* **claude.ai-Plan**: Nutzungsbalken für die Limits Ihres Plans, etwa für die aktuelle Sitzung und die Woche. Jeder Balken zeigt an, wie lange es dauert, bis sein Limit zurückgesetzt wird.340* **claude.ai-Plan**: Nutzungsbalken für die Limits Ihres Plans, etwa für die aktuelle Sitzung und die Woche.

337 341 

338 Der Dialog schlüsselt außerdem auf, was zu Ihren Plan-Limits beiträgt:342 Der Dialog schlüsselt außerdem auf, was zu Ihren Plan-Limits beiträgt:

339 343 


580 584 

581Beim Erstellen von Pull Requests generiert Claude Beschreibungen basierend auf den tatsächlichen Code-Änderungen und kann Kontext zu Tests oder Implementierungsentscheidungen hinzufügen.585Beim Erstellen von Pull Requests generiert Claude Beschreibungen basierend auf den tatsächlichen Code-Änderungen und kann Kontext zu Tests oder Implementierungsentscheidungen hinzufügen.

582 586 

587### Eine in einen Worktree verschobene Konversation erneut öffnen

588 

589Bei einer erneut geöffneten Konversation bedeutet das Banner **This session is in worktree**, dass das Arbeitsverzeichnis der Konversation der dort genannte [Worktree](https://code.claude.com/docs/de/worktrees.md) ist und nicht der Ordner, den dieses Fenster geöffnet hat. Um den Worktree in einem neuen VS Code-Fenster zu öffnen, klicken Sie im Banner auf **Open worktree**.

590 

591Eine Konversation wird beispielsweise in einen Worktree verschoben, wenn Sie [Claude bitten, in einem zu arbeiten](https://code.claude.com/docs/de/worktrees.md#ask-claude-to-create-a-worktree). Wenn Sie sie erneut öffnen oder das Panel sie [nach einem Neuladen des Fensters erneut öffnet](#continue-conversations-after-a-reload), wird sie im Worktree fortgesetzt, sofern Claude Code den Worktree unter `.claude/worktrees/` erstellt hat und er noch existiert. Vor Claude Code v2.1.300 wurde stattdessen eine leere Konversation geöffnet. Aktualisieren Sie bei diesen Versionen die Erweiterung.

592 

583## Arbeit im Hintergrund ausführen593## Arbeit im Hintergrund ausführen

584 594 

585Schicken Sie einen lang laufenden Befehl oder Subagenten in den Hintergrund und überprüfen Sie ihn dann über das Eingabefeld.595Schicken Sie einen lang laufenden Befehl oder Subagenten in den Hintergrund und überprüfen Sie ihn dann über das Eingabefeld.


633| Insert @-Mention Reference | `Option+K` (Mac) / `Alt+K` (Windows/Linux) | Einen Verweis auf die aktuelle Datei und Auswahl einfügen (erfordert, dass der Editor fokussiert ist) |643| Insert @-Mention Reference | `Option+K` (Mac) / `Alt+K` (Windows/Linux) | Einen Verweis auf die aktuelle Datei und Auswahl einfügen (erfordert, dass der Editor fokussiert ist) |

634| Accept Change at Cursor | - | Die Änderung an der Cursorposition annehmen, während Sie [eine vorgeschlagene Bearbeitung](#get-started) Änderung für Änderung prüfen. Erfordert Claude Code v2.1.275 oder höher |644| Accept Change at Cursor | - | Die Änderung an der Cursorposition annehmen, während Sie [eine vorgeschlagene Bearbeitung](#get-started) Änderung für Änderung prüfen. Erfordert Claude Code v2.1.275 oder höher |

635| Reject Change at Cursor | - | Die Änderung an der Cursorposition rückgängig machen, während Sie eine vorgeschlagene Bearbeitung Änderung für Änderung prüfen. Erfordert Claude Code v2.1.275 oder höher |645| Reject Change at Cursor | - | Die Änderung an der Cursorposition rückgängig machen, während Sie eine vorgeschlagene Bearbeitung Änderung für Änderung prüfen. Erfordert Claude Code v2.1.275 oder höher |

636| Toggle Focus view | `Ctrl+Option+F` (Mac) / `Ctrl+Alt+F` (Windows/Linux) | Tool-Aktivität in der Konversation aus- oder einblenden. Funktioniert, solange ein Claude-Bereich oder die Seitenleiste sichtbar ist. Erfordert Claude Code v2.1.221 oder höher |646| Toggle Focus view | `Ctrl+Option+F` (Mac) / `Ctrl+Alt+F` (Windows/Linux) | Tool-Aktivität in der Konversation aus- oder einblenden. Funktioniert, solange ein Claude-Bereich oder die Seitenleiste sichtbar ist. Unter Windows/Linux öffnet `Ctrl+Alt+F` stattdessen die Suche von VS Code, wenn der Fokus in der Debugkonsole oder in einer durchsuchbaren Liste wie dem Explorer liegt. Fokussieren Sie einen Editor oder den Claude-Bereich und drücken Sie die Tastenkombination erneut. Erfordert Claude Code v2.1.221 oder höher |

637| Rename Session Tab | - | Die Sitzung im aktiven Claude-Tab umbenennen. Erfordert Claude Code v2.1.257 oder höher |647| Rename Session Tab | - | Die Sitzung im aktiven Claude-Tab umbenennen. Erfordert Claude Code v2.1.257 oder höher |

638| Add Session Tab to Group | - | Die Sitzung im aktiven Claude-Tab zu einer [Sitzungsgruppe](#organize-sessions-into-groups) hinzufügen, die Sie auswählen oder erstellen. Erfordert Claude Code v2.1.257 oder höher |648| Add Session Tab to Group | - | Die Sitzung im aktiven Claude-Tab zu einer [Sitzungsgruppe](#organize-sessions-into-groups) hinzufügen, die Sie auswählen oder erstellen. Erfordert Claude Code v2.1.257 oder höher |

639| Mark Session as Unread | - | Die Sitzung im aktiven Claude-Tab in der Sitzungsliste als ungelesen markieren. Erfordert Claude Code v2.1.257 oder höher |649| Mark Session as Unread | - | Die Sitzung im aktiven Claude-Tab in der Sitzungsliste als ungelesen markieren. Erfordert Claude Code v2.1.257 oder höher |


679| Parameter | Beschreibung |689| Parameter | Beschreibung |

680| - | - |690| - | - |

681| `prompt` | Text, der im Prompt-Feld vorausgefüllt wird. Muss URL-codiert sein. Der Prompt wird vorausgefüllt, aber nicht automatisch abgesendet. |691| `prompt` | Text, der im Prompt-Feld vorausgefüllt wird. Muss URL-codiert sein. Der Prompt wird vorausgefüllt, aber nicht automatisch abgesendet. |

682| `session` | Eine Sitzungs-ID, die fortgesetzt werden soll, anstatt eine neue Konversation zu starten. Die Sitzung muss zum Arbeitsbereich gehören, der aktuell in VS Code geöffnet ist. Wird die Sitzung nicht gefunden, startet stattdessen eine neue Konversation. Ist die Sitzung bereits in einem Tab geöffnet, wird dieser Tab fokussiert. Wie Sie eine Sitzungs-ID programmgesteuert ermitteln, erfahren Sie unter [Konversationen fortsetzen](https://code.claude.com/docs/de/headless.md#continue-conversations). |692| `session` | ID einer fortzusetzenden Sitzung aus dem Ordner, der in VS Code geöffnet ist. Mit Claude Code v2.1.300 oder höher wird auch eine Sitzung aus dem Haupt-Checkout oder einem [Worktree](https://code.claude.com/docs/de/worktrees.md) des Repositorys dieses Ordners fortgesetzt. Wird die Sitzung nicht gefunden, startet stattdessen eine neue Konversation. Ist die Sitzung bereits in einem Tab geöffnet, wird dieser Tab fokussiert. Wie Sie eine Sitzungs-ID programmgesteuert ermitteln, erfahren Sie unter [Konversationen fortsetzen](https://code.claude.com/docs/de/headless.md#continue-conversations). |

683 693 

684Um beispielsweise einen Tab zu öffnen, der mit „review my changes“ vorausgefüllt ist:694Um beispielsweise einen Tab zu öffnen, der mit „review my changes“ vorausgefüllt ist:

685 695 


916| `Claude Code process exited with code 1` oder ein anderer Code | [Claude Code process exited with code N](https://code.claude.com/docs/de/errors.md#claude-code-process-exited-with-code-n) |926| `Claude Code process exited with code 1` oder ein anderer Code | [Claude Code process exited with code N](https://code.claude.com/docs/de/errors.md#claude-code-process-exited-with-code-n) |

917| `Could not locate the Claude CLI on PATH` | [Could not locate the Claude CLI on PATH](https://code.claude.com/docs/de/errors.md#could-not-locate-the-claude-cli-on-path) |927| `Could not locate the Claude CLI on PATH` | [Could not locate the Claude CLI on PATH](https://code.claude.com/docs/de/errors.md#could-not-locate-the-claude-cli-on-path) |

918| `The connection to Claude Code ended before this message completed` | [The connection to Claude Code ended before this message completed](https://code.claude.com/docs/de/errors.md#the-connection-to-claude-code-ended-before-this-message-completed) |928| `The connection to Claude Code ended before this message completed` | [The connection to Claude Code ended before this message completed](https://code.claude.com/docs/de/errors.md#the-connection-to-claude-code-ended-before-this-message-completed) |

929| `The Claude Code program for this computer, the <build> build, could not be found` | [The Claude Code program for this computer could not be found](https://code.claude.com/docs/de/errors.md#the-claude-code-program-for-this-computer-could-not-be-found) |

919| `claude` wird im integrierten Terminal von VS Code nicht gefunden | [CLI in VS Code ausführen](#run-cli-in-vs-code) |930| `claude` wird im integrierten Terminal von VS Code nicht gefunden | [CLI in VS Code ausführen](#run-cli-in-vs-code) |

920 931 

921### Erweiterung lässt sich nicht installieren932### Erweiterung lässt sich nicht installieren

web-quickstart.md +26 −26

Details

124 124 

125Um das Token selbst ungültig zu machen, widerrufen Sie es auf GitHub. Wenn Sie sich bei `gh` über den Browser angemeldet haben, gehört das Token zum Eintrag **GitHub CLI** unter [**Einstellungen > Anwendungen > Autorisierte OAuth-Apps**](https://github.com/settings/applications) auf GitHub, und das Widerrufen dieses Eintrags meldet auch die GitHub CLI auf Ihren Maschinen ab. Cloud-Sitzungen verlieren dann den GitHub-Zugriff, bis Sie `gh auth login` und `/web-setup` erneut ausführen.125Um das Token selbst ungültig zu machen, widerrufen Sie es auf GitHub. Wenn Sie sich bei `gh` über den Browser angemeldet haben, gehört das Token zum Eintrag **GitHub CLI** unter [**Einstellungen > Anwendungen > Autorisierte OAuth-Apps**](https://github.com/settings/applications) auf GitHub, und das Widerrufen dieses Eintrags meldet auch die GitHub CLI auf Ihren Maschinen ab. Cloud-Sitzungen verlieren dann den GitHub-Zugriff, bis Sie `gh auth login` und `/web-setup` erneut ausführen.

126 126 

127## Starten Sie eine Aufgabe127## Eine Aufgabe starten

128 128 

129Mit GitHub verbunden und einer erstellten Umgebung können Sie Aufgaben übermitteln.129Sobald GitHub verbunden und eine Umgebung erstellt ist, können Sie Aufgaben einreichen.

130 130 

131**1. Wählen Sie ein Repository und einen Branch**131**1. Repository und Branch auswählen**

132 132 

133Von [claude.ai/code](https://claude.ai/code) oder der Code-Registerkarte in der Claude-Mobilanwendung klicken Sie auf den Repository-Selector unter dem Eingabefeld und wählen Sie ein Repository aus, in dem Claude arbeiten soll. Sie können mehrere Repositorys hinzufügen, um in einer Sitzung über sie hinweg zu arbeiten.133Klicken Sie auf [claude.ai/code](https://claude.ai/code) oder im Code-Tab der Claude-Mobile-App auf die Repository-Auswahl unterhalb des Eingabefelds und wählen Sie ein Repository aus, in dem Claude arbeiten soll. Sie können mehrere Repositorys hinzufügen, um in einer Sitzung über mehrere hinweg zu arbeiten.

134 134 

135Um Claude unter claude.ai/code von einem Feature-Branch anstelle des Standards zu starten, ändern Sie den Branch im Steuerelement nach dem Repository-Selector.135Wenn Claude auf claude.ai/code von einem Feature-Branch statt vom Standard-Branch aus starten soll, ändern Sie den Branch im Steuerelement nach der Repository-Auswahl.

136 136 

137**2. Wählen Sie einen Berechtigungsmodus**137**2. Berechtigungsmodus wählen**

138 138 

139Das [Steuerelement für den Berechtigungsmodus](https://code.claude.com/docs/de/permission-modes.md#switch-permission-modes) zeigt den Berechtigungsmodus, in dem die Sitzung ausgeführt wird:139Das [Steuerelement für den Berechtigungsmodus](https://code.claude.com/docs/de/permission-modes.md#switch-permission-modes) zeigt den Berechtigungsmodus an, in dem die Sitzung ausgeführt wird:

140 140 

141* **Auto**: Ein Klassifizierer überprüft Claudes Aktionen, anstatt Sie zu fragen. Wird angezeigt, wenn Ihre Organisation den Auto-Modus zulässt und das ausgewählte Modell ihn unterstützt141* **Auto**: Ein Klassifikator prüft die Aktionen von Claude, anstatt Sie zu fragen. Wird angezeigt, wenn Ihre Organisation den Auto-Modus erlaubt und das ausgewählte Modell ihn unterstützt

142* **Änderungen akzeptieren**: Claude nimmt Änderungen vor und pusht einen Branch, ohne auf Genehmigung zu warten142* **Accept edits**: Claude nimmt Änderungen vor und pusht einen Branch, ohne für eine Genehmigung anzuhalten

143* **Plan**: Claude schlägt einen Ansatz vor und wartet auf Ihre Genehmigung, bevor Dateien bearbeitet werden143* **Plan**: Claude schlägt einen Ansatz vor und wartet, bis Sie ihn genehmigen, bevor Dateien bearbeitet werden

144 144 

145Cloud-Sitzungen bieten keine Manual- oder Bypass-Berechtigungen. Siehe die [vollständige Liste der Berechtigungsmodi](https://code.claude.com/docs/de/permission-modes.md#available-modes) für das, was jeder Modus erlaubt.145Cloud-Sitzungen bieten weder Manual noch Bypass permissions. In der [vollständigen Liste der Berechtigungsmodi](https://code.claude.com/docs/de/permission-modes.md#available-modes) sehen Sie, was jeder einzelne Modus erlaubt.

146 146 

147**3. Beschreiben Sie die Aufgabe und übermitteln Sie sie**147**3. Aufgabe beschreiben und einreichen**

148 148 

149Geben Sie eine Beschreibung dessen ein, was Sie möchten, und drücken Sie die Eingabetaste. Seien Sie spezifisch:149Geben Sie eine Beschreibung dessen ein, was Sie möchten, und drücken Sie Enter. Seien Sie konkret:

150 150 

151* Nennen Sie die Datei oder Funktion: „Fügen Sie eine README mit Setup-Anweisungen hinzu“ oder „Beheben Sie den fehlgeschlagenen Auth-Test in `tests/test_auth.py`“ ist besser als „Tests beheben“151* Nennen Sie die Datei oder Funktion: „Füge eine README mit Einrichtungsanweisungen hinzu“ oder „Behebe den fehlschlagenden Auth-Test in `tests/test_auth.py`“ ist besser als „Tests reparieren“

152* Fügen Sie Fehlerausgabe ein, falls vorhanden152* Fügen Sie die Fehlerausgabe ein, falls vorhanden

153* Beschreiben Sie das erwartete Verhalten, nicht nur das Symptom153* Beschreiben Sie das erwartete Verhalten, nicht nur das Symptom

154 154 

155Claude klont die Repositories, führt Ihr Setup-Skript aus, falls konfiguriert, und beginnt zu arbeiten. Jede Aufgabe erhält ihre eigene Sitzung und ihren eigenen Branch, sodass Sie nicht warten müssen, bis eine fertig ist, bevor Sie eine andere starten.155Claude klont die Repositorys, führt Ihr Setup-Skript aus, sofern konfiguriert, und beginnt mit der Arbeit. Jede Aufgabe erhält ihre eigene Sitzung und ihren eigenen Branch, sodass Sie nicht warten müssen, bis eine Aufgabe abgeschlossen ist, bevor Sie eine weitere starten.

156 156 

157## Sitzungen vorausfüllen157## Sitzungen vorausfüllen

158 158 


173 173 

174## Überprüfen und iterieren174## Überprüfen und iterieren

175 175 

176Wenn Claude fertig ist, überprüfen Sie die Änderungen, hinterlassen Sie Feedback zu bestimmten Zeilen und fahren Sie fort, bis der Diff richtig aussieht.176Wenn Claude fertig ist, überprüfen Sie die Änderungen, hinterlassen Feedback zu bestimmten Zeilen und machen weiter, bis der Diff stimmt.

177 177 

178**1. Öffnen Sie die Diff-Ansicht**178**1. Diff-Ansicht öffnen**

179 179 

180Nachdem Claude seine Änderungen in einen Branch gepusht hat, zeigt die Karte **Changes** im Bereich neben dem Chat die über die Sitzung hinweg hinzugefügten und entfernten Zeilen an, z. B. `+42 -18`. Klicken Sie auf diese Zahlen, um die Diff-Ansicht zu öffnen.180Nachdem Claude seine Änderungen in einen Branch gepusht hat, zeigt die Karte **Changes** im Bereich neben dem Chat die über die Sitzung hinzugefügten und entfernten Zeilen an, zum Beispiel `+42 -18`. Klicken Sie auf diese Zahlen, um die Diff-Ansicht zu öffnen.

181 181 

182* Sie können auch in der Titelleiste der Sitzung oder im **⋮**-Menü der Leiste auf **Changes** klicken.182* Sie können auch in der Titelleiste der Sitzung oder im **⋮**-Menü der Leiste auf **Changes** klicken.

183* Um den Bereich anzuzeigen, wenn er ausgeblendet ist, klicken Sie in der Titelleiste der Sitzung oder im **⋮**-Menü der Leiste auf das Symbol **Show session rail**.183* Um den Bereich anzuzeigen, wenn er ausgeblendet ist, klicken Sie in der Titelleiste der Sitzung oder im **⋮**-Menü der Leiste auf das Symbol **Show session rail**.

184 184 

185Der Diff vergleicht die Änderungen der Sitzung standardmäßig mit ihrem Basis-Branch. Um gegen einen anderen Branch zu vergleichen, wählen Sie **Compare against** und wählen Sie einen aus. Beim Vergleich mit dem Basis-Branch kann der Diff [Änderungen auslassen, die noch nicht gepusht wurden](https://code.claude.com/docs/de/claude-code-on-the-web.md#troubleshoot-a-missing-file-in-the-diff-view).185Der Diff vergleicht die Änderungen der Sitzung standardmäßig mit ihrem Basis-Branch. Um mit einem anderen Branch zu vergleichen, wählen Sie **Compare against** und dann einen Branch aus. Beim Vergleich mit dem Basis-Branch kann der Diff [Änderungen auslassen, die noch nicht gepusht wurden](https://code.claude.com/docs/de/claude-code-on-the-web.md#troubleshoot-a-missing-file-in-the-diff-view).

186 186 

187**2. Hinterlassen Sie Inline-Kommentare**187**2. Inline-Kommentare hinterlassen**

188 188 

189Bewegen Sie den Mauszeiger über eine Zeile im Diff und klicken Sie auf das **+**, das neben der Zeilennummer erscheint, um ein Kommentarfeld zu öffnen. Geben Sie dann Ihr Feedback ein und drücken Sie die Eingabetaste. Kommentare werden in die Warteschlange eingereiht, bis Sie Ihre nächste Nachricht senden, dann werden sie damit gebündelt. Claude sieht „bei `src/auth.ts:47`, den Fehler hier nicht abfangen“ neben Ihrer Hauptanweisung, sodass Sie nicht beschreiben müssen, wo das Problem liegt.189Fahren Sie mit der Maus über eine Zeile im Diff und klicken Sie auf das **+**, das neben der Zeilennummer erscheint, um ein Kommentarfeld zu öffnen. Geben Sie dann Ihr Feedback ein und drücken Sie Enter. Kommentare werden gesammelt, bis Sie Ihre nächste Nachricht senden, und dann zusammen mit ihr übermittelt. Claude sieht „bei `src/auth.ts:47` den Fehler hier nicht abfangen“ zusammen mit Ihrer Hauptanweisung, sodass Sie nicht beschreiben müssen, wo das Problem liegt.

190 190 

191**3. Erstellen Sie einen Pull Request**191**3. Pull Request erstellen**

192 192 

193Wenn der Diff richtig aussieht, [blenden Sie den Bereich wieder ein](https://code.claude.com/docs/de/claude-code-on-the-web.md#review-changes), falls die Karte **Changes** nicht sichtbar ist, und erstellen Sie dann über die Karte einen Pull Request oder einen Entwurf:193Wenn der Diff stimmt, [zeigen Sie den Bereich wieder an](https://code.claude.com/docs/de/claude-code-on-the-web.md#review-changes), falls die Karte **Changes** nicht sichtbar ist, und erstellen Sie dann über die Karte einen Pull Request oder einen Entwurf:

194 194 

195* Klicken Sie auf **Create PR**. Claude Code erstellt den Pull Request mit einem generierten Titel und einer generierten Beschreibung.195* Klicken Sie auf **Create PR**. Claude Code erstellt den Pull Request mit einem generierten Titel und einer generierten Beschreibung.

196* Um stattdessen einen Entwurf zu öffnen, klicken Sie mit der rechten Maustaste auf **Create PR**, wählen Sie **Create draft PR**, um die Funktion der Schaltfläche zu ändern, und klicken Sie dann auf die Schaltfläche196* Um stattdessen einen Entwurf zu öffnen, klicken Sie mit der rechten Maustaste auf **Create PR**, wählen Sie **Create draft PR**, um die Funktion der Schaltfläche zu ändern, und klicken Sie dann auf die Schaltfläche

197 197 

198**4. Fahren Sie nach dem PR mit der Iteration fort**198**4. Nach dem PR weiter iterieren**

199 199 

200Die Sitzung bleibt nach der Erstellung des PR aktiv. Fügen Sie CI-Fehlerausgabe oder Reviewer-Kommentare in den Chat ein und bitten Sie Claude, sie zu beheben. Um Claude den PR automatisch überwachen zu lassen, siehe [Auto-fix Pull Requests](https://code.claude.com/docs/de/claude-code-on-the-web.md#auto-fix-pull-requests).200Die Sitzung bleibt nach der Erstellung des PR aktiv. Fügen Sie die Ausgabe von CI-Fehlern oder Kommentare von Reviewern in den Chat ein und bitten Sie Claude, diese zu bearbeiten. Damit Claude den PR automatisch überwacht, lesen Sie [Pull Requests automatisch korrigieren](https://code.claude.com/docs/de/claude-code-on-the-web.md#auto-fix-pull-requests).

201 201 

202## Beheben Sie Setup-Probleme202## Beheben Sie Setup-Probleme

203 203 

whats-new.md +1 −1

Details

174 174 

175**Agent-Ansicht**: `claude agents` öffnet einen Bildschirm für jede Claude Code-Sitzung und zeigt, was läuft, was auf Sie wartet und was erledigt ist.175**Agent-Ansicht**: `claude agents` öffnet einen Bildschirm für jede Claude Code-Sitzung und zeigt, was läuft, was auf Sie wartet und was erledigt ist.

176 176 

177Auch diese Woche: **`/goal`** hält Claude über mehrere Durchläufe hinweg arbeiten, bis eine Abschlussbedingung erfüllt ist; **Fast-Modus** läuft jetzt standardmäßig auf Opus 4.7; und das **Rewind-Menü** kann früheren Kontext mit „Zusammenfassen bis hier" komprimieren.177Auch diese Woche: **`/goal`** hält Claude über mehrere Durchläufe hinweg arbeiten, bis eine Abschlussbedingung erfüllt ist; **Fast-Modus** läuft jetzt standardmäßig auf Opus 4.7; und das **Rewind-Menü** kann früheren Kontext mit „Zusammenfassen bis hier“ komprimieren.

178 178 

179[Lesen Sie die Woche-20-Zusammenfassung →](https://code.claude.com/docs/de/whats-new/2026-w20.md)179[Lesen Sie die Woche-20-Zusammenfassung →](https://code.claude.com/docs/de/whats-new/2026-w20.md)

180 180 

Details

4 4 

5# Woche 13 · 23.–27. März 20265# Woche 13 · 23.–27. März 2026

6 6 

7> Auto-Modus für freihändige Berechtigungen, integrierte Computersteuerung, PR-Auto-Fix in der Cloud, Transkriptsuche und ein PowerShell-Tool für Windows.7> Auto-Modus für Berechtigungen ohne Eingreifen, integrierte Computernutzung, PR-Auto-Fix in der Cloud, Transkript-Suche und ein PowerShell-Tool für Windows.

8 8 

9Releases [v2.1.83 → v2.1.85](https://code.claude.com/docs/en/changelog.md#2-1-83)9Releases [v2.1.83 → v2.1.85](https://code.claude.com/docs/en/changelog.md#2-1-83)

106 Funktionen · 23.–27. März106 Funktionen · 23.–27. März

11 11 

12Auto-Modus12Auto-Modus

13Forschungsvorschau13Research Preview

14 14 

15Der Auto-Modus übergibt Ihre Berechtigungsaufforderungen an einen Klassifizierer. Sichere Bearbeitungen und Befehle werden ohne Unterbrechung ausgeführt; alles Destruktive oder Verdächtige wird blockiert und angezeigt. Es ist der Mittelweg zwischen der Genehmigung jedes Dateischreibvorgangs und dem Ausführen mit `--dangerously-skip-permissions`.15Der Auto-Modus übergibt Ihre Berechtigungsabfragen an einen Klassifikator. Sichere Bearbeitungen und Befehle werden ohne Unterbrechung ausgeführt; alles Destruktive oder Verdächtige wird blockiert und Ihnen angezeigt. Er ist der Mittelweg zwischen dem Bestätigen jedes einzelnen Dateischreibvorgangs und der Ausführung mit `--dangerously-skip-permissions`.

16 16 

17![Claude Code-Eingabeaufforderungsfußzeile mit dem Indikator 'Auto-Modus aktiviert (Umschalt+Tab zum Wechseln)' in Gelb](https://mintcdn.com/claude-code/CfffsX01JHFnIKvD/images/whats-new/auto-mode.png?fit=max\&auto=format\&n=CfffsX01JHFnIKvD\&q=85\&s=367c9e9d4ba5bc57ec4b935154bf1fbb)17![Fußzeile des Claude Code-Eingabefelds mit der gelben Anzeige 'auto mode on (shift+tab to cycle)'](https://mintcdn.com/claude-code/CfffsX01JHFnIKvD/images/whats-new/auto-mode.png?fit=max\&auto=format\&n=CfffsX01JHFnIKvD\&q=85\&s=367c9e9d4ba5bc57ec4b935154bf1fbb)

18 18 

19Wechseln Sie mit Umschalt+Tab zum Auto-Modus, oder legen Sie ihn als Standard fest:19Wechseln Sie mit Shift+Tab in den Auto-Modus oder legen Sie ihn als Standard fest:

20 20 

21```json ~/.claude/settings.json {3} theme={null}21```json ~/.claude/settings.json {3} theme={null}

22{22{


26}26}

27```27```

28 28 

29[Leitfaden für Berechtigungsmodi](https://code.claude.com/docs/de/permission-modes.md)29[Leitfaden zu Berechtigungsmodi](https://code.claude.com/docs/de/permission-modes.md)

30 30 

31Computersteuerung31Computernutzung

32Desktop32Desktop

33 33 

34Claude kann jetzt Ihren tatsächlichen Desktop über die Claude Code Desktop-App steuern: native Apps öffnen, durch den iOS-Simulator klicken, Hardware-Kontrollpanels bedienen und Änderungen auf dem Bildschirm überprüfen. Dies ist standardmäßig deaktiviert und fragt vor jeder Aktion. Am besten für Dinge, die nichts anderes erreichen kann: Apps ohne API, proprietäre Tools, alles, das nur als GUI existiert.34Claude kann jetzt aus der Claude Code Desktop-App heraus Ihren tatsächlichen Desktop steuern: native Apps öffnen, sich durch den iOS-Simulator klicken, Hardware-Bedienfelder bedienen und Änderungen auf dem Bildschirm überprüfen. Die Funktion ist standardmäßig deaktiviert und fragt vor jeder Aktion nach. Am besten geeignet für Dinge, die sonst nicht erreichbar sind: Apps ohne API, proprietäre Tools und alles, was nur als GUI existiert.

35 35 

36![Claude Desktop-Einstellungen mit aktiviertem Computersteuerungs-Toggle, das die Option zeigt, Claude Screenshots machen und Ihre Tastatur und Maus in Apps steuern zu lassen, die Sie zulassen](https://mintcdn.com/claude-code/CfffsX01JHFnIKvD/images/whats-new/computer-use.png?fit=max\&auto=format\&n=CfffsX01JHFnIKvD\&q=85\&s=d631de2017edafff463505f8ddbc0f51)36![Claude Desktop-Einstellungen mit aktiviertem Schalter für Computernutzung, der die Option zeigt, Claude Screenshots erstellen und Tastatur und Maus in von Ihnen erlaubten Apps steuern zu lassen](https://mintcdn.com/claude-code/CfffsX01JHFnIKvD/images/whats-new/computer-use.png?fit=max\&auto=format\&n=CfffsX01JHFnIKvD\&q=85\&s=d631de2017edafff463505f8ddbc0f51)

37 37 

38Aktivieren Sie es in den Einstellungen, gewähren Sie die Betriebssystem-Berechtigungen, und bitten Sie Claude dann, eine Änderung von Anfang bis Ende zu überprüfen:38Aktivieren Sie die Funktion in den Einstellungen, erteilen Sie die Betriebssystemberechtigungen und bitten Sie Claude dann, eine Änderung von Anfang bis Ende zu überprüfen:

39 39 

40```text title="Claude Code" wrap theme={null}40```text title="Claude Code" wrap theme={null}

41Open the iOS simulator, tap through the onboarding flow, and screenshot each step41Open the iOS simulator, tap through the onboarding flow, and screenshot each step

42```42```

43 43 

44[Leitfaden zur Computersteuerung](https://code.claude.com/docs/de/desktop.md#let-claude-use-your-computer)44[Leitfaden zur Computernutzung](https://code.claude.com/docs/de/desktop.md#let-claude-use-your-computer)

45 45 

46PR-Auto-Fix46PR-Auto-Fix

47Web47Web

48 48 

49Schalten Sie einen Schalter um, wenn Sie einen PR öffnen, und gehen Sie weg. Claude überwacht CI, behebt die Fehler, kümmert sich um die Kleinigkeiten und pusht, bis es grün ist. Kein Babysitting mehr für einen PR durch sechs Runden von Lint-Fehlern.49Legen Sie beim Öffnen eines PR einen Schalter um und kümmern Sie sich um anderes. Claude beobachtet die CI, behebt die Fehler, erledigt die Kleinigkeiten und pusht, bis alles grün ist. Sie müssen einen PR nicht mehr durch sechs Runden Lint-Fehler begleiten.

50 50 

51![Claude Code Web-CI-Panel mit aktiviertem Auto-Fix-Toggle und der Beschreibung 'Proaktiv CI-Fehler und Review-Kommentare beheben'](https://mintcdn.com/claude-code/CfffsX01JHFnIKvD/images/whats-new/auto-fix.png?fit=max\&auto=format\&n=CfffsX01JHFnIKvD\&q=85\&s=c62b181c6c5d96929f0b43525f9f3584)51![CI-Bereich von Claude Code im Web mit aktiviertem Auto-fix-Schalter und der Beschreibung 'Proactively fix CI failures and review comments'](https://mintcdn.com/claude-code/CfffsX01JHFnIKvD/images/whats-new/auto-fix.png?fit=max\&auto=format\&n=CfffsX01JHFnIKvD\&q=85\&s=c62b181c6c5d96929f0b43525f9f3584)

52 52 

53Schalten Sie nach dem Erstellen eines PR auf Claude Code Web den Auto-Fix im CI-Panel um.53Nachdem Sie einen PR in Claude Code im Web erstellt haben, aktivieren Sie Auto fix im CI-Bereich.

54 54 

55[Auto-Fix für Pull Requests](https://code.claude.com/docs/de/claude-code-on-the-web.md#auto-fix-pull-requests)55[Pull Requests automatisch korrigieren](https://code.claude.com/docs/de/claude-code-on-the-web.md#auto-fix-pull-requests)

56 56 

57Transkriptsuche57Transkript-Suche

58v2.1.8358v2.1.83

59 59 

60Drücken Sie `/` im Transkriptmodus, um Ihre Konversation zu durchsuchen. `n` und `N` durchlaufen die Treffer. Endlich eine Möglichkeit, diesen einen Bash-Befehl zu finden, den Claude vor 400 Nachrichten ausgeführt hat.60Drücken Sie `/` im Transkriptmodus, um Ihre Konversation zu durchsuchen. Mit `n` und `N` springen Sie zwischen den Treffern. Endlich eine Möglichkeit, den einen Bash-Befehl zu finden, den Claude vor 400 Nachrichten ausgeführt hat.

61 61 

62Öffnen Sie den Transkriptmodus und suchen Sie:62Öffnen Sie den Transkriptmodus und suchen Sie:

63 63 


68N # previous match68N # previous match

69```69```

70 70 

71[Leitfaden für Vollbildmodus](https://code.claude.com/docs/de/fullscreen.md#search-and-review-the-conversation)71[Leitfaden zum Vollbildmodus](https://code.claude.com/docs/de/fullscreen.md#search-and-review-the-conversation)

72 72 

73PowerShell-Tool73PowerShell-Tool

74Vorschau74Preview

75v2.1.8475v2.1.84

76 76 

77Windows erhält ein natives PowerShell-Tool neben Bash. Claude kann Cmdlets ausführen, Objekte pipen und mit Windows-nativen Pfaden arbeiten, ohne alles durch Git Bash zu übersetzen.77Windows erhält neben Bash ein natives PowerShell-Tool. Claude kann Cmdlets ausführen, Objekte per Pipe weitergeben und mit Windows-nativen Pfaden arbeiten, ohne alles über Git Bash übersetzen zu müssen.

78 78 

79Aktivieren Sie es in den Einstellungen:79Aktivieren Sie es in den Einstellungen:

80 80 


86}86}

87```87```

88 88 

89[PowerShell-Tool-Dokumentation](https://code.claude.com/docs/de/tools-reference.md#powershell-tool)89[Dokumentation zum PowerShell-Tool](https://code.claude.com/docs/de/tools-reference.md#powershell-tool)

90 90 

91Bedingte Hooks91Bedingte Hooks

92v2.1.8592v2.1.85

93 93 

94Hooks können jetzt ein `if`-Feld mit Berechtigungsregelsyntax deklarieren. Ihre Pre-Commit-Prüfung wird nur für `Bash(git commit *)` ausgelöst, anstatt für jeden Bash-Aufruf, was den Prozess-Overhead bei aktiven Sitzungen reduziert.94Hooks können jetzt ein `if`-Feld mit der Syntax von Berechtigungsregeln deklarieren. Ihre Pre-Commit-Prüfung wird nur für `Bash(git commit *)` gestartet statt bei jedem Bash-Aufruf, was den Prozess-Overhead in stark ausgelasteten Sitzungen reduziert.

95 95 

96Beschränken Sie einen Hook nur auf Git-Commits:96Beschränken Sie einen Hook nur auf Git-Commits:

97 97 


113 113 

114Weitere Verbesserungen114Weitere Verbesserungen

115 115 

116Plugin `userConfig` jetzt öffentlich: Einstellungen bei der Aktivierung abfragen, Keychain-gestützte GeheimnisseEingefügte Bilder fügen `[Image #N]`-Chips ein, auf die Sie sich positionell beziehen können`managed-settings.d/` Drop-in-Verzeichnis für geschichtete Richtlinienfragmente`CwdChanged` und `FileChanged` Hook-Ereignisse für direnv-ähnliche SetupsAgents können `initialPrompt` in der Frontmatter deklarieren, um einen ersten Turn automatisch einzureichen`Ctrl+X Ctrl+E` öffnet Ihren externen Editor, passend zu readlineDas Unterbrechen vor einer Antwort stellt Ihre Eingabe automatisch wieder her`/status` funktioniert jetzt, während Claude antwortetDeep Links öffnen sich in Ihrem bevorzugten Terminal, nicht im ersten erkanntenIdle-Return-Nudge zu `/clear` nach 75+ Minuten AbwesenheitVS Code: Rate-Limit-Banner, Esc-zweimal Rewind-Picker116Plugin-`userConfig` jetzt öffentlich: Abfrage von Einstellungen beim Aktivieren, im Schlüsselbund gespeicherte SecretsEingefügte Bilder fügen `[Image #N]`-Chips ein, auf die Sie über ihre Position verweisen können`managed-settings.d/`-Drop-in-Verzeichnis für geschichtete RichtlinienfragmenteHook-Events `CwdChanged` und `FileChanged` für Setups im Stil von direnvAgenten können `initialPrompt` im Frontmatter deklarieren, um einen ersten Turn automatisch abzusenden`Ctrl+X Ctrl+E` öffnet Ihren externen Editor, wie bei readlineEine Unterbrechung vor jeglicher Antwort stellt Ihre Eingabe automatisch wieder her`/status` funktioniert jetzt, während Claude antwortetDeep Links werden in Ihrem bevorzugten Terminal geöffnet, nicht im zuerst erkanntenHinweis auf `/clear` bei Rückkehr nach mehr als 75 Minuten InaktivitätVS Code: Banner für Rate-Limits, Rewind-Auswahl per zweimaligem Esc

117 117 

118[Vollständiges Changelog für v2.1.83–v2.1.85 →](https://code.claude.com/docs/en/changelog.md#2-1-83)118[Vollständiges Changelog für v2.1.83–v2.1.85 →](https://code.claude.com/docs/en/changelog.md#2-1-83)

Details

75 75 

76Weitere Verbesserungen76Weitere Verbesserungen

77 77 

78Fokus-Ansicht: Drücken Sie `Ctrl+O` im flimmerfreien Modus, um die Ansicht auf Ihren letzten Prompt, eine einzeilige Tool-Zusammenfassung mit Diffstats und Claudes endgültige Antwort zu reduzierenGeführte [Amazon Bedrock](https://code.claude.com/docs/de/amazon-bedrock.md)- und [Google Cloud's Agent Platform](https://code.claude.com/docs/de/google-vertex-ai.md)-Setup-Assistenten auf dem Anmeldebildschirm: Wählen Sie „3rd-party platform" für schrittweise Authentifizierung, Region, Anmeldedaten-Überprüfung und Modell-Pinning`/agents` erhält ein Tabbed-Layout: Ein Running-Tab zeigt Live-Subagents mit einer `● N running`-Anzeige sowie Run agent und View running instance-Aktionen im Library-TabDie Standard-Anstrengungsstufe ist jetzt `high` für API-Key-, Amazon Bedrock-, Google Cloud's Agent Platform-, Microsoft Foundry-, Team- und Enterprise-Benutzer (steuern Sie mit `/effort`)`/cost` zeigt eine Pro-Modell- und Cache-Hit-Aufschlüsselung für Abonnement-Benutzer`/release-notes` ist jetzt ein interaktiver Versions-PickerStatuszeile: neue `refreshInterval`-Einstellung führt den Befehl alle N Sekunden erneut aus, und `workspace.git_worktree` in der JSON-Eingabe`CLAUDE_CODE_PERFORCE_MODE`: Edit/Write schlagen bei schreibgeschützten Dateien mit einem `p4 edit`-Hinweis fehl, anstatt stillschweigend zu überschreibenDer OS-CA-Zertifikatspeicher wird jetzt standardmäßig vertraut, sodass Enterprise-TLS-Proxys ohne zusätzliches Setup funktionieren (`CLAUDE_CODE_CERT_STORE=bundled` zum Deaktivieren)Amazon Bedrock powered by Mantle: Setzen Sie `CLAUDE_CODE_USE_MANTLE=1`Gehärtete Bash-Tool-Berechtigungen: Backslash-escaped Flags, Env-Var-Präfixe, `/dev/tcp`-Umleitungen und zusammengesetzte Befehle werden jetzt korrekt abgefragt`UserPromptSubmit`-Hooks können den Sitzungstitel über `hookSpecificOutput.sessionTitle` setzen78Fokus-Ansicht: Drücken Sie `Ctrl+O` im flimmerfreien Modus, um die Ansicht auf Ihren letzten Prompt, eine einzeilige Tool-Zusammenfassung mit Diffstats und Claudes endgültige Antwort zu reduzierenGeführte [Amazon Bedrock](https://code.claude.com/docs/de/amazon-bedrock.md)- und [Google Cloud's Agent Platform](https://code.claude.com/docs/de/google-vertex-ai.md)-Setup-Assistenten auf dem Anmeldebildschirm: Wählen Sie „3rd-party platform“ für schrittweise Authentifizierung, Region, Anmeldedaten-Überprüfung und Modell-Pinning`/agents` erhält ein Tabbed-Layout: Ein Running-Tab zeigt Live-Subagents mit einer `● N running`-Anzeige sowie Run agent und View running instance-Aktionen im Library-TabDie Standard-Anstrengungsstufe ist jetzt `high` für API-Key-, Amazon Bedrock-, Google Cloud's Agent Platform-, Microsoft Foundry-, Team- und Enterprise-Benutzer (steuern Sie mit `/effort`)`/cost` zeigt eine Pro-Modell- und Cache-Hit-Aufschlüsselung für Abonnement-Benutzer`/release-notes` ist jetzt ein interaktiver Versions-PickerStatuszeile: neue `refreshInterval`-Einstellung führt den Befehl alle N Sekunden erneut aus, und `workspace.git_worktree` in der JSON-Eingabe`CLAUDE_CODE_PERFORCE_MODE`: Edit/Write schlagen bei schreibgeschützten Dateien mit einem `p4 edit`-Hinweis fehl, anstatt stillschweigend zu überschreibenDer OS-CA-Zertifikatspeicher wird jetzt standardmäßig vertraut, sodass Enterprise-TLS-Proxys ohne zusätzliches Setup funktionieren (`CLAUDE_CODE_CERT_STORE=bundled` zum Deaktivieren)Amazon Bedrock powered by Mantle: Setzen Sie `CLAUDE_CODE_USE_MANTLE=1`Gehärtete Bash-Tool-Berechtigungen: Backslash-escaped Flags, Env-Var-Präfixe, `/dev/tcp`-Umleitungen und zusammengesetzte Befehle werden jetzt korrekt abgefragt`UserPromptSubmit`-Hooks können den Sitzungstitel über `hookSpecificOutput.sessionTitle` setzen

79 79 

80[Vollständiges Changelog für v2.1.92–v2.1.101 →](https://code.claude.com/docs/en/changelog.md#2-1-92)80[Vollständiges Changelog für v2.1.92–v2.1.101 →](https://code.claude.com/docs/en/changelog.md#2-1-92)

Details

56Mobile Push-Benachrichtigungen56Mobile Push-Benachrichtigungen

57mobile57mobile

58 58 

59Mit [Remote Control](https://code.claude.com/docs/de/remote-control.md) verbunden kann Claude eine Push-Benachrichtigung an Ihr Telefon senden, wenn eine lange Aufgabe abgeschlossen ist oder es eine Entscheidung braucht, um weiterzumachen. Aktivieren Sie es mit „Push, wenn Claude entscheidet" in `/config`, oder fordern Sie eine in Ihrem Prompt an. Nützlich, wenn Sie einen langen Agent-Lauf starten und sich vom Terminal entfernen möchten.59Mit [Remote Control](https://code.claude.com/docs/de/remote-control.md) verbunden kann Claude eine Push-Benachrichtigung an Ihr Telefon senden, wenn eine lange Aufgabe abgeschlossen ist oder es eine Entscheidung braucht, um weiterzumachen. Aktivieren Sie es mit „Push, wenn Claude entscheidet“ in `/config`, oder fordern Sie eine in Ihrem Prompt an. Nützlich, wenn Sie einen langen Agent-Lauf starten und sich vom Terminal entfernen möchten.

60 60 

61<video autoPlay muted loop playsInline src="https://mintcdn.com/claude-code/uII1TETOZxBUZ3lB/images/whats-new/push-notifications.mp4?fit=max&auto=format&n=uII1TETOZxBUZ3lB&q=85&s=c91a967139596500cbdb581a53822ac1" />61<video autoPlay muted loop playsInline src="https://mintcdn.com/claude-code/uII1TETOZxBUZ3lB/images/whats-new/push-notifications.mp4?fit=max&auto=format&n=uII1TETOZxBUZ3lB&q=85&s=c91a967139596500cbdb581a53822ac1" />

62 62 


84 84 

85Weitere Erfolge85Weitere Erfolge

86 86 

87Neuer [`/ultrareview`](https://code.claude.com/docs/de/ultrareview): umfassende Code-Überprüfung in der Cloud mit paralleler Multi-Agent-Analyse und einem gegnerischen Kritik-Pass. Führen Sie es ohne Argumente aus, um Ihren aktuellen Branch zu überprüfen, oder `/ultrareview <PR#>` für einen bestimmten PR[Auto-Modus](https://code.claude.com/docs/de/permission-modes.md#eliminate-prompts-with-auto-mode) ist jetzt für Max-Abonnenten auf Opus 4.7 verfügbar, und das Flag `--enable-auto-mode` ist nicht mehr erforderlich[Sitzungszusammenfassung](https://code.claude.com/docs/de/interactive-mode.md#session-recap) zeigt eine einzeilige Zusammenfassung dessen, was passiert ist, während Sie weg waren; führen Sie `/recap` bei Bedarf aus oder deaktivieren Sie es über `/config`Neuer `/tui`-Befehl und `tui`-Einstellung wechseln zwischen klassischem und flimmerfreiem Rendering während des Gesprächs; Fokusansicht wurde von `Ctrl+O` zu ihrem eigenen `/focus`-Befehl verschobenPlugins können Hintergrund-Watcher über einen Top-Level-`monitors`-Manifest-Schlüssel versenden, der sich beim Sitzungsstart oder beim Skill-Aufruf automatisch aktiviertOption „Auto (Terminal abgleichen)" in `/theme` folgt dem dunklen/hellen Modus Ihres Terminals`/fewer-permission-prompts` scannt Ihre Transkripte nach häufigen schreibgeschützten Bash- und MCP-Aufrufen und schlägt eine Allowlist für `.claude/settings.json` vorClaude kann jetzt integrierte Befehle wie `/init`, `/review` und `/security-review` über das Skill-Tool entdecken und ausführen`PreCompact`-Hooks können Komprimierung blockieren, indem sie mit Code 2 beendet werden oder `{"decision":"block"}` zurückgeben`ENABLE_PROMPT_CACHING_1H` aktiviert API-Schlüssel-, Amazon Bedrock-, Google Cloud Agent Platform- und Microsoft Foundry-Benutzer für 1-Stunden-Prompt-Cache-TTL`sandbox.network.deniedDomains`-Einstellung schneidet bestimmte Domains aus einem breiteren `allowedDomains`-Wildcard aus`/undo` ist jetzt ein Alias für `/rewind`, und `/proactive` ist ein Alias für `/loop`Gehärtete Bash-Berechtigungen: Deny-Regeln stimmen jetzt durch `env`/`sudo`/`watch`-Wrapper überein, und `Bash(find:*)`-Allow-Regeln genehmigen nicht mehr automatisch `-exec` oder `-delete`87Neuer [`/ultrareview`](https://code.claude.com/docs/de/ultrareview): umfassende Code-Überprüfung in der Cloud mit paralleler Multi-Agent-Analyse und einem gegnerischen Kritik-Pass. Führen Sie es ohne Argumente aus, um Ihren aktuellen Branch zu überprüfen, oder `/ultrareview <PR#>` für einen bestimmten PR[Auto-Modus](https://code.claude.com/docs/de/permission-modes.md#eliminate-prompts-with-auto-mode) ist jetzt für Max-Abonnenten auf Opus 4.7 verfügbar, und das Flag `--enable-auto-mode` ist nicht mehr erforderlich[Sitzungszusammenfassung](https://code.claude.com/docs/de/interactive-mode.md#session-recap) zeigt eine einzeilige Zusammenfassung dessen, was passiert ist, während Sie weg waren; führen Sie `/recap` bei Bedarf aus oder deaktivieren Sie es über `/config`Neuer `/tui`-Befehl und `tui`-Einstellung wechseln zwischen klassischem und flimmerfreiem Rendering während des Gesprächs; Fokusansicht wurde von `Ctrl+O` zu ihrem eigenen `/focus`-Befehl verschobenPlugins können Hintergrund-Watcher über einen Top-Level-`monitors`-Manifest-Schlüssel versenden, der sich beim Sitzungsstart oder beim Skill-Aufruf automatisch aktiviertOption „Auto (Terminal abgleichen)“ in `/theme` folgt dem dunklen/hellen Modus Ihres Terminals`/fewer-permission-prompts` scannt Ihre Transkripte nach häufigen schreibgeschützten Bash- und MCP-Aufrufen und schlägt eine Allowlist für `.claude/settings.json` vorClaude kann jetzt integrierte Befehle wie `/init`, `/review` und `/security-review` über das Skill-Tool entdecken und ausführen`PreCompact`-Hooks können Komprimierung blockieren, indem sie mit Code 2 beendet werden oder `{"decision":"block"}` zurückgeben`ENABLE_PROMPT_CACHING_1H` aktiviert API-Schlüssel-, Amazon Bedrock-, Google Cloud Agent Platform- und Microsoft Foundry-Benutzer für 1-Stunden-Prompt-Cache-TTL`sandbox.network.deniedDomains`-Einstellung schneidet bestimmte Domains aus einem breiteren `allowedDomains`-Wildcard aus`/undo` ist jetzt ein Alias für `/rewind`, und `/proactive` ist ein Alias für `/loop`Gehärtete Bash-Berechtigungen: Deny-Regeln stimmen jetzt durch `env`/`sudo`/`watch`-Wrapper überein, und `Bash(find:*)`-Allow-Regeln genehmigen nicht mehr automatisch `-exec` oder `-delete`

88 88 

89[Vollständiges Changelog für v2.1.105–v2.1.113 →](https://code.claude.com/docs/en/changelog.md#2-1-105)89[Vollständiges Changelog für v2.1.105–v2.1.113 →](https://code.claude.com/docs/en/changelog.md#2-1-105)

Details

4 4 

5# Woche 18 · 27. April – 1. Mai 20265# Woche 18 · 27. April – 1. Mai 2026

6 6 

7> Claude Code unter Windows läuft ohne Git Bash, claude auth login akzeptiert einen eingefügten OAuth-Code, wenn der Browser-Callback localhost nicht erreichen kann, claude project purge bereinigt den lokalen Status pro Projekt, und das Einfügen einer PR-URL in /resume findet die Sitzung, die sie erstellt hat.7> Claude Code läuft unter Windows ohne Git Bash, claude auth login akzeptiert einen eingefügten OAuth-Code, wenn der Browser-Callback localhost nicht erreicht, claude project purge bereinigt den lokalen Zustand pro Projekt, und das Einfügen einer PR-URL in /resume findet die Sitzung, die den PR erstellt hat.

8 8 

9Releases [v2.1.120 → v2.1.126](https://code.claude.com/docs/en/changelog.md#2-1-120)9Releases [v2.1.120 → v2.1.126](https://code.claude.com/docs/en/changelog.md#2-1-120)

104 Funktionen · 27. April – 1. Mai104 Funktionen · 27. April – 1. Mai

11 11 

12Anmelden ohne Browser-Callback12Anmeldung ohne Browser-Callback

13v2.1.12613v2.1.126

14 14 

15`claude auth login` akzeptiert nun den OAuth-Code, der direkt in das Terminal eingefügt wird, wenn der Browser-Callback localhost nicht erreichen kann. Dies deckt WSL2, SSH-Sitzungen und Container ab, bei denen die Umleitung zu einem lokalen Port nicht funktioniert. Die gleiche Version behebt auch Anmelde-Timeouts bei langsamen oder Proxy-Verbindungen und in IPv6-only DevContainern.15`claude auth login` akzeptiert jetzt den direkt in das Terminal eingefügten OAuth-Code, wenn der Browser-Callback localhost nicht erreichen kann. Das betrifft WSL2, SSH-Sitzungen und Container, in denen die Weiterleitung an einen lokalen Port nicht funktioniert. Dasselbe Release behebt außerdem Login-Timeouts bei langsamen oder über Proxys geleiteten Verbindungen sowie in reinen IPv6-Devcontainern.

16 16 

17Melden Sie sich an und fügen Sie dann den Code aus dem Browser ein:17Melden Sie sich an und fügen Sie dann den Code aus dem Browser ein:

18 18 


25claude project purge25claude project purge

26v2.1.12426v2.1.124

27 27 

28Löschen Sie alle Claude Code-Status für ein Projekt: Transkripte, Aufgaben, Dateiverlauf und den Konfigurationseintrag des Projekts. Unterstützt `--dry-run` zur Vorschau, `-y`/`--yes` zum Überspringen der Bestätigung, `-i`/`--interactive` zur Auswahl und `--all` zum Löschen aller Projekte.28Löschen Sie den gesamten Claude-Code-Zustand für ein Projekt: Transkripte, Aufgaben, Dateiverlauf und den Konfigurationseintrag des Projekts. Unterstützt `--dry-run` für eine Vorschau, `-y`/`--yes` zum Überspringen der Bestätigung, `-i`/`--interactive` zur Auswahl und `--all` zum Bereinigen aller Projekte.

29 29 

30Vorschau, was gelöscht würde:30Vorschau dessen, was entfernt würde:

31 31 

32```bash theme={null}32```bash theme={null}

33claude project purge --dry-run33claude project purge --dry-run

34```34```

35 35 

36Dann führen Sie es aus:36Führen Sie es dann tatsächlich aus:

37 37 

38```bash theme={null}38```bash theme={null}

39claude project purge39claude project purge


41 41 

42[CLI-Referenz](https://code.claude.com/docs/de/cli-reference.md)42[CLI-Referenz](https://code.claude.com/docs/de/cli-reference.md)

43 43 

44Fortsetzen nach PR-URL44Fortsetzen per PR-URL

45v2.1.12245v2.1.122

46 46 

47Wenn Sie einen Pull Request mit `gh pr create` erstellen, verknüpft Claude Code ihn mit der Sitzung, die ihn erstellt hat. Jetzt können Sie zu dieser Sitzung nur anhand der PR-URL zurückkehren, ohne sich ihren Namen merken zu müssen.47Wenn Sie einen Pull Request mit `gh pr create` erstellen, verknüpft Claude Code ihn mit der Sitzung, die ihn erzeugt hat. Jetzt können Sie allein über die PR-URL zu dieser Sitzung zurückkehren, ohne sich ihren Namen merken zu müssen.

48 48 

49Öffnen Sie die Sitzungsauswahl:49Öffnen Sie die Sitzungsauswahl:

50 50 


52> /resume52> /resume

53```53```

54 54 

55Fügen Sie die PR-URL in die Auswahl ein. Das erste Zeichen des eingefügten Textes versetzt Sie in den Suchmodus, und die Liste wird auf die Sitzung gefiltert, die diesen PR erstellt hat. Drücken Sie die Eingabetaste, um sie fortzusetzen. GitHub-, GitHub Enterprise-, GitLab- und Bitbucket-Pull- und Merge-Request-URLs funktionieren alle.55Fügen Sie die PR-URL in die Auswahl ein. Das erste eingefügte Zeichen wechselt in den Suchmodus, und die Liste wird auf die Sitzung gefiltert, die diesen PR erstellt hat. Drücken Sie Enter, um sie fortzusetzen. URLs von Pull Requests und Merge Requests aus GitHub, GitHub Enterprise, GitLab und Bitbucket funktionieren alle.

56 56 

57```text Claude Code theme={null}57```text Claude Code theme={null}

58https://github.com/your-org/your-repo/pull/123458https://github.com/your-org/your-repo/pull/1234

59```59```

60 60 

61Um die Auswahl bereits gefiltert nach dem PR zu öffnen, übergeben Sie die PR-Nummer in der Befehlszeile:61Um die Auswahl bereits auf den PR gefiltert zu öffnen, übergeben Sie die PR-Nummer in der Befehlszeile:

62 62 

63```bash theme={null}63```bash theme={null}

64claude --from-pr 123464claude --from-pr 1234

65```65```

66 66 

67[Sitzungen: Verwenden Sie die Sitzungsauswahl](https://code.claude.com/docs/de/sessions.md#use-the-session-picker)67[Sitzungen: Sitzungsauswahl verwenden](https://code.claude.com/docs/de/sessions.md#use-the-session-picker)

68 68 

69Windows ohne Git Bash69Windows ohne Git Bash

70Windows70Windows

71 71 

72Git für Windows ist nicht mehr erforderlich. Wenn Bash nicht vorhanden ist, verwendet Claude Code PowerShell als Shell-Tool, und wenn das PowerShell-Tool aktiviert ist, wird es als primäre Shell behandelt. PowerShell 7, das über den Microsoft Store, MSI ohne PATH oder als `.NET` Global Tool installiert ist, wird jetzt automatisch erkannt.72Git for Windows ist nicht mehr erforderlich. Wenn Bash fehlt, verwendet Claude Code PowerShell als Shell-Tool, und wenn das PowerShell-Tool aktiviert ist, wird es als primäre Shell behandelt. PowerShell 7, installiert über den Microsoft Store, per MSI ohne PATH oder als globales `.NET`-Tool, wird jetzt automatisch erkannt.

73 73 

74[Installationsanleitung](https://code.claude.com/docs/de/setup.md)74[Einrichtungsanleitung](https://code.claude.com/docs/de/setup.md)

75 75 

76Weitere Verbesserungen76Weitere Verbesserungen

77 77 

78MCP-Server können sich mit `alwaysLoad: true` in ihrer Konfiguration von der Tool-Suche-Verschiebung abmelden, sodass alle Tools dieses Servers immer verfügbar sindNeuer `claude plugin prune` entfernt verwaiste automatisch installierte Plugin-Abhängigkeiten, und `plugin uninstall --prune` kaskadiert`/skills` hat jetzt ein Typ-zum-Filtern-Suchfeld, damit Sie eine Fähigkeit in einer langen Liste finden können, ohne zu scrollen`PostToolUse` Hooks können Tool-Ausgabe für jedes Tool über `hookSpecificOutput.updatedToolOutput` ersetzen, nicht nur für MCP-ToolsNeuer [`claude ultrareview`](https://code.claude.com/docs/de/ultrareview) Unterbefehl führt `/ultrareview` nicht interaktiv aus CI oder Skripten aus: gibt Ergebnisse auf stdout aus (`--json` für Rohausgabe) und beendet mit 0 bei Abschluss oder 1 bei Fehler`--dangerously-skip-permissions` umgeht nun Eingabeaufforderungen für Schreibvorgänge in `.claude/`, `.git/`, `.vscode/`, Shell-Konfigurationsdateien und anderen zuvor geschützten Pfaden, während katastrophale Löschbefehle als Sicherheitsnetz weiterhin auffordernDie `/model` Auswahl kann Modelle aus dem `/v1/models` Endpunkt Ihres Gateways auflisten, wenn `ANTHROPIC_BASE_URL` auf ein Anthropic-kompatibles Gateway verweist; aktivieren Sie mit `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1` seit v2.1.129MCP-Server, die während des Starts einen vorübergehenden Fehler treffen, versuchen jetzt automatisch bis zu 3 Mal erneut, anstatt getrennt zu bleiben`ANTHROPIC_BEDROCK_SERVICE_TIER` wählt einen Amazon Bedrock Service-Tier: `default`, `flex` oder `priority``/terminal-setup` aktiviert die Clipboard-Zugriffseinstellen von iTerm2, damit `/copy` funktioniert, auch von tmux ausGoogle Cloud's Agent Platform unterstützt jetzt X.509-Zertifikat-basierte Workload Identity Federation (mTLS ADC)Signifikante Speicherleck-Fixes: bildintensive Sitzungen, `/usage` bei großen Transkript-Historien und lang laufende Tools ohne Progress-Events78MCP-Server können die Verzögerung durch die Tool-Suche mit `alwaysLoad: true` in ihrer Konfiguration abwählen, sodass alle Tools dieses Servers immer verfügbar sindDer neue Befehl `claude plugin prune` entfernt verwaiste, automatisch installierte Plugin-Abhängigkeiten, und `plugin uninstall --prune` entfernt sie kaskadierend mit`/skills` hat jetzt ein Suchfeld zum Filtern per Eingabe, sodass Sie einen Skill in einer langen Liste ohne Scrollen finden`PostToolUse`-Hooks können die Tool-Ausgabe für jedes Tool über `hookSpecificOutput.updatedToolOutput` ersetzen, nicht nur für MCP-ToolsDer neue Unterbefehl [`claude ultrareview`](https://code.claude.com/docs/de/ultrareview) führt `/ultrareview` nicht interaktiv aus CI oder Skripten aus: gibt Ergebnisse auf stdout aus (`--json` für Rohausgabe) und beendet sich mit 0 bei Abschluss oder 1 bei einem Fehler`--dangerously-skip-permissions` umgeht jetzt Berechtigungsabfragen für Schreibvorgänge in `.claude/`, `.git/`, `.vscode/`, Shell-Konfigurationsdateien und andere zuvor geschützte Pfade, während katastrophale Löschbefehle als Sicherheitsnetz weiterhin nachfragenDie `/model`-Auswahl kann Modelle vom `/v1/models`-Endpunkt Ihres Gateways auflisten, wenn `ANTHROPIC_BASE_URL` auf ein Anthropic-kompatibles Gateway verweist; aktivieren Sie dies seit v2.1.129 mit `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1`MCP-Server, bei denen während des Starts ein vorübergehender Fehler auftritt, versuchen es jetzt automatisch bis zu 3-mal erneut, statt getrennt zu bleiben`ANTHROPIC_BEDROCK_SERVICE_TIER` wählt eine Amazon-Bedrock-Servicestufe: `default`, `flex` oder `priority``/terminal-setup` aktiviert die Einstellung für den Zwischenablagezugriff in iTerm2, sodass `/copy` funktioniert, auch aus tmux herausDie Agent Platform von Google Cloud unterstützt jetzt zertifikatsbasierte Workload Identity Federation mit X.509 (mTLS ADC)Wesentliche Korrekturen von Speicherlecks: bildlastige Sitzungen, `/usage` bei großen Transkriptverläufen und lang laufende Tools ohne Fortschrittsereignisse

79 79 

80[Vollständiges Changelog für v2.1.120–v2.1.126 →](https://code.claude.com/docs/en/changelog.md#2-1-120)80[Vollständiges Changelog für v2.1.120–v2.1.126 →](https://code.claude.com/docs/en/changelog.md#2-1-120)

Details

4 4 

5# Woche 19 · 4.–8. Mai 20265# Woche 19 · 4.–8. Mai 2026

6 6 

7> Laden Sie Plugins aus .zip-Archiven und URLs, durchsuchen Sie den Befehlsverlauf über alle Projekte hinweg mit Strg+R, erstellen Sie neue Worktrees aus lokalem HEAD oder dem Remote-Standard, und blockieren Sie Aktionen bedingungslos mit Auto-Modus-Hard-Deny-Regeln.7> Laden Sie Plugins aus .zip-Archiven und URLs, durchsuchen Sie den Befehlsverlauf aller Projekte mit Ctrl+R, erstellen Sie neue Worktrees ausgehend vom lokalen HEAD oder vom Remote-Standard-Branch und blockieren Sie Aktionen bedingungslos mit Hard-Deny-Regeln im Auto-Modus.

8 8 

9Releases [v2.1.128 → v2.1.136](https://code.claude.com/docs/en/changelog.md#2-1-128)9Releases [v2.1.128 → v2.1.136](https://code.claude.com/docs/en/changelog.md#2-1-128)

102 Features · 4.–8. Mai102 Features · 4.–8. Mai

11 11 

12Plugins aus .zip-Archiven und URLs12Plugins aus .zip-Archiven und URLs

13 13 

14`--plugin-dir` akzeptiert nun ein `.zip`-Plugin-Archiv zusätzlich zu einem Verzeichnis, und das neue Flag `--plugin-url` ruft ein Plugin-Archiv von einer URL für die aktuelle Sitzung ab. Nützlich zum Testen eines Plugins, bevor Sie es zu einem Marketplace hinzufügen, oder zum Versand interner Plugins aus einem Artifact Store.14`--plugin-dir` akzeptiert jetzt zusätzlich zu einem Verzeichnis auch ein `.zip`-Plugin-Archiv, und das neue Flag `--plugin-url` lädt ein Plugin-Archiv von einer URL für die aktuelle Sitzung. Nützlich, um ein Plugin auszuprobieren, bevor Sie es zu einem Marketplace hinzufügen, oder um interne Plugins aus einem Artefakt-Speicher bereitzustellen.

15 15 

16Laden Sie ein Plugin direkt von einer URL:16Laden Sie ein Plugin direkt von einer URL:

17 17 


19claude --plugin-url https://example.com/my-plugin.zip19claude --plugin-url https://example.com/my-plugin.zip

20```20```

21 21 

22[Plugins-Anleitung](https://code.claude.com/docs/de/plugins/overview.md)22[Plugins-Leitfaden](https://code.claude.com/docs/de/plugins/overview.md)

23 23 

24Verlaufssuche über alle Ihre Projekte24Verlaufssuche über alle Ihre Projekte

25v2.1.12925v2.1.129

26 26 

27`Strg+R` Rückwärtssuche durchsucht nun standardmäßig alle Prompts über alle Projekte hinweg und stellt das Verhalten von vor v2.1.124 wieder her. Drücken Sie `Strg+S` während der Suche, um die Suche auf das aktuelle Projekt oder die aktuelle Sitzung einzugrenzen. Praktisch, wenn Sie sich an einen Befehl erinnern, den Sie letzte Woche in einem anderen Repository ausgeführt haben, und nicht danach graben möchten.27Die Rückwärtssuche mit `Ctrl+R` durchsucht jetzt standardmäßig alle Prompts aus allen Projekten und stellt damit das Verhalten von vor v2.1.124 wieder her. Drücken Sie während der Suche `Ctrl+S`, um die Suche wieder auf das aktuelle Projekt oder die aktuelle Sitzung einzugrenzen. Praktisch, wenn Sie sich an einen Befehl erinnern, den Sie letzte Woche in einem anderen Repository ausgeführt haben, und nicht lange danach suchen möchten.

28 28 

29[Interaktiver Modus: Befehlsverlauf](https://code.claude.com/docs/de/interactive-mode.md#command-history)29[Interaktiver Modus: Befehlsverlauf](https://code.claude.com/docs/de/interactive-mode.md#command-history)

30 30 

31Weitere Verbesserungen31Weitere Verbesserungen

32 32 

33Neue Einstellung `worktree.baseRef` (`fresh` | `head`) steuert, ob `--worktree`, das Tool `EnterWorktree` und Agent-Isolations-Worktrees vom Remote-Standard-Branch oder vom lokalen `HEAD` abzweigen; der Standard `fresh` hält nicht gepushte Commits aus neuen Worktrees herausNeue Regeln `settings.autoMode.hard_deny` blockieren übereinstimmende Aktionen bedingungslos im Auto-Modus, unabhängig von Allow-Ausnahmen, für Aktionen, die niemals automatisch ausgeführt werden sollten, auch wenn breitere Allow-Regeln geltenHooks erhalten nun die aktive Anstrengungsebene über das JSON-Eingabefeld `effort.level` und die Umgebungsvariable `CLAUDE_EFFORT` lesen`CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1` deaktiviert den Vollbild-Alternate-Screen-Renderer und behält die Konversation im nativen Scrollback des Terminals`CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE` ermöglicht es Homebrew- oder WinGet-Installationen, das Upgrade im Hintergrund auszuführen und zum Neustart aufzufordern`CLAUDE_CODE_SESSION_ID` ist nun in der Bash-Tool-Subprozess-Umgebung vorhanden und entspricht der `session_id`, die an Hooks übergeben wird`/mcp` zeigt nun die Werkzeuganzahl für verbundene Server an und kennzeichnet Server, die mit 0 Werkzeugen verbunden sind`--channels` funktioniert nun mit Konsolen-Authentifizierung (API-Schlüssel)Subprozesse wie Bash, Hooks, MCP und LSP erben nicht mehr `OTEL_*` Umgebungsvariablen, sodass OTEL-instrumentierte Apps, die über das Bash-Tool ausgeführt werden, nicht mehr den OTLP-Endpunkt der CLI selbst aufgreifenZusammenfassungen zum Fortschritt von Sub-Agenten treffen nun den Prompt-Cache und reduzieren die `cache_creation` Token-Kosten um etwa das 3-facheMehrere OAuth- und Anmeldedaten-Zuverlässigkeitskorrektionen: Parallele Sitzungen enden nicht mehr bei 401 nach einem Refresh-Token-Rennen, MCP-OAuth-Refresh-Token gehen nicht mehr verloren, wenn mehrere Server gleichzeitig aktualisiert werden, und eine seltene Anmeldeschleife aus einem gleichzeitigen Anmeldedaten-Schreibvorgang ist behobenNeuer Admin-Schlüssel `parentSettingsBehavior` ermöglicht es Administratoren, SDK `managedSettings` in die Richtlinien-Zusammenführung einzubeziehen33Die neue Einstellung `worktree.baseRef` (`fresh` | `head`) legt fest, ob `--worktree`, das Tool `EnterWorktree` und Worktrees zur Agent-Isolation vom Remote-Standard-Branch oder vom lokalen `HEAD` abzweigen; der Standardwert `fresh` hält nicht gepushte Commits aus neuen Worktrees herausNeue `settings.autoMode.hard_deny`-Regeln blockieren passende Aktionen im Auto-Modus bedingungslos, unabhängig von Allow-Ausnahmen – für Aktionen, die niemals automatisch ausgeführt werden sollen, selbst wenn umfassendere Allow-Regeln greifenHooks erhalten jetzt die aktive Effort-Stufe über das JSON-Eingabefeld `effort.level` und die Umgebungsvariable `$CLAUDE_EFFORT`, und Befehle des Bash-Tools können `$CLAUDE_EFFORT` auslesen`CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1` deaktiviert den Vollbild-Renderer mit alternativem Bildschirm und belässt die Konversation im nativen Scrollback des TerminalsMit `CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE` können Homebrew- oder WinGet-Installationen das Upgrade im Hintergrund ausführen und zum Neustart auffordern`CLAUDE_CODE_SESSION_ID` ist jetzt in der Umgebung der Unterprozesse des Bash-Tools verfügbar und entspricht der an Hooks übergebenen `session_id``/mcp` zeigt jetzt die Anzahl der Tools für verbundene Server an und kennzeichnet Server, die sich mit 0 Tools verbunden haben`--channels` funktioniert jetzt mit Console-Authentifizierung (API-Schlüssel)Unterprozesse wie Bash, Hooks, MCP und LSP erben keine `OTEL_*`-Umgebungsvariablen mehr, sodass mit OTEL instrumentierte Anwendungen, die über das Bash-Tool ausgeführt werden, nicht mehr den eigenen OTLP-Endpunkt der CLI übernehmenFortschrittszusammenfassungen von Sub-Agents treffen jetzt den Prompt-Cache und senken die `cache_creation`-Token-Kosten um etwa das DreifacheMehrere Korrekturen zur Zuverlässigkeit von OAuth und Anmeldedaten: Parallele Sitzungen bleiben nach einer Race Condition beim Refresh-Token nicht mehr bei 401 hängen, MCP-OAuth-Refresh-Tokens gehen nicht mehr verloren, wenn mehrere Server gleichzeitig aktualisieren, und eine seltene Anmeldeschleife durch einen gleichzeitigen Schreibvorgang der Anmeldedaten wurde behobenMit dem neuen Admin-Schlüssel `parentSettingsBehavior` können Admins die `managedSettings` des SDK in die Zusammenführung der Richtlinien einbeziehen

34 34 

35[Vollständiges Changelog für v2.1.128–v2.1.136 →](https://code.claude.com/docs/en/changelog.md#2-1-128)35[Vollständiges Changelog für v2.1.128–v2.1.136 →](https://code.claude.com/docs/en/changelog.md#2-1-128)

Details

56 56 

57Weitere Verbesserungen57Weitere Verbesserungen

58 58 

59`claude agents` erhielt Dispatch-Flags (`--add-dir`, `--settings`, `--mcp-config`, `--plugin-dir`, `--permission-mode`, `--model`, `--effort`, `--dangerously-skip-permissions`) zur Konfiguration von Hintergrund-Sitzungen, und `claude agents --cwd <path>` beschränkt die Sitzungsliste auf ein VerzeichnisNeuer Hook `args: string[]` exec-Form startet den Befehl direkt ohne Shell, sodass Pfad-Platzhalter nie Anführungszeichen benötigenNeue `continueOnBlock` Konfigurationsoption für `PostToolUse` Hooks leitet den Ablehnungsgrund des Hooks an Claude zurück und setzt den Durchlauf fort, anstatt ihn zu beendenNeues `terminalSequence` Feld in Hook-JSON-Ausgabe ermöglicht es Hooks, Desktop-Benachrichtigungen, Fenstertitel und Glocken ohne steuerndes Terminal auszugebenDas Rewind-Menü erhielt „Zusammenfassen bis hier" zum Komprimieren früherer Kontexte, während neuere Durchläufe intakt bleibenRemote Control, `/schedule`, claude.ai MCP-Konnektoren und Benachrichtigungseinstellungen sind jetzt deaktiviert, wenn `ANTHROPIC_API_KEY`, `apiKeyHelper` oder `ANTHROPIC_AUTH_TOKEN` gesetzt ist, auch neben einer claude.ai-Anmeldung; heben Sie die API-Schlüssel-Einstellung auf, um diese Funktionen zu nutzenMCP-Stdio-Server erhalten jetzt `CLAUDE_PROJECT_DIR` in ihrer Umgebung, was Hooks entspricht, und Plugin-Konfigurationen können `${CLAUDE_PROJECT_DIR}` in Befehlen referenzieren`claude plugin details <name>` zeigt das Komponenten-Inventar eines Plugins und die projizierte Token-Kosten pro Sitzung an, und der `/plugin` Details-Bereich listet jetzt auch die LSP-Server auf, die ein Plugin bereitstelltPlugins mit einer Root-Level `SKILL.md` und keinem `skills/` Unterverzeichnis werden jetzt als Skill angezeigt`/feedback` kann jetzt aktuelle Sitzungen aus den letzten 24 Stunden oder 7 Tagen für Probleme einbeziehen, die sich über mehr als die aktuelle Sitzung erstreckenAgent-Tool `subagent_type` stimmt jetzt Groß-/Kleinschreibung und Trennzeichen-unabhängig überein, sodass `"Code Reviewer"` zu `code-reviewer` aufgelöst wird59`claude agents` erhielt Dispatch-Flags (`--add-dir`, `--settings`, `--mcp-config`, `--plugin-dir`, `--permission-mode`, `--model`, `--effort`, `--dangerously-skip-permissions`) zur Konfiguration von Hintergrund-Sitzungen, und `claude agents --cwd <path>` beschränkt die Sitzungsliste auf ein VerzeichnisNeuer Hook `args: string[]` exec-Form startet den Befehl direkt ohne Shell, sodass Pfad-Platzhalter nie Anführungszeichen benötigenNeue `continueOnBlock` Konfigurationsoption für `PostToolUse` Hooks leitet den Ablehnungsgrund des Hooks an Claude zurück und setzt den Durchlauf fort, anstatt ihn zu beendenNeues `terminalSequence` Feld in Hook-JSON-Ausgabe ermöglicht es Hooks, Desktop-Benachrichtigungen, Fenstertitel und Glocken ohne steuerndes Terminal auszugebenDas Rewind-Menü erhielt „Zusammenfassen bis hier“ zum Komprimieren früherer Kontexte, während neuere Durchläufe intakt bleibenRemote Control, `/schedule`, claude.ai MCP-Konnektoren und Benachrichtigungseinstellungen sind jetzt deaktiviert, wenn `ANTHROPIC_API_KEY`, `apiKeyHelper` oder `ANTHROPIC_AUTH_TOKEN` gesetzt ist, auch neben einer claude.ai-Anmeldung; heben Sie die API-Schlüssel-Einstellung auf, um diese Funktionen zu nutzenMCP-Stdio-Server erhalten jetzt `CLAUDE_PROJECT_DIR` in ihrer Umgebung, was Hooks entspricht, und Plugin-Konfigurationen können `${CLAUDE_PROJECT_DIR}` in Befehlen referenzieren`claude plugin details <name>` zeigt das Komponenten-Inventar eines Plugins und die projizierte Token-Kosten pro Sitzung an, und der `/plugin` Details-Bereich listet jetzt auch die LSP-Server auf, die ein Plugin bereitstelltPlugins mit einer Root-Level `SKILL.md` und keinem `skills/` Unterverzeichnis werden jetzt als Skill angezeigt`/feedback` kann jetzt aktuelle Sitzungen aus den letzten 24 Stunden oder 7 Tagen für Probleme einbeziehen, die sich über mehr als die aktuelle Sitzung erstreckenAgent-Tool `subagent_type` stimmt jetzt Groß-/Kleinschreibung und Trennzeichen-unabhängig überein, sodass `"Code Reviewer"` zu `code-reviewer` aufgelöst wird

60 60 

61[Vollständiges Changelog für v2.1.139–v2.1.142 →](https://code.claude.com/docs/en/changelog.md#2-1-139)61[Vollständiges Changelog für v2.1.139–v2.1.142 →](https://code.claude.com/docs/en/changelog.md#2-1-139)

Details

26 26 

27Weitere Verbesserungen27Weitere Verbesserungen

28 28 

29[`/usage`](https://code.claude.com/docs/de/costs#track-your-costs) zeigt jetzt eine kategorieweise Aufschlüsselung, was Ihre Plan-Limits antreibt, und ordnet die aktuelle Nutzung Skills, Subagenten, Plugins und einzelnen MCP-Servern zu„Extra usage" wird in der gesamten CLI in „usage credits" umbenannt, und `/extra-usage` ist jetzt `/usage-credits`. Der alte Name funktioniert noch. Der Befehl erfordert die Anmeldung mit Ihrem claude.ai-Abonnement über `/login` und ist nicht mit API-Schlüssel-Authentifizierung verfügbar.Neuer [`/code-review`](https://code.claude.com/docs/de/code-review)-Befehl meldet Korrektheitsfehler auf einer gewählten Aufwandsebene wie `/code-review high`, und `--comment` veröffentlicht Ergebnisse als Inline-GitHub-PR-Kommentare. `/simplify` bleibt als separate Bereinigungsprüfung erhalten.Hintergrundsitzungen werden jetzt in `/resume` neben interaktiven angezeigt, gekennzeichnet mit `bg`, und Sitzungen, die mit `Ctrl+T` in `claude agents` angeheftet werden, bleiben aktiv, wenn sie untätig sind`claude agents --json` listet Live-Sitzungen als JSON für Scripting auf, z. B. Statusleisten und SitzungsauswahlDas PowerShell-Tool ist jetzt standardmäßig auf Windows für Amazon Bedrock-, Google Cloud's Agent Platform- und Microsoft Foundry-Benutzer aktiviert; deaktivieren Sie es mit `CLAUDE_CODE_USE_POWERSHELL_TOOL=0``claude plugin disable` weigert sich jetzt, wenn ein anderes aktiviertes Plugin vom Ziel abhängt, und `claude plugin enable` erzwingt transitiv abhängige PluginsDer `/plugin`-Marketplace-Browsing-Bereich zeigt die projizierte Kontextkosten an, und die Discover- und Browse-Bildschirme listen die Befehle, Agenten, Skills, Hooks und MCP/LSP-Server eines Plugins vor der Installation aufNeue `worktree.bgIsolation: "none"`-Einstellung ermöglicht es Hintergrundsitzungen, die Arbeitskopie direkt ohne `EnterWorktree` zu bearbeiten, für Repositories, bei denen Worktrees unpraktisch sindMarkdown-Ausgabe rendert GFM-Aufgabenlisten-Kontrollkästchen, und die `/diff`-Detailansicht scrollt mit der TastaturJSON-Eingabe der Statuszeile enthält jetzt GitHub-Repository- und PR-Informationen, wenn erkanntEnterprise: die verwaltete Einstellung `allowAllClaudeAiMcps` lädt claude.ai-Cloud-MCP-Konnektoren neben `managed-mcp.json`29[`/usage`](https://code.claude.com/docs/de/costs#track-your-costs) zeigt jetzt eine kategorieweise Aufschlüsselung, was Ihre Plan-Limits antreibt, und ordnet die aktuelle Nutzung Skills, Subagenten, Plugins und einzelnen MCP-Servern zu„Extra usage“ wird in der gesamten CLI in „usage credits“ umbenannt, und `/extra-usage` ist jetzt `/usage-credits`. Der alte Name funktioniert noch. Der Befehl erfordert die Anmeldung mit Ihrem claude.ai-Abonnement über `/login` und ist nicht mit API-Schlüssel-Authentifizierung verfügbar.Neuer [`/code-review`](https://code.claude.com/docs/de/code-review)-Befehl meldet Korrektheitsfehler auf einer gewählten Aufwandsebene wie `/code-review high`, und `--comment` veröffentlicht Ergebnisse als Inline-GitHub-PR-Kommentare. `/simplify` bleibt als separate Bereinigungsprüfung erhalten.Hintergrundsitzungen werden jetzt in `/resume` neben interaktiven angezeigt, gekennzeichnet mit `bg`, und Sitzungen, die mit `Ctrl+T` in `claude agents` angeheftet werden, bleiben aktiv, wenn sie untätig sind`claude agents --json` listet Live-Sitzungen als JSON für Scripting auf, z. B. Statusleisten und SitzungsauswahlDas PowerShell-Tool ist jetzt standardmäßig auf Windows für Amazon Bedrock-, Google Cloud's Agent Platform- und Microsoft Foundry-Benutzer aktiviert; deaktivieren Sie es mit `CLAUDE_CODE_USE_POWERSHELL_TOOL=0``claude plugin disable` weigert sich jetzt, wenn ein anderes aktiviertes Plugin vom Ziel abhängt, und `claude plugin enable` erzwingt transitiv abhängige PluginsDer `/plugin`-Marketplace-Browsing-Bereich zeigt die projizierte Kontextkosten an, und die Discover- und Browse-Bildschirme listen die Befehle, Agenten, Skills, Hooks und MCP/LSP-Server eines Plugins vor der Installation aufNeue `worktree.bgIsolation: "none"`-Einstellung ermöglicht es Hintergrundsitzungen, die Arbeitskopie direkt ohne `EnterWorktree` zu bearbeiten, für Repositories, bei denen Worktrees unpraktisch sindMarkdown-Ausgabe rendert GFM-Aufgabenlisten-Kontrollkästchen, und die `/diff`-Detailansicht scrollt mit der TastaturJSON-Eingabe der Statuszeile enthält jetzt GitHub-Repository- und PR-Informationen, wenn erkanntEnterprise: die verwaltete Einstellung `allowAllClaudeAiMcps` lädt claude.ai-Cloud-MCP-Konnektoren neben `managed-mcp.json`

30 30 

31[Vollständiges Changelog für v2.1.143–v2.1.149 →](https://code.claude.com/docs/en/changelog.md#2-1-143)31[Vollständiges Changelog für v2.1.143–v2.1.149 →](https://code.claude.com/docs/en/changelog.md#2-1-143)

Details

75 75 

76Weitere Verbesserungen76Weitere Verbesserungen

77 77 

78In `claude agents` können Sie einem Shell-Befehl `!` voranstellen, um ihn als Hintergrund-Job auszuführen, an den Sie sich anschließen und von dem Sie sich trennen können; auch verfügbar als `claude --bg --exec 'pytest -x'`Plugins in `.claude/skills`-Verzeichnissen werden jetzt automatisch geladen, kein Marketplace erforderlich, und `claude plugin init <name>` erstellt ein neues PluginDer neue `/reload-skills`-Befehl scannt Skill-Verzeichnisse erneut, ohne neu zu starten, und `SessionStart`-Hooks können `reloadSkills: true` zurückgeben, um Skills, die sie installieren, in derselben Sitzung verfügbar zu machenSkills und Befehle können `disallowed-tools` in der Frontmatter setzen, um Tools aus dem Modell zu entfernen, während der Skill aktiv istDas neue `MessageDisplay`-Hook-Ereignis ermöglicht es Hooks, Assistenten-Nachrichtentext beim Anzeigen zu transformieren oder auszublendenClaude Code wechselt jetzt zu Ihrem konfigurierten `--fallback-model` für den Rest der Sitzung, wenn das primäre Modell nicht gefunden wird, anstatt jede Anfrage fehlschlagen zu lassenPlugins können `defaultEnabled: false` in `plugin.json` oder einem Marketplace-Eintrag deklarieren, sodass sie installiert werden, ohne sich einzuschalten, bis Sie sie aktivierenVim-Modus: `/` im NORMAL-Modus öffnet die umgekehrte Verlaufssuche, passend zu Bash und Zsh vi-modeDie Streaming-Tool-Ausführung ist jetzt immer aktiviert, auch mit deaktivierter Telemetrie und auf Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry`←←` zum Öffnen der Agents-Ansicht funktioniert jetzt auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry und mit deaktivierter TelemetrieClaude in Chrome: Wählen Sie, welcher verbundene Browser verwendet werden soll, über `/chrome` → „Browser auswählen…" oder im Chat, wenn eine Browser-Aktion mit mehreren verbundenen ausgeführt wird`claude mcp list` und `claude mcp get` zeigen jetzt nicht genehmigte `.mcp.json`-Server als ausstehende Genehmigung an, anstatt sie automatisch zu genehmigen und zu verbinden, wenn die Ausgabe weitergeleitet wird78In `claude agents` können Sie einem Shell-Befehl `!` voranstellen, um ihn als Hintergrund-Job auszuführen, an den Sie sich anschließen und von dem Sie sich trennen können; auch verfügbar als `claude --bg --exec 'pytest -x'`Plugins in `.claude/skills`-Verzeichnissen werden jetzt automatisch geladen, kein Marketplace erforderlich, und `claude plugin init <name>` erstellt ein neues PluginDer neue `/reload-skills`-Befehl scannt Skill-Verzeichnisse erneut, ohne neu zu starten, und `SessionStart`-Hooks können `reloadSkills: true` zurückgeben, um Skills, die sie installieren, in derselben Sitzung verfügbar zu machenSkills und Befehle können `disallowed-tools` in der Frontmatter setzen, um Tools aus dem Modell zu entfernen, während der Skill aktiv istDas neue `MessageDisplay`-Hook-Ereignis ermöglicht es Hooks, Assistenten-Nachrichtentext beim Anzeigen zu transformieren oder auszublendenClaude Code wechselt jetzt zu Ihrem konfigurierten `--fallback-model` für den Rest der Sitzung, wenn das primäre Modell nicht gefunden wird, anstatt jede Anfrage fehlschlagen zu lassenPlugins können `defaultEnabled: false` in `plugin.json` oder einem Marketplace-Eintrag deklarieren, sodass sie installiert werden, ohne sich einzuschalten, bis Sie sie aktivierenVim-Modus: `/` im NORMAL-Modus öffnet die umgekehrte Verlaufssuche, passend zu Bash und Zsh vi-modeDie Streaming-Tool-Ausführung ist jetzt immer aktiviert, auch mit deaktivierter Telemetrie und auf Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry`←←` zum Öffnen der Agents-Ansicht funktioniert jetzt auf Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry und mit deaktivierter TelemetrieClaude in Chrome: Wählen Sie, welcher verbundene Browser verwendet werden soll, über `/chrome` → „Browser auswählen…“ oder im Chat, wenn eine Browser-Aktion mit mehreren verbundenen ausgeführt wird`claude mcp list` und `claude mcp get` zeigen jetzt nicht genehmigte `.mcp.json`-Server als ausstehende Genehmigung an, anstatt sie automatisch zu genehmigen und zu verbinden, wenn die Ausgabe weitergeleitet wird

79 79 

80[Vollständiges Changelog für v2.1.150–v2.1.157 →](https://code.claude.com/docs/en/changelog.md#2-1-150)80[Vollständiges Changelog für v2.1.150–v2.1.157 →](https://code.claude.com/docs/en/changelog.md#2-1-150)

Details

67 67 

68Weitere Verbesserungen68Weitere Verbesserungen

69 69 

70Ein [`PreModelSwitch`](https://code.claude.com/docs/de/hooks#premodelswitch) Hook kann einen angeforderten Modellwechsel blockieren, und ein [`PostModelSwitch`](https://code.claude.com/docs/de/hooks#postmodelswitch) Hook kann Kontext für Claude hinzufügen, nachdem sich das Modell der Sitzung ändert[`/cost`](https://code.claude.com/docs/de/costs#prompt-cache-statistics) fügt eine Zeile `Prompt cache (main)` hinzu: der Anteil der Input-Token, die aus dem Cache bereitgestellt werden, die Cache-Misses, ob der Cache warm ist, und eine wahrscheinliche Ursache für den letzten Miss, wenn Claude Code eine benennen kann. Status-Zeilen-Skripte erhalten ein entsprechendes `prompt_cache` ObjektOrganisationen können HTTP- und SSE-MCP-Server unter der verwalteten Einstellung [`managedMcpServers`](https://code.claude.com/docs/de/managed-mcp#provide-servers-through-managed-settings) auflisten, um sie jedem Benutzer zur Verfügung zu stellen, zusätzlich zu den Servern, die Benutzer selbst hinzufügen`/effort` und die `/model` Auswahl speichern jetzt [eine separate Anstrengungsstufe für jedes Modell](https://code.claude.com/docs/de/model-config.md#adjust-effort-level); drücken Sie `s` statt `Enter`, um eine Stufe nur auf die aktuelle Sitzung anzuwendenStandardmäßig [blockiert der Auto-Modus-Klassifizierer jetzt auch](https://code.claude.com/docs/de/permission-modes.md#what-the-classifier-blocks-by-default) Aktionen wie das Anfordern von Anmeldedaten vom Cloud-Instance-Metadaten-Endpunkt oder das Verbinden mit Geschwister-Containern, die Claude nicht gestartet hatIm Auto-Modus fragt Claude Code Sie, bevor Claude [zum ersten Mal eine Datei außerhalb Ihrer Arbeitsverzeichnisse liest](https://code.claude.com/docs/de/permission-modes.md#first-read-outside-the-working-directories), mit einer Option, solche Lesevorgänge von da an zu blockierenErhöhen Sie [`bashOutputMaxChars`](https://code.claude.com/docs/de/settings-reference#bashoutputmaxchars) und [`taskOutputMaxChars`](https://code.claude.com/docs/de/settings-reference#taskoutputmaxchars) auf bis zu 128.000 Zeichen, damit Claude mehr der Ausgabe eines erfolgreichen Befehls oder einer Hintergrundaufgabe inline erhältDie Tastenkombinationen zur Wortbearbeitung in der Eingabeaufforderung [folgen readline](https://code.claude.com/docs/de/interactive-mode.md#make-ctrl-w-delete-back-to-whitespace) für alle, und die Einstellung `keybindingFlavor` hat keine Auswirkung mehr. `Ctrl+W` löscht bis zum vorherigen Leerzeichen, und `Alt+B`, `Alt+F` und `Alt+D` behandeln Satzzeichen wie `/` und `.` als WortgrenzenWenn Sie `defaultMode` in der `.claude/settings.json` oder `.claude/settings.local.json` eines Projekts auf `"bypassPermissions"` setzen, [hat dies keine Auswirkung mehr](https://code.claude.com/docs/de/permission-modes.md#which-mode-a-session-starts-in) und die Sitzung startet im Manuellen Modus; setzen Sie stattdessen `"bypassPermissions"` in Benutzer- oder verwalteten Einstellungen oder übergeben Sie `--permission-mode`Seat-basierte Enterprise-Pläne [verwenden jetzt standardmäßig Opus 5](https://code.claude.com/docs/de/model-config.md#default-model-setting)In der VS Code-Erweiterung klicken Sie auf den Modellnamen am unteren Rand des Eingabefelds, um [die Modellauswahl zu öffnen](https://code.claude.com/docs/de/vs-code.md#use-the-prompt-box)In der VS Code-Erweiterung wählen Sie **Output styles** im Abschnitt „Anpassen" des Befehlsmenüs, um [einen Ausgabestil auszuwählen](https://code.claude.com/docs/de/vs-code.md#use-the-prompt-box), einschließlich Ihrer benutzerdefinierten70Ein [`PreModelSwitch`](https://code.claude.com/docs/de/hooks#premodelswitch) Hook kann einen angeforderten Modellwechsel blockieren, und ein [`PostModelSwitch`](https://code.claude.com/docs/de/hooks#postmodelswitch) Hook kann Kontext für Claude hinzufügen, nachdem sich das Modell der Sitzung ändert[`/cost`](https://code.claude.com/docs/de/costs#prompt-cache-statistics) fügt eine Zeile `Prompt cache (main)` hinzu: der Anteil der Input-Token, die aus dem Cache bereitgestellt werden, die Cache-Misses, ob der Cache warm ist, und eine wahrscheinliche Ursache für den letzten Miss, wenn Claude Code eine benennen kann. Status-Zeilen-Skripte erhalten ein entsprechendes `prompt_cache` ObjektOrganisationen können HTTP- und SSE-MCP-Server unter der verwalteten Einstellung [`managedMcpServers`](https://code.claude.com/docs/de/managed-mcp#provide-servers-through-managed-settings) auflisten, um sie jedem Benutzer zur Verfügung zu stellen, zusätzlich zu den Servern, die Benutzer selbst hinzufügen`/effort` und die `/model` Auswahl speichern jetzt [eine separate Anstrengungsstufe für jedes Modell](https://code.claude.com/docs/de/model-config.md#adjust-effort-level); drücken Sie `s` statt `Enter`, um eine Stufe nur auf die aktuelle Sitzung anzuwendenStandardmäßig [blockiert der Auto-Modus-Klassifizierer jetzt auch](https://code.claude.com/docs/de/permission-modes.md#what-the-classifier-blocks-by-default) Aktionen wie das Anfordern von Anmeldedaten vom Cloud-Instance-Metadaten-Endpunkt oder das Verbinden mit Geschwister-Containern, die Claude nicht gestartet hatIm Auto-Modus fragt Claude Code Sie, bevor Claude [zum ersten Mal eine Datei außerhalb Ihrer Arbeitsverzeichnisse liest](https://code.claude.com/docs/de/permission-modes.md#first-read-outside-the-working-directories), mit einer Option, solche Lesevorgänge von da an zu blockierenErhöhen Sie [`bashOutputMaxChars`](https://code.claude.com/docs/de/settings-reference#bashoutputmaxchars) und [`taskOutputMaxChars`](https://code.claude.com/docs/de/settings-reference#taskoutputmaxchars) auf bis zu 128.000 Zeichen, damit Claude mehr der Ausgabe eines erfolgreichen Befehls oder einer Hintergrundaufgabe inline erhältDie Tastenkombinationen zur Wortbearbeitung in der Eingabeaufforderung [folgen readline](https://code.claude.com/docs/de/interactive-mode.md#make-ctrl-w-delete-back-to-whitespace) für alle, und die Einstellung `keybindingFlavor` hat keine Auswirkung mehr. `Ctrl+W` löscht bis zum vorherigen Leerzeichen, und `Alt+B`, `Alt+F` und `Alt+D` behandeln Satzzeichen wie `/` und `.` als WortgrenzenWenn Sie `defaultMode` in der `.claude/settings.json` oder `.claude/settings.local.json` eines Projekts auf `"bypassPermissions"` setzen, [hat dies keine Auswirkung mehr](https://code.claude.com/docs/de/permission-modes.md#which-mode-a-session-starts-in) und die Sitzung startet im Manuellen Modus; setzen Sie stattdessen `"bypassPermissions"` in Benutzer- oder verwalteten Einstellungen oder übergeben Sie `--permission-mode`Seat-basierte Enterprise-Pläne [verwenden jetzt standardmäßig Opus 5](https://code.claude.com/docs/de/model-config.md#default-model-setting)In der VS Code-Erweiterung klicken Sie auf den Modellnamen am unteren Rand des Eingabefelds, um [die Modellauswahl zu öffnen](https://code.claude.com/docs/de/vs-code.md#use-the-prompt-box)In der VS Code-Erweiterung wählen Sie **Output styles** im Abschnitt „Anpassen“ des Befehlsmenüs, um [einen Ausgabestil auszuwählen](https://code.claude.com/docs/de/vs-code.md#use-the-prompt-box), einschließlich Ihrer benutzerdefinierten

71 71 

72[Vollständiges Änderungsprotokoll für v2.1.251–v2.1.261 →](https://code.claude.com/docs/en/changelog.md#2-1-251)72[Vollständiges Änderungsprotokoll für v2.1.251–v2.1.261 →](https://code.claude.com/docs/en/changelog.md#2-1-251)

Details

37 37 

38Weitere Verbesserungen38Weitere Verbesserungen

39 39 

40Legen Sie [`maxEffortLevel`](https://code.claude.com/docs/de/settings-reference#maxeffortlevel) auf der obersten Ebene oder pro Modell unter `modelSettings` fest, um die Aufwandsstufe bei jedem Anbieter zu begrenzen, einschließlich Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry; jede höhere Stufe wird mit der Obergrenze ausgeführtZeigen Sie `--plugin-dir` auf einen Ordner mit Plugins, um [jeden unmittelbaren Unterordner mit einem Manifest zu laden](https://code.claude.com/docs/de/plugins/create.md#load-a-directory-or-archive-for-one-session)Wenn WebFetch das Herunterladen einer Seite nicht innerhalb von fünf Minuten abgeschlossen hat, [schlägt der Abruf mit einem Deadline-Fehler fehl](https://code.claude.com/docs/de/tools-reference.md#webfetch-tool-behavior), anstatt zu hängen; setzen Sie `CLAUDE_CODE_WEBFETCH_DEADLINE_MS`, um die Deadline zu ändern, oder auf `0`, um die Grenze zu entfernenÜbergeben Sie `--json` an `claude plugin install`, `uninstall`, `update`, `enable` oder `disable`, um das Ergebnis als [ein JSON-Objekt in der letzten Zeile von stdout](https://code.claude.com/docs/de/plugins/cli-reference.md#plugin-json-result) auszugebenWenn der Auto-Modus-Klassifizierer eine Aktion blockiert, nennt der Grund, den Claude erhält, [normalerweise die Regel, die übereinstimmt](https://code.claude.com/docs/de/auto-mode-config.md#fix-a-denial-with-an-allow-rule-an-environment-entry-or-a-retry), wie z. B. `[Data Exfiltration]`Wenn Sie `/` mitten in einer Eingabeaufforderung eingeben, können Sie jetzt [aus einer Liste übereinstimmender Befehle](https://code.claude.com/docs/de/interactive-mode.md#complete-a-command-mid-prompt) wählen, anstatt einen einzelnen Vorschlag zu erhalten. Die Liste wird beim Eingeben in Vollbilddarstellung geöffnet. Eine Plugin-Skill stimmt auch mit ihrem Namen ohne das Plugin-Präfix übereinIn der VS Code-Erweiterung klicken Sie auf die Agent-Anzahl am unteren Rand des Eingabefelds, um die [Agent-Karte](https://code.claude.com/docs/de/vs-code.md#use-the-prompt-box) zu öffnen, wo Sie das schreibgeschützte Transkript eines Subagenten öffnen oder ihn stoppen könnenIn der VS Code-Erweiterung wählen Sie **Hooks** oder **Permissions** im Abschnitt „Anpassen" des Befehlsmenüs, um [Hooks und Berechtigungsregeln](https://code.claude.com/docs/de/vs-code.md#use-the-prompt-box) in Ihren Benutzer-, Projekt- und lokalen Einstellungen hinzuzufügen oder zu entfernenClaude kann ein [Browser-Tab-Symbol](https://code.claude.com/docs/de/artifacts.md#create-an-artifact) auswählen, das zu jedem Artefakt passt, das es veröffentlichtIn Claude Code im Web können Sie eine eingereihte Nachricht in einer Cloud-Sitzung zurücknehmen, bevor Claude sie liest: entfernen Sie sie aus der Warteschlange oder drücken Sie `Esc` oder `Up`, und der Text kehrt zum Nachrichtenfeld zurück40Legen Sie [`maxEffortLevel`](https://code.claude.com/docs/de/settings-reference#maxeffortlevel) auf der obersten Ebene oder pro Modell unter `modelSettings` fest, um die Aufwandsstufe bei jedem Anbieter zu begrenzen, einschließlich Amazon Bedrock, Google Cloud's Agent Platform und Microsoft Foundry; jede höhere Stufe wird mit der Obergrenze ausgeführtZeigen Sie `--plugin-dir` auf einen Ordner mit Plugins, um [jeden unmittelbaren Unterordner mit einem Manifest zu laden](https://code.claude.com/docs/de/plugins/create.md#load-a-directory-or-archive-for-one-session)Wenn WebFetch das Herunterladen einer Seite nicht innerhalb von fünf Minuten abgeschlossen hat, [schlägt der Abruf mit einem Deadline-Fehler fehl](https://code.claude.com/docs/de/tools-reference.md#webfetch-tool-behavior), anstatt zu hängen; setzen Sie `CLAUDE_CODE_WEBFETCH_DEADLINE_MS`, um die Deadline zu ändern, oder auf `0`, um die Grenze zu entfernenÜbergeben Sie `--json` an `claude plugin install`, `uninstall`, `update`, `enable` oder `disable`, um das Ergebnis als [ein JSON-Objekt in der letzten Zeile von stdout](https://code.claude.com/docs/de/plugins/cli-reference.md#plugin-json-result) auszugebenWenn der Auto-Modus-Klassifizierer eine Aktion blockiert, nennt der Grund, den Claude erhält, [normalerweise die Regel, die übereinstimmt](https://code.claude.com/docs/de/auto-mode-config.md#fix-a-denial-with-an-allow-rule-an-environment-entry-or-a-retry), wie z. B. `[Data Exfiltration]`Wenn Sie `/` mitten in einer Eingabeaufforderung eingeben, können Sie jetzt [aus einer Liste übereinstimmender Befehle](https://code.claude.com/docs/de/interactive-mode.md#complete-a-command-mid-prompt) wählen, anstatt einen einzelnen Vorschlag zu erhalten. Die Liste wird beim Eingeben in Vollbilddarstellung geöffnet. Eine Plugin-Skill stimmt auch mit ihrem Namen ohne das Plugin-Präfix übereinIn der VS Code-Erweiterung klicken Sie auf die Agent-Anzahl am unteren Rand des Eingabefelds, um die [Agent-Karte](https://code.claude.com/docs/de/vs-code.md#use-the-prompt-box) zu öffnen, wo Sie das schreibgeschützte Transkript eines Subagenten öffnen oder ihn stoppen könnenIn der VS Code-Erweiterung wählen Sie **Hooks** oder **Permissions** im Abschnitt „Anpassen“ des Befehlsmenüs, um [Hooks und Berechtigungsregeln](https://code.claude.com/docs/de/vs-code.md#use-the-prompt-box) in Ihren Benutzer-, Projekt- und lokalen Einstellungen hinzuzufügen oder zu entfernenClaude kann ein [Browser-Tab-Symbol](https://code.claude.com/docs/de/artifacts.md#create-an-artifact) auswählen, das zu jedem Artefakt passt, das es veröffentlichtIn Claude Code im Web können Sie eine eingereihte Nachricht in einer Cloud-Sitzung zurücknehmen, bevor Claude sie liest: entfernen Sie sie aus der Warteschlange oder drücken Sie `Esc` oder `Up`, und der Text kehrt zum Nachrichtenfeld zurück

41 41 

42[Vollständiges Changelog für v2.1.263–v2.1.269 →](https://code.claude.com/docs/en/changelog.md#2-1-263)42[Vollständiges Changelog für v2.1.263–v2.1.269 →](https://code.claude.com/docs/en/changelog.md#2-1-263)

workflows.md +93 −93

Details

31 31 

32Die Verlagerung des Plans in Code ermöglicht es einem Workflow auch, ein wiederholbares Qualitätsmuster anzuwenden, nicht nur mehr Agenten auszuführen: Er kann unabhängige Agenten gegenseitig die Ergebnisse des anderen gegnerisch überprüfen lassen, bevor sie gemeldet werden, oder einen Plan aus mehreren Blickwinkeln entwerfen und diese gegeneinander abwägen, sodass Sie ein vertrauenswürdigeres Ergebnis erhalten als bei einem einzelnen Durchgang.32Die Verlagerung des Plans in Code ermöglicht es einem Workflow auch, ein wiederholbares Qualitätsmuster anzuwenden, nicht nur mehr Agenten auszuführen: Er kann unabhängige Agenten gegenseitig die Ergebnisse des anderen gegnerisch überprüfen lassen, bevor sie gemeldet werden, oder einen Plan aus mehreren Blickwinkeln entwerfen und diese gegeneinander abwägen, sodass Sie ein vertrauenswürdigeres Ergebnis erhalten als bei einem einzelnen Durchgang.

33 33 

34## Einen gebündelten Workflow ausführen34## Einen mitgelieferten Workflow ausführen

35 35 

36Die schnellste Möglichkeit, einen Workflow in Aktion zu sehen, ist die Ausführung von `/deep-research`, dem [integrierten Workflow](#bundled-workflows), den Claude Code zum Untersuchen einer Frage über viele Quellen hinweg enthält. Sie sehen, wie Agenten im Hintergrund eine Reihe von Phasen durcharbeiten, während Ihre Sitzung frei bleibt, und erhalten am Ende einen Bericht statt eines Turn-by-Turn-Transkripts.36Am schnellsten sehen Sie einen Workflow in Aktion, wenn Sie `/deep-research` ausführen, den [integrierten Workflow](#bundled-workflows), den Claude Code für die Untersuchung einer Frage über viele Quellen hinweg mitbringt. Sie sehen, wie Agenten im Hintergrund eine Reihe von Phasen durchlaufen, während Ihre Sitzung frei bleibt, und erhalten am Ende einen einzigen Bericht statt eines Transkripts Turn für Turn.

37 37 

38**1. Workflow ausführen**38**1. Workflow ausführen**

39 39 

40Führen Sie `/deep-research` mit einer Frage aus, die Sie untersuchen möchten. Es verteilt Web-Suchen über mehrere Blickwinkel, ruft die gefundenen Quellen ab und überprüft sie gegenseitig, und erstellt einen zitierten Bericht.40Führen Sie `/deep-research` mit einer Frage aus, die untersucht werden soll. Der Workflow verteilt Websuchen auf mehrere Blickwinkel, ruft die gefundenen Quellen ab, gleicht sie miteinander ab und fasst die Ergebnisse zu einem Bericht mit Quellenangaben zusammen.

41 41 

42```text wrap theme={null}42```text wrap theme={null}

43/deep-research What changed in the Node.js permission model between v20 and v22?43/deep-research What changed in the Node.js permission model between v20 and v22?


45 45 

46**2. Workflows zulassen**46**2. Workflows zulassen**

47 47 

48Claude Code fragt, ob der Workflow zulässig sein soll. Wählen Sie **Ja**, um fortzufahren. Die genaue Berechtigungsabfrage hängt von Ihrem Berechtigungsmodus ab. Siehe [Genehmigen Sie den Plan, bevor er ausgeführt wird](#approve-the-plan-before-it-runs) für die Optionen pro Modus.48Claude Code fragt, ob der Workflow zugelassen werden soll. Wählen Sie **Yes**, um fortzufahren. Die genaue Abfrage hängt von Ihrem Berechtigungsmodus ab. Unter [Den Plan vor der Ausführung genehmigen](#approve-the-plan-before-it-runs) finden Sie die Optionen für jeden Modus.

49 49 

50**3. Fortschritt beobachten**50**3. Fortschritt verfolgen**

51 51 

52Die Ausführung startet im Hintergrund. Führen Sie `/workflows` aus, um ihre Fortschrittsansicht zu öffnen:52Die Ausführung startet im Hintergrund. Führen Sie `/workflows` aus, um die Fortschrittsansicht zu öffnen:

53 53 

54```text wrap theme={null}54```text wrap theme={null}

55/workflows55/workflows

56```56```

57 57 

58Falls `/workflows` stattdessen eine Liste von Ausführungen anzeigt, wählen Sie die gerade gestartete Ausführung aus und drücken Sie die Eingabetaste. Die Ansicht zeigt jede Phase mit ihrer Agentenzahl. Führen Sie einen Drilldown in jede Phase durch, um ihre Agenten und deren Ergebnisse anzuzeigen. Siehe [Beobachten Sie die Ausführung](#watch-the-run) für den vollständigen Satz von Steuerelementen.58Wenn `/workflows` stattdessen eine Liste von Ausführungen anzeigt, wählen Sie die gerade gestartete Ausführung aus und drücken Sie Enter. Die Ansicht zeigt jede Phase mit ihrer Anzahl an Agenten. Öffnen Sie eine beliebige Phase, um ihre Agenten und deren jeweilige Ergebnisse zu sehen. Unter [Die Ausführung verfolgen](#watch-the-run) finden Sie alle verfügbaren Steuerelemente.

59 59 

60Sie können auch vom Aufgabenpanel unter dem Eingabefeld aus beobachten: Während die Ausführung läuft, wird dort eine einzeilige Fortschrittsübersicht angezeigt. Drücken Sie die Abwärts-Taste, um den Fokus darauf zu legen, und dann die Eingabetaste, um es zu erweitern.60Sie können den Fortschritt auch im Aufgabenbereich unterhalb des Eingabefelds verfolgen: Dort erscheint während der Ausführung eine einzeilige Fortschrittsübersicht. Drücken Sie die Pfeiltaste nach unten, um sie zu fokussieren, und dann Enter, um sie zu erweitern.

61 61 

62**4. Bericht lesen**62**4. Bericht lesen**

63 63 

64Wenn die Ausführung abgeschlossen ist, landet der Bericht in Ihrer Sitzung. Er zitiert die Quellen, aus denen jeder Anspruch stammt, wobei Ansprüche, die die Überprüfung nicht überstanden haben, bereits herausgefiltert sind.64Wenn die Ausführung abgeschlossen ist, erscheint der Bericht in Ihrer Sitzung. Er nennt für jede Aussage die Quellen, aus denen sie stammt, wobei Aussagen, die dem Abgleich nicht standgehalten haben, bereits herausgefiltert sind.

65 65 

66Wenn die Verifier-Agenten einen Anspruch nicht überprüfen können, z. B. nach einer Ratenbegrenzung oder einem API-Fehler, listet der Bericht diesen Anspruch als unverified statt als widerlegt auf.66Wenn die Prüf-Agenten eine Aussage nicht überprüfen können, etwa nach einem Rate-Limit oder einem API-Fehler, führt der Bericht diese Aussage als nicht verifiziert auf, statt sie als widerlegt zu werten.

67 67 

68Um einen Workflow für Ihre eigene Aufgabe auszuführen, [lassen Sie Claude einen schreiben](#have-claude-write-a-workflow), und sobald eine Ausführung das tut, was Sie wollten, können Sie ihn [speichern](#save-the-workflow-for-reuse) als Befehl Ihres eigenen.68Um einen Workflow für Ihre eigene Aufgabe auszuführen, [lassen Sie Claude einen schreiben](#have-claude-write-a-workflow). Sobald eine Ausführung das gewünschte Ergebnis liefert, können Sie sie als eigenen Befehl [speichern](#save-the-workflow-for-reuse).

69 69 

70### Gebündelte Workflows70### Mitgelieferte Workflows

71 71 

72Claude Code enthält `/deep-research` als integrierten Workflow:72Claude Code enthält `/deep-research` als integrierten Workflow:

73 73 

74| Befehl | Was er tut |74| Befehl | Funktion |

75| :- | :- |75| :- | :- |

76| `/deep-research <question>` | Verteilt Web-Suchen zu einer Frage über mehrere Blickwinkel, ruft die gefundenen Quellen ab und überprüft sie gegenseitig, stimmt über jeden Anspruch ab und gibt einen zitierten Bericht mit herausgefilterten Ansprüchen zurück, die die Überprüfung nicht überstanden haben. Erfordert, dass das [WebSearch-Tool](https://code.claude.com/docs/de/tools-reference.md#websearch-tool-behavior) verfügbar ist |76| `/deep-research <question>` | Verteilt Websuchen zu einer Frage auf mehrere Blickwinkel, ruft die gefundenen Quellen ab und gleicht sie miteinander ab, stimmt über jede Aussage ab und liefert einen Bericht mit Quellenangaben, aus dem Aussagen, die dem Abgleich nicht standgehalten haben, herausgefiltert sind. Setzt voraus, dass das [WebSearch-Tool](https://code.claude.com/docs/de/tools-reference.md#websearch-tool-behavior) verfügbar ist |

77 77 

78`/deep-research` wird nur ausgeführt, wenn Sie es aufrufen.78`/deep-research` wird nur ausgeführt, wenn Sie den Workflow aufrufen.

79 79 

80[Workflows, die Sie selbst speichern](#save-the-workflow-for-reuse), werden auf die gleiche Weise zu Befehlen und erscheinen in der `/`-Autovervollständigung neben den gebündelten.80[Workflows, die Sie selbst speichern](#save-the-workflow-for-reuse), werden auf die gleiche Weise zu Befehlen und erscheinen in der `/`-Autovervollständigung neben den mitgelieferten.

81 81 

82### Beobachten Sie die Ausführung82### Die Ausführung verfolgen

83 83 

84Workflows werden im Hintergrund ausgeführt, sodass die Sitzung reaktionsschnell bleibt, während Agenten arbeiten. Führen Sie `/workflows` jederzeit aus, um laufende und abgeschlossene Workflows aufzulisten, und wählen Sie dann einen aus, um seine Fortschrittsansicht zu öffnen. Wenn die Sitzung nur eine Ausführung hat, überspringt `/workflows` die Liste und öffnet diese Ausführung. Um einen laufenden Workflow aus der Liste heraus zu stoppen, ohne ihn zu öffnen, wählen Sie ihn aus und drücken Sie `x`.84Workflows laufen im Hintergrund, sodass die Sitzung reaktionsfähig bleibt, während Agenten arbeiten. Führen Sie jederzeit `/workflows` aus, um laufende und abgeschlossene Workflows aufzulisten, und wählen Sie dann einen aus, um seine Fortschrittsansicht zu öffnen. Wenn die Sitzung nur eine Ausführung hat, überspringt `/workflows` die Liste und öffnet diese Ausführung direkt. Um einen laufenden Workflow aus der Liste heraus zu stoppen, ohne ihn zu öffnen, wählen Sie ihn aus und drücken Sie `x`.

85 85 

86Die Fortschrittsansicht zeigt jede Phase mit ihren Agentenzahlen. Die Fußzeile listet die Taste für jede Aktion auf:86Die Fortschrittsansicht zeigt jede Phase mit ihrer Anzahl an Agenten. Die Fußzeile listet die Taste für jede Aktion auf:

87 87 

88| Taste | Aktion |88| Taste | Aktion |

89| :- | :- |89| :- | :- |

90| `↑` / `↓` | Wählen Sie eine Phase oder einen Agenten aus |90| `↑` / `↓` | Eine Phase oder einen Agenten auswählen |

91| `Enter` oder `→` | Führen Sie einen Drilldown in die ausgewählte Phase durch, dann in die Details eines Agenten. In den Details erweitert oder reduziert `Enter` diese |91| `Enter` oder `→` | Die ausgewählte Phase öffnen, dann die Details eines Agenten. In den Details erweitert oder reduziert `Enter` die Ansicht |

92| `Esc` oder `←` | Gehen Sie eine Ebene zurück |92| `Esc` oder `←` | Eine Ebene zurückgehen |

93| `j` / `k` | Scrollen Sie innerhalb der Agenten-Details, wenn diese überläuft |93| `j` / `k` | Innerhalb der Agentendetails scrollen, wenn diese überlaufen |

94| `f` | Filtern Sie die Agentenliste in der ausgewählten Phase nach Status. Drücken Sie erneut, um zu wechseln |94| `f` | Die Agentenliste in der ausgewählten Phase nach Status filtern. Erneut drücken, um durchzuschalten |

95| `p` | Unterbrechen oder fortsetzen Sie die Ausführung |95| `p` | Die Ausführung pausieren oder fortsetzen |

96| `x` | Beenden Sie den ausgewählten Agenten, oder beenden Sie den gesamten Workflow, wenn der Fokus auf der Ausführung liegt |96| `x` | Den ausgewählten Agenten stoppen oder den gesamten Workflow stoppen, wenn der Fokus auf der Ausführung liegt |

97| `r` | Starten Sie den ausgewählten laufenden Agenten neu |97| `r` | Den ausgewählten laufenden Agenten neu starten |

98| `s` | [Speichern](#save-the-workflow-for-reuse) Sie das Skript der Ausführung als Befehl |98| `s` | Das Skript der Ausführung als Befehl [speichern](#save-the-workflow-for-reuse) |

99 99 

100Die Agenten-Details listen die Eingabeaufforderung des Agenten, seine letzten Toolaufrufe und sein Ergebnis auf. Jeder Aufruf zeigt seinen Status an, z. B. noch laufend oder fehlgeschlagen. Wenn der Agent eine eigene Aufgabenliste führt, zeigen die Details diese auch an, mit dem Status jeder Aufgabe.100Die Agentendetails zeigen den Prompt des Agenten, seine letzten Tool-Aufrufe und sein Ergebnis. Für jeden Aufruf wird sein Status angezeigt, etwa ob er noch läuft oder fehlgeschlagen ist. Wenn der Agent eine eigene Aufgabenliste führt, zeigen die Details auch diese an, jeweils mit dem Status jeder Aufgabe.

101 101 

102Drücken Sie `Enter`, um die Details zu erweitern. Die Eingabeaufforderung und das Ergebnis werden dann vollständig angezeigt, und jeder aufgelistete Aufruf zeigt seine Eingabe und den Anfang seines Ergebnisses.102Drücken Sie `Enter`, um die Details zu erweitern. Prompt und Ergebnis werden dann vollständig angezeigt, und jeder aufgeführte Aufruf zeigt seine Eingabe sowie den Anfang seines Ergebnisses.

103 103 

104## Lassen Sie Claude einen Workflow schreiben104## Claude einen Workflow schreiben lassen

105 105 

106Sie können Claude auf zwei Arten einen Workflow für Ihre Aufgabe schreiben lassen:106Sie können Claude auf zwei Arten einen Workflow für Ihre Aufgabe schreiben lassen:

107 107 

108* [Fordern Sie einen Workflow in Ihrer Eingabeaufforderung an](#ask-for-a-workflow-in-your-prompt), entweder in Ihren eigenen Worten oder durch Einbeziehung des Schlüsselworts `ultracode`, und Claude schreibt einen für die Aufgabe.108* [Fordern Sie einen Workflow](#ask-for-a-workflow-in-your-prompt) in Ihrem Prompt an, entweder in Ihren eigenen Worten oder mit dem Schlüsselwort `ultracode`, und Claude schreibt einen für die Aufgabe.

109* [Lassen Sie Claude mit Ultracode entscheiden](#let-claude-decide-with-ultracode): Setzen Sie `/effort ultracode` und Claude plant einen Workflow für jede wesentliche Aufgabe in der Sitzung.109* [Lassen Sie Claude mit ultracode entscheiden](#let-claude-decide-with-ultracode): Setzen Sie `/effort ultracode`, und Claude plant für jede substanzielle Aufgabe in der Sitzung einen Workflow.

110 110 

111Sie können auch einen Workflow-Befehl ausführen, der bereits vorhanden ist: ein [gebündelter Workflow](#bundled-workflows) wie `/deep-research` oder einer, den Sie [gespeichert haben](#save-the-workflow-for-reuse).111Sie können auch einen bereits vorhandenen Workflow-Befehl ausführen: einen [mitgelieferten Workflow](#bundled-workflows) wie `/deep-research` oder einen, den Sie [gespeichert](#save-the-workflow-for-reuse) haben.

112 112 

113### Fordern Sie einen Workflow in Ihrer Eingabeaufforderung an113### Einen Workflow im Prompt anfordern

114 114 

115Um eine einzelne Aufgabe als Workflow auszuführen, ohne die Anstrengungsebene der Sitzung zu ändern, fügen Sie das Schlüsselwort `ultracode` in Ihrer Eingabeaufforderung ein. Das Fragen in Ihren eigenen Worten, zum Beispiel „einen Workflow verwenden“ oder „einen Workflow ausführen“, funktioniert auch: Claude behandelt eine direkte Anfrage als die gleiche Opt-in.115Um eine einzelne Aufgabe als Workflow auszuführen, ohne die Effort-Stufe der Sitzung zu ändern, nehmen Sie das Schlüsselwort `ultracode` in Ihren Prompt auf. Eine Anfrage in Ihren eigenen Worten, zum Beispiel „use a workflow“ oder „run a workflow“, funktioniert ebenfalls: Claude behandelt eine direkte Anfrage als dieselbe ausdrückliche Zustimmung.

116 116 

117```text wrap theme={null}117```text wrap theme={null}

118ultracode: audit every API endpoint under src/routes/ for missing auth checks118ultracode: audit every API endpoint under src/routes/ for missing auth checks

119```119```

120 120 

121Claude Code hebt das Schlüsselwort in Ihrer Eingabe hervor und Claude schreibt stattdessen ein Workflow-Skript für die Aufgabe, anstatt es Zug um Zug durchzuarbeiten. Das Schlüsselwort wählt nur, wie Claude die Arbeit strukturiert: Die Agenten-Tool-Aufrufe erhalten die gleichen Berechtigungsprüfungen und [Sandboxing](https://code.claude.com/docs/de/sandboxing.md) wie jeder andere Tool-Aufruf in der Sitzung.121Claude Code hebt das Schlüsselwort in Ihrer Eingabe hervor, und Claude schreibt ein Workflow-Skript für die Aufgabe, anstatt sie Turn für Turn abzuarbeiten. Das Schlüsselwort bestimmt nur, wie Claude die Arbeit strukturiert: Die Tool-Aufrufe der Agenten durchlaufen dieselben Berechtigungsprüfungen und dasselbe [Sandboxing](https://code.claude.com/docs/de/sandboxing.md) wie jeder andere Tool-Aufruf in der Sitzung.

122 122 

123Wenn die Ausführung das tut, was Sie wollten, können Sie [sie danach als Befehl speichern](#save-the-workflow-for-reuse). Wenn Sie bereits einen Orchestrator auf andere Weise erstellt haben, z. B. einen Ordner mit Subagenten-Eingabeaufforderungen oder eine Fähigkeit, die Arbeit verteilt, können Sie Claude darauf hinweisen und einen Workflow anfordern, der dasselbe tut.123Wenn der Lauf das tut, was Sie wollten, können Sie ihn anschließend [als Befehl speichern](#save-the-workflow-for-reuse). Wenn Sie bereits einen auf andere Weise erstellten Orchestrator haben, etwa einen Ordner mit Subagenten-Prompts oder einen Skill, der Arbeit aufteilt, können Sie Claude darauf verweisen und einen Workflow anfordern, der dasselbe tut.

124 124 

125#### Verwerfen oder deaktivieren Sie das Schlüsselwort125#### Das Schlüsselwort verwerfen oder deaktivieren

126 126 

127Wenn Sie nicht beabsichtigt haben, einen Workflow zu starten, drücken Sie `Option+W` auf macOS oder `Alt+W` auf Windows und Linux, um die Hervorhebung für diese Eingabeaufforderung zu verwerfen, oder drücken Sie Rücktaste, während sich der Cursor direkt nach dem hervorgehobenen Schlüsselwort befindet. Um zu verhindern, dass das Schlüsselwort überhaupt ausgelöst wird, deaktivieren Sie den Ultracode-Schlüsselwort-Trigger in `/config`.127Wenn Sie keinen Workflow starten wollten, drücken Sie unter macOS `Option+W` bzw. unter Windows und Linux `Alt+W`, um die Hervorhebung für diesen Prompt zu verwerfen, oder drücken Sie die Rücktaste, während der Cursor direkt hinter dem hervorgehobenen Schlüsselwort steht. Um zu verhindern, dass das Schlüsselwort überhaupt etwas auslöst, deaktivieren Sie Ultracode keyword trigger in `/config`.

128 128 

129#### Wo das Schlüsselwort funktioniert129#### Wo das Schlüsselwort funktioniert

130 130 

131Das Schlüsselwort ist ein Opt-in nur in einer Eingabeaufforderung, die Sie selbst eingeben: an der interaktiven Eingabeaufforderung, in einem IDE-Erweiterungspanel, in einem [Remote Control](https://code.claude.com/docs/de/remote-control.md)-Client oder in einer Agent SDK-Anwendung, die Ihre Tastatureingabe mit [`origin`](https://code.claude.com/docs/de/agent-sdk/typescript#sdkmessageorigin) als `{ kind: "human" }` kennzeichnet. Es startet keinen Workflow, wenn er auf andere Weise in die Sitzung gelangt:131Das Schlüsselwort gilt nur in einem Prompt, den Sie selbst eingeben, als ausdrückliche Zustimmung: im interaktiven Prompt, in einem Panel einer IDE-Erweiterung, in einem [Remote Control](https://code.claude.com/docs/de/remote-control.md)-Client oder in einer Agent SDK-Anwendung, die den [`origin`](https://code.claude.com/docs/de/agent-sdk/typescript#sdkmessageorigin) Ihrer Tastatureingabe als `{ kind: "human" }` kennzeichnet. Es startet keinen Workflow, wenn es die Sitzung auf anderem Weg erreicht:

132 132 

133* eine Eingabeaufforderung, die mit `-p` übergeben wird133* ein mit `-p` übergebener Prompt

134* eine Eingabeaufforderung, die eine Agent SDK-Anwendung sendet, ohne sie als menschliche Eingabe zu kennzeichnen134* ein Prompt, den eine Agent SDK-Anwendung sendet, ohne ihn als menschliche Eingabe zu kennzeichnen

135* eine geplante Task-Eingabeaufforderung135* der Prompt einer geplanten Aufgabe

136* eine Webhook-Nutzlast oder ein Pull-Request-Kommentar, der in das Gespräch weitergeleitet wird136* eine Webhook-Payload oder ein Pull-Request-Kommentar, der in die Konversation weitergeleitet wird

137 137 

138### Lassen Sie Claude mit Ultracode entscheiden138### Claude mit ultracode entscheiden lassen

139 139 

140Ultracode ist eine Claude Code-Einstellung, die automatische Workflow-Orchestrierung für die Sitzung aktiviert, auf welcher [Anstrengungsebene](https://code.claude.com/docs/de/model-config.md#adjust-effort-level) auch immer die Sitzung läuft. Wenn es aktiviert ist, plant Claude einen Workflow für jede wesentliche Aufgabe, anstatt auf Sie zu warten. Aktivieren Sie es an der Claude Code-Eingabeaufforderung:140Ultracode ist eine Einstellung von Claude Code, die die automatische Workflow-Orchestrierung für die Sitzung aktiviert, unabhängig davon, mit welcher [Effort-Stufe](https://code.claude.com/docs/de/model-config.md#adjust-effort-level) die Sitzung läuft. Wenn sie aktiviert ist, plant Claude für jede substanzielle Aufgabe einen Workflow, anstatt darauf zu warten, dass Sie danach fragen. Aktivieren Sie sie im Prompt von Claude Code:

141 141 

142```text wrap theme={null}142```text wrap theme={null}

143/effort ultracode143/effort ultracode

144```144```

145 145 

146Um eine Sitzung mit bereits aktiviertem Ultracode zu beginnen, starten Sie mit `claude --effort ultracode`, was auch die Effort-Stufe auf `xhigh` setzt.146Um eine Sitzung mit bereits aktiviertem ultracode zu starten, starten Sie mit `claude --effort ultracode`, wodurch auch die Effort-Stufe auf `xhigh` gesetzt wird.

147 147 

148Um es vom `/effort`-Schieberegler aus zu aktivieren, drücken Sie `Tab`, um den **Ultracode**-Schalter umzuschalten, und dann `Enter`, um es anzuwenden. [Anstrengungsebene anpassen](https://code.claude.com/docs/de/model-config.md#adjust-effort-level) listet die Routen auf, die Ultracode aktivieren.148Um ultracode über den `/effort`-Schieberegler zu aktivieren, drücken Sie `Tab`, um den Schalter **Ultracode** umzulegen, und dann `Enter`, um die Änderung anzuwenden. Unter [Effort-Stufe anpassen](https://code.claude.com/docs/de/model-config.md#adjust-effort-level) finden Sie die Wege, auf denen sich ultracode aktivieren lässt.

149 149 

150Mit aktiviertem Ultracode entscheidet Claude, wann eine Aufgabe einen Workflow rechtfertigt. Eine einzelne Anfrage kann sich in mehrere Workflows hintereinander verwandeln: einen zum Verstehen des Codes, einen zum Vornehmen der Änderung und einen zum Überprüfen. Dies gilt für jede Aufgabe in der Sitzung, sodass jede Anfrage mehr Token verwendet und länger dauert als die gleiche Anfrage ohne einen Workflow. Bei einem Abonnementplan werden diese Token auf Ihre Nutzungsgrenzen angerechnet, sodass eine Sitzung mit aktiviertem Ultracode eine Sitzungs- oder Wochengrenze schneller erreicht als die gleiche Arbeit mit deaktiviertem Ultracode.150Wenn ultracode aktiviert ist, entscheidet Claude, wann eine Aufgabe einen Workflow rechtfertigt. Eine einzelne Anfrage kann zu mehreren aufeinanderfolgenden Workflows werden: einer, um den Code zu verstehen, einer, um die Änderung vorzunehmen, und einer, um sie zu überprüfen. Dies gilt für jede Aufgabe in der Sitzung, sodass jede Anfrage mehr Token verbraucht und länger dauert als dieselbe Anfrage ohne Workflow. Bei einem Abonnement werden diese Token auf Ihre Nutzungslimits angerechnet, sodass eine Sitzung mit aktiviertem ultracode ein Sitzungs- oder Wochenlimit früher erreicht als dieselbe Arbeit mit deaktiviertem ultracode.

151 151 

152Das Aktivieren von Ultracode bedeutet bereits, dass Sie sich für große Ausführungen anmelden, daher gelten diese Prüfungen nicht, während es aktiviert ist:152Mit der Aktivierung von ultracode stimmen Sie bereits großen Läufen zu, daher gelten diese Prüfungen nicht, solange es aktiviert ist:

153 153 

154* Die [`Large workflow`-Warnung](#cost) wird bei einer Workflow-Ausführung nicht angezeigt154* Die [Warnung `Large workflow`](#cost) erscheint bei einem Workflow-Lauf nicht

155* Das [gleichzeitige Subagenten-Limit](https://code.claude.com/docs/de/sub-agents.md#concurrent-subagent-limit) der Sitzung wird nicht für die Subagenten erzwungen, die Claude mit dem Agent-Tool spawnt155* Das [Limit für gleichzeitige Subagenten](https://code.claude.com/docs/de/sub-agents.md#concurrent-subagent-limit) der Sitzung wird für die Subagenten, die Claude mit dem Agent-Tool startet, nicht durchgesetzt

156* Im automatischen Berechtigungsmodus werden Sie nicht aufgefordert, [den ersten Workflow-Start zu genehmigen](#approve-the-plan-before-it-runs)156* Im automatischen Berechtigungsmodus werden Sie nicht gebeten, [den ersten Workflow-Start zu genehmigen](#approve-the-plan-before-it-runs)

157 157 

158`/effort ultracode` gilt für die aktuelle Sitzung; um jede Sitzung damit zu starten, setzen Sie die Einstellung [`ultracode`](https://code.claude.com/docs/de/settings-reference#ultracode). Schalten Sie es mit `/effort ultracode off` aus, wenn Sie zu alltäglicher Arbeit zurückkehren. Der `/effort`-Schieberegler bietet den Schalter nur an, [wenn Ultracode verfügbar ist](https://code.claude.com/docs/de/model-config.md#when-ultracode-is-available). Vor v2.1.284 setzte `/effort ultracode` die Sitzung auf `xhigh`, und `/effort ultracode off` schlug mit `Invalid argument` fehl.158`/effort ultracode` gilt für die aktuelle Sitzung; damit jede Sitzung damit startet, setzen Sie die Einstellung [`ultracode`](https://code.claude.com/docs/de/settings-reference#ultracode). Deaktivieren Sie es mit `/effort ultracode off`, wenn Sie zur alltäglichen Arbeit zurückkehren. Der `/effort`-Schieberegler bietet den Schalter nur an, [wenn ultracode verfügbar ist](https://code.claude.com/docs/de/model-config.md#when-ultracode-is-available). Vor v2.1.284 setzte `/effort ultracode` die Sitzung auf `xhigh`, und `/effort ultracode off` schlug mit `Invalid argument` fehl.

159 159 

160### Genehmigen Sie den Plan, bevor er ausgeführt wird160### Den Plan vor der Ausführung genehmigen

161 161 

162In der CLI zeigt die Eingabeaufforderung pro Ausführung die geplanten Phasen und diese Optionen:162In der CLI zeigt die Abfrage pro Lauf die geplanten Phasen und diese Optionen:

163 163 

164* **Ja, führen Sie es aus**: Starten Sie die Ausführung164* **Yes, run it**: startet den Lauf

165* **Ja, und fragen Sie nicht mehr nach `<name>` in `<path>`**: Starten Sie, und überspringen Sie diese Eingabeaufforderung für diesen Workflow in diesem Projekt von nun an. Claude Code bietet diese Option, wenn Sie einen gebündelten, gespeicherten oder Plugin-Workflow nach Name ausführen, nicht für ein Skript, das Claude für die aktuelle Aufgabe geschrieben hat.165* **Yes, and don't ask again for `<name>` in `<path>`**: startet den Lauf und überspringt diese Abfrage für diesen Workflow in diesem Projekt von nun an. Claude Code bietet diese Option an, wenn Sie einen mitgelieferten, gespeicherten oder Plugin-Workflow über seinen Namen ausführen, nicht jedoch für ein Skript, das Claude für die aktuelle Aufgabe geschrieben hat.

166* **Rohes Skript anzeigen**: Lesen Sie das Skript, bevor Sie entscheiden166* **View raw script**: Sie können das Skript lesen, bevor Sie sich entscheiden

167* **Nein**: Abbrechen167* **No**: bricht ab

168 168 

169`Ctrl+G` öffnet das Skript in Ihrem Editor. Wenn **Ja, ausführen** oder **Nein** ausgewählt ist, drücken Sie `Tab`, um Ihrer Antwort [einen Kommentar hinzuzufügen](https://code.claude.com/docs/de/permissions.md#add-a-comment-when-you-answer-a-permission-prompt).169`Ctrl+G` öffnet das Skript in Ihrem Editor. Wenn **Yes, run it** oder **No** ausgewählt ist, drücken Sie `Tab`, um Ihrer Antwort [einen Kommentar hinzuzufügen](https://code.claude.com/docs/de/permissions.md#add-a-comment-when-you-answer-a-permission-prompt).

170 170 

171Ob Sie diese Eingabeaufforderung sehen, hängt von Ihrem [Berechtigungsmodus](https://code.claude.com/docs/de/permission-modes.md) ab:171Ob Sie diese Abfrage sehen, hängt von Ihrem [Berechtigungsmodus](https://code.claude.com/docs/de/permission-modes.md) ab:

172 172 

173| Berechtigungsmodus | Wann Sie aufgefordert werden |173| Berechtigungsmodus | Wann Sie gefragt werden |

174| :- | :- |174| :- | :- |

175| Automatisch | Nur beim ersten Start. Jedes **Ja** zeichnet die Zustimmung in Ihren Benutzereinstellungen auf, und spätere Starts werden ohne Eingabeaufforderung gestartet. Vollständig übersprungen, wenn Ultracode aktiviert ist |175| Auto | Nur beim ersten Start. Jedes **Yes** speichert Ihre Zustimmung in Ihren Benutzereinstellungen, und spätere Starts erfolgen ohne Abfrage. Wird vollständig übersprungen, wenn ultracode aktiviert ist |

176| Manuell, Bearbeitungen akzeptieren | Jede Ausführung, es sei denn, Sie haben **Ja, und fragen Sie nicht mehr** für diesen Workflow in diesem Projekt ausgewählt |176| Manuell, Bearbeitungen akzeptieren | Bei jedem Lauf, es sei denn, Sie haben für diesen Workflow in diesem Projekt **Yes, and don't ask again** ausgewählt |

177| Berechtigungen umgehen | Claude Code fordert Sie nicht auf. Die Ausführung startet sofort |177| Berechtigungen umgehen | Claude Code fragt Sie nicht. Der Lauf startet sofort |

178| `claude -p`, Agent SDK | Claude Code fordert Sie nicht auf |178| `claude -p`, Agent SDK | Claude Code fragt Sie nicht |

179 179 

180In `claude -p` und dem Agent SDK zeigt Claude Code diese Eingabeaufforderung nie. Es führt den Workflow-Tool-Aufruf durch die gleiche [Berechtigungsevaluierung](https://code.claude.com/docs/de/agent-sdk/permissions.md#how-permissions-are-evaluated) wie der Rest der Sitzung aus, sodass Ablehnungsregeln, Anfragregeln und `dontAsk`-Modus auf den Start angewendet werden, wie sie auf jeden Tool-Aufruf angewendet werden. Um den Workflow-Start in diesen Ausführungen zu ermöglichen, verwenden Sie eines dieser:180In `claude -p` und im Agent SDK zeigt Claude Code diese Abfrage nie an. Es führt den Workflow-Tool-Aufruf durch dieselbe [Berechtigungsauswertung](https://code.claude.com/docs/de/agent-sdk/permissions.md#how-permissions-are-evaluated) wie den Rest der Sitzung, sodass deny-Regeln, ask-Regeln und der `dontAsk`-Modus für den Start genauso gelten wie für jeden Tool-Aufruf. Um den Workflow in diesen Läufen starten zu lassen, verwenden Sie eine dieser Möglichkeiten:

181 181 

182* **Berechtigungsregel**: Fügen Sie `Workflow` zu Ihren allow-Regeln hinzu, um jeden Workflow zu genehmigen, oder `Workflow(<name>)`, um einen gespeicherten Workflow nach Namen zu genehmigen.182* **Berechtigungsregel**: Fügen Sie `Workflow` zu Ihren allow-Regeln hinzu, um jeden Workflow zu genehmigen, oder `Workflow(<name>)`, um einen gespeicherten Workflow über seinen Namen zu genehmigen.

183* **Berechtigungsmodus Auto**: Führen Sie im [Auto-Modus](https://code.claude.com/docs/de/permission-modes.md#eliminate-prompts-with-auto-mode) aus, in dem der Klassifikator den Aufruf überprüft und ihn genehmigen kann.183* **Automatischer Berechtigungsmodus**: Führen Sie im [Auto-Modus](https://code.claude.com/docs/de/permission-modes.md#eliminate-prompts-with-auto-mode) aus, in dem der Klassifikator den Aufruf prüft und genehmigen kann.

184* **Modus „Berechtigungen umgehen“**: Führen Sie im Modus „Berechtigungen umgehen“ aus.184* **Modus „Berechtigungen umgehen“**: Führen Sie im Modus „Berechtigungen umgehen“ aus.

185* **Ein Hook**: Geben Sie aus einem [`PreToolUse`](https://code.claude.com/docs/de/hooks#pretooluse)-Hook `"allow"` für den Aufruf zurück. Im [Plan-Modus](https://code.claude.com/docs/de/permission-modes.md#analyze-before-you-edit-with-plan-mode) startet der Workflow nicht allein aufgrund der Genehmigung durch den Hook; verwenden Sie dort stattdessen eine Berechtigungsregel oder die Genehmigung Ihres Hosts.185* **Ein Hook**: Geben Sie für den Aufruf aus einem [`PreToolUse`](https://code.claude.com/docs/de/hooks#pretooluse)-Hook `"allow"` zurück. Im [Plan-Modus](https://code.claude.com/docs/de/permission-modes.md#analyze-before-you-edit-with-plan-mode) startet der Workflow nicht allein aufgrund der Genehmigung durch den Hook; verwenden Sie dort stattdessen eine Berechtigungsregel oder die Genehmigung durch Ihren Host.

186* **Ihr Host**: Ein [`--permission-prompt-tool`](https://code.claude.com/docs/de/cli-reference#cli-flags) oder, mit dem Agent SDK, ein [`canUseTool`](https://code.claude.com/docs/de/agent-sdk/permissions)-Callback genehmigt ihn.186* **Ihr Host**: Ein [`--permission-prompt-tool`](https://code.claude.com/docs/de/cli-reference#cli-flags) oder beim Agent SDK ein [`canUseTool`](https://code.claude.com/docs/de/agent-sdk/permissions)-Callback genehmigt ihn.

187 187 

188In der Desktop-App zeigt eine Genehmigungskarte den Workflow-Namen, die Phasenliste und eine Token-Nutzungswarnung mit den Aktionen **Einmal**, **Immer** und **Ablehnen**. Die Fortschrittsansicht wird im Seitenpanel „Hintergrundaufgaben“ angezeigt.188In der Desktop-App zeigt eine Genehmigungskarte den Workflow-Namen, die Phasenliste und einen Hinweis zur Token-Nutzung mit den Aktionen **Once**, **Always** und **Deny**. Die Fortschrittsansicht erscheint im Seitenbereich Background tasks.

189 189 

190Die Subagenten, die der Workflow spawnt, verwenden Ihre [Berechtigungsregeln](https://code.claude.com/docs/de/settings-reference.md#permission-settings), und Claude Code wählt ihren Berechtigungsmodus nach den Regeln unter [welcher Berechtigungsmodus ein Subagent ausgeführt wird](https://code.claude.com/docs/de/sub-agents.md#permission-modes). Um Eingabeaufforderungen bei einer langen Ausführung zu vermeiden, fügen Sie die Tools, die die Agenten benötigen, vor dem Start zu Ihren Zulassungsregeln hinzu.190Die Subagenten, die der Workflow startet, verwenden Ihre [Berechtigungsregeln](https://code.claude.com/docs/de/settings-reference.md#permission-settings), und Claude Code wählt ihren Berechtigungsmodus nach den Regeln unter [In welchem Berechtigungsmodus ein Subagent läuft](https://code.claude.com/docs/de/sub-agents.md#permission-modes). Um Abfragen bei einem langen Lauf zu vermeiden, fügen Sie die Tools, die die Agenten benötigen, vor dem Start zu Ihren allow-Regeln hinzu.

191 191 

192### Speichern Sie den Workflow zur Wiederverwendung192### Den Workflow zur Wiederverwendung speichern

193 193 

194Wenn Claude einen Workflow für eine Aufgabe schreibt, die Sie wiederholen werden, können Sie das Skript dieser Ausführung als Befehl speichern. Ein Prozess wie eine Überprüfung, die Sie auf jedem Branch ausführen, führt dann jedes Mal die gleiche Orchestrierung aus.194Wenn Claude einen Workflow für eine Aufgabe schreibt, die Sie wiederholen werden, können Sie das Skript dieses Laufs als Befehl speichern. Ein Prozess wie ein Review, das Sie auf jedem Branch ausführen, läuft dann jedes Mal mit derselben Orchestrierung.

195 195 

196Führen Sie `/workflows` aus, wählen Sie die Ausführung aus, die Sie behalten möchten, und drücken Sie `s`. Im Speicherdialog wechselt Tab zwischen den beiden Speicherorten:196Führen Sie `/workflows` aus, wählen Sie den Lauf aus, den Sie behalten möchten, und drücken Sie `s`. Im Speicherdialog wechselt Tab zwischen den beiden Speicherorten:

197 197 

198* `.claude/workflows/` in Ihrem Projekt: Geteilt mit jedem, der das Repo klont198* `.claude/workflows/` in Ihrem Projekt: wird mit allen geteilt, die das Repository klonen

199* `~/.claude/workflows/` in Ihrem Home-Verzeichnis: Verfügbar in jedem Projekt, nur für Sie sichtbar. Wenn Sie [`CLAUDE_CONFIG_DIR`](https://code.claude.com/docs/de/env-vars) setzen, ist dieser Speicherort das `workflows/`-Verzeichnis unter diesem Pfad.199* `~/.claude/workflows/` in Ihrem Home-Verzeichnis: in jedem Projekt verfügbar, nur für Sie sichtbar. Wenn Sie [`CLAUDE_CONFIG_DIR`](https://code.claude.com/docs/de/env-vars) gesetzt haben, ist dieser Speicherort das Verzeichnis `workflows/` unter diesem Pfad.

200 200 

201Der Speicherdialog zeigt den aufgelösten Pfad für den persönlichen Speicherort an. Drücken Sie Enter zum Speichern. Der Workflow wird in zukünftigen Sitzungen von beiden Orten aus als `/<name>` ausgeführt.201Der Speicherdialog zeigt den aufgelösten Pfad für den persönlichen Speicherort an. Drücken Sie Enter, um zu speichern. Der Workflow läuft in künftigen Sitzungen von beiden Speicherorten aus als `/<name>`.

202 202 

203Claude Code überprüft den Speicherort auf Symlinks, bevor geschrieben wird, und zeigt einen Fehler an, anstatt über einen Symlink zu schreiben:203Claude Code prüft den Speicherort vor dem Schreiben auf Symlinks und zeigt einen Fehler an, anstatt über einen Symlink zu schreiben:

204 204 

205* Projektort: Claude Code weigert sich, wenn `.claude`, `.claude/workflows` oder die Zieldatei ein Symlink ist.205* Projektspeicherort: Claude Code verweigert den Vorgang, wenn `.claude`, `.claude/workflows` oder die Zieldatei ein Symlink ist.

206* Persönlicher Ort: Claude Code weigert sich nur, wenn die Zieldatei selbst ein Symlink ist, sodass ein von einem Dotfiles-Tool verwaltetes `~/.claude`-Verzeichnis immer noch funktioniert.206* Persönlicher Speicherort: Claude Code verweigert den Vorgang nur, wenn die Zieldatei selbst ein Symlink ist, sodass ein von einem Dotfiles-Tool verwaltetes `~/.claude`-Verzeichnis weiterhin funktioniert.

207 207 

208In einem Monorepo mit mehreren `.claude/`-Verzeichnissen können Sie Workflows neben dem Paket speichern, auf das sie sich beziehen. Das Speichern am Projektort schreibt in das nächste `.claude/workflows/`-Verzeichnis, das bereits zwischen Ihrem Arbeitsverzeichnis und dem Repository-Root vorhanden ist, oder zum Repository-Root, wenn noch keines vorhanden ist. Projekt-Workflows werden auch aus jedem `.claude/workflows/` entlang dieses Pfads geladen, und wenn mehr als einer denselben Namen definiert, führt Claude Code denjenigen aus, der dem Arbeitsverzeichnis am nächsten ist.208In einem Monorepo mit mehreren `.claude/`-Verzeichnissen können Sie Workflows neben dem Paket ablegen, für das sie gelten. Beim Speichern am Projektspeicherort wird in das nächstgelegene bereits vorhandene `.claude/workflows/`-Verzeichnis zwischen Ihrem Arbeitsverzeichnis und dem Stammverzeichnis des Repositorys geschrieben, oder in das Stammverzeichnis des Repositorys, falls noch keines existiert. Projekt-Workflows werden außerdem aus jedem `.claude/workflows/` entlang dieses Pfads geladen, und wenn mehr als eines denselben Namen definiert, führt Claude Code denjenigen aus, der dem Arbeitsverzeichnis am nächsten liegt.

209 209 

210Wenn ein Projekt-Workflow und ein persönlicher Workflow denselben Namen teilen, wird der Projekt-Workflow ausgeführt.210Wenn ein Projekt-Workflow und ein persönlicher Workflow denselben Namen haben, wird der Projekt-Workflow ausgeführt.

211 211 

212### Verteilen Sie einen Workflow in einem Plugin212### Einen Workflow in einem Plugin verteilen

213 213 

214Um einen Workflow über Teams oder Repositories hinweg zu teilen, fügen Sie ihn in ein [Plugin](https://code.claude.com/docs/de/plugins/overview.md) ein. Platzieren Sie das Skript in einem `workflows/`-Verzeichnis im Plugin-Root, oder verweisen Sie mit dem [`workflows`-Manifestfeld](https://code.claude.com/docs/de/plugins/manifest-reference#fields) auf einen anderen Ort.214Um einen Workflow teams- oder repositoryübergreifend zu teilen, nehmen Sie ihn in ein [Plugin](https://code.claude.com/docs/de/plugins/overview.md) auf. Legen Sie das Skript in einem `workflows/`-Verzeichnis im Stammverzeichnis des Plugins ab, oder verweisen Sie mit dem [Manifest-Feld `workflows`](https://code.claude.com/docs/de/plugins/manifest-reference#fields) auf einen anderen Speicherort.

215 215 

216Plugin-Workflows werden nach dem Plugin-Namen namensgebunden. Ein Plugin namens `acme-tools`, das ein Skript mit `meta.name` `release-audit` enthält, wird als `/acme-tools:release-audit` ausgeführt.216Plugin-Workflows erhalten den Plugin-Namen als Namensraum. Ein Plugin namens `acme-tools`, das ein Skript enthält, dessen `meta.name` `release-audit` lautet, wird als `/acme-tools:release-audit` ausgeführt.

217 217 

218### Übergeben Sie Eingaben an einen gespeicherten Workflow218### Eingaben an einen gespeicherten Workflow übergeben

219 219 

220Ein gespeicherter Workflow kann Eingaben über den Parameter `args` akzeptieren. Das Skript liest ihn als globale Variable namens `args`. Verwenden Sie dies, um eine Forschungsfrage, eine Liste von Zielpfaden oder ein Konfigurationsobjekt zur Laufzeit bereitzustellen, anstatt das Skript für jede Ausführung zu bearbeiten.220Ein gespeicherter Workflow kann Eingaben über den Parameter `args` entgegennehmen. Das Skript liest ihn als globale Variable namens `args`. Verwenden Sie dies, um beim Aufruf eine Forschungsfrage, eine Liste von Zielpfaden oder ein Konfigurationsobjekt zu übergeben, anstatt das Skript für jeden Lauf zu bearbeiten.

221 221 

222Die folgende Eingabeaufforderung führt einen gespeicherten Workflow mit einer Liste von Issue-Nummern aus:222Der folgende Prompt führt einen gespeicherten Workflow mit einer Liste von Issue-Nummern aus:

223 223 

224```text wrap theme={null}224```text wrap theme={null}

225Run /triage-issues on issues 1024, 1025, and 1030225Run /triage-issues on issues 1024, 1025, and 1030

226```226```

227 227 

228Claude übergibt die Liste als strukturierte Daten, sodass das Skript Array- und Objektmethoden auf `args` direkt aufrufen kann, ohne sie zuerst zu analysieren. Wenn `args` weggelassen wird, ist die globale Variable `undefined` innerhalb des Skripts.228Claude übergibt die Liste als strukturierte Daten, sodass das Skript Array- und Objektmethoden direkt auf `args` aufrufen kann, ohne sie vorher zu parsen. Wenn `args` weggelassen wird, ist die globale Variable innerhalb des Skripts `undefined`.

229 229 

230## Beispiel-Workflow-Eingabeaufforderungen230## Beispiel-Workflow-Eingabeaufforderungen

231 231 

worktrees.md +15 −1

Details

214 214 

215### Verwenden Sie einen Worktree-Namen erneut215### Verwenden Sie einen Worktree-Namen erneut

216 216 

217Das Übergeben von `--worktree` eines Namens, dessen Verzeichnis bereits existiert, öffnet diesen vorhandenen Worktree, anstatt einen neuen zu erstellen.217Wenn bereits ein Worktree mit dem Namen existiert, den Sie an `--worktree` übergeben, öffnet Claude Code diesen, anstatt einen neuen zu erstellen. Wenn Claude Code mit einem Fehler abbricht, der `belongs to a different repository` oder `is a leftover worktree` enthält, lesen Sie [Das Worktree-Verzeichnis `belongs to a different repository`](#belongs-to-a-different-repository).

218 218 

219Mit der Standard-`"fresh"`-[Basis](#choose-the-base-branch) wird ein erneut geöffneter Worktree auf den Standard-Branch des Repositorys zurückgesetzt, anstatt bei seinem alten Tip fortzufahren, wenn alle folgenden Bedingungen erfüllt sind:219Mit der Standard-`"fresh"`-[Basis](#choose-the-base-branch) wird ein erneut geöffneter Worktree auf den Standard-Branch des Repositorys zurückgesetzt, anstatt bei seinem alten Tip fortzufahren, wenn alle folgenden Bedingungen erfüllt sind:

220 220 


353 353 

354Ein Fehler, der `This repository is a partial clone` enthält, bedeutet, dass Claude Code nicht alle Git-Objekte abrufen konnte, die der Start-Commit des Worktrees benötigt. Führen Sie den Schritt aus, den der Satz der Meldung nennt, der auf `try again` endet. Versuchen Sie es dann in der Shell erneut, in der Sie diesen Schritt ausgeführt haben: Führen Sie `claude --worktree` aus, oder starten Sie dort `claude` und fragen Sie erneut.354Ein Fehler, der `This repository is a partial clone` enthält, bedeutet, dass Claude Code nicht alle Git-Objekte abrufen konnte, die der Start-Commit des Worktrees benötigt. Führen Sie den Schritt aus, den der Satz der Meldung nennt, der auf `try again` endet. Versuchen Sie es dann in der Shell erneut, in der Sie diesen Schritt ausgeführt haben: Führen Sie `claude --worktree` aus, oder starten Sie dort `claude` und fragen Sie erneut.

355 355 

356### `Can only use --worktree in a git repository`

357 

358Dieser Fehler bedeutet, dass Sie `--worktree` in einem Verzeichnis übergeben haben, das kein Git-Checkout ist, und kein [`WorktreeCreate`-Hook](#non-git-version-control) aktiv ist.

359 

360* Führen Sie in einem Ordner ohne Versionskontrolle dort `git init` aus, erstellen Sie einen ersten Commit und versuchen Sie es dann erneut.

361* Richten Sie in einem Checkout eines anderen Versionskontrollsystems den Hook ein, den die Meldung vorschlägt.

362* Um direkt im Verzeichnis zu arbeiten, starten Sie Claude ohne `--worktree`.

363 

364### Das Worktree-Verzeichnis `belongs to a different repository`

365 

366Die Fehler `belongs to a different repository` und `is a leftover worktree` bedeuten beide, dass Git das Verzeichnis für den von Ihnen übergebenen Worktree-Namen einem anderen Speicherort zuordnet. Dies kann passieren, nachdem Sie ein Projekt kopiert oder verschoben haben.

367 

368Übergeben Sie einen anderen Worktree-Namen. Wenn das Verzeichnis keine Arbeit enthält, die Sie behalten möchten, und Sie kein Projekt kopiert oder verschoben haben, können Sie es entfernen und es mit demselben Namen erneut versuchen. Nach einem Kopieren oder Verschieben kann dieser Wiederholungsversuch mit `is already checked out elsewhere in this repository` fehlschlagen, verwenden Sie daher einen anderen Namen.

369 

356### Claude Code weigert sich, einen Worktree zu verwenden370### Claude Code weigert sich, einen Worktree zu verwenden

357 371 

358Ein Fehler, der mit `Refusing to use <path> as an isolation worktree` beginnt, bedeutet, dass Claude Code die Git-Identität des Verzeichnisses überprüft hat, bevor es es als isolierten Checkout einer Sitzung oder eines Subagents angenommen hat, und es abgelehnt hat. Die Prüfung läuft, ob Claude Code den Worktree erstellt, einen vorhandenen betritt oder einen aus einem früheren Lauf wiederverwenden.372Ein Fehler, der mit `Refusing to use <path> as an isolation worktree` beginnt, bedeutet, dass Claude Code die Git-Identität des Verzeichnisses überprüft hat, bevor es es als isolierten Checkout einer Sitzung oder eines Subagents angenommen hat, und es abgelehnt hat. Die Prüfung läuft, ob Claude Code den Worktree erstellt, einen vorhandenen betritt oder einen aus einem früheren Lauf wiederverwenden.