SpyBara
Go Premium

Documentation 2026-11-05 23:03 UTC to 2026-11-06 23:01 UTC

47 files changed +339 −180. View all changes and history on the product overview
2026
Thu 12 21:00 Wed 11 22:59 Tue 10 21:57 Mon 9 23:02 Sun 8 22:58 Sat 7 23:58 Fri 6 23:01 Thu 5 23:03 Wed 4 23:59 Tue 3 23:58 Mon 2 23:57 Sun 1 23:57
Details

167 167 

168### Werkzeugberechtigungen168### Werkzeugberechtigungen

169 169 

170Claude bestimmt, welche Werkzeuge aufgerufen werden sollen, basierend auf der Aufgabe, aber Sie kontrollieren, ob diese Aufrufe ausgeführt werden dürfen. Sie können bestimmte Werkzeuge automatisch genehmigen, andere vollständig blockieren oder Genehmigung für alles verlangen. Drei Optionen arbeiten zusammen, um zu bestimmen, was ausgeführt wird:170Claude bestimmt anhand der Aufgabe, welche Tools aufgerufen werden sollen, aber Sie kontrollieren, ob diese Aufrufe ausgeführt werden dürfen. Verwenden Sie diese Optionen, um Tools automatisch zu genehmigen, Tools zu blockieren und den Berechtigungsmodus festzulegen:

171 171 

172* **`allowed_tools` / `allowedTools`** genehmigt aufgelistete Tools automatisch. Ein nur lesender Agent mit `["Read", "Glob", "Grep"]` in seiner Liste zulässiger Tools führt diese Tools ohne Nachfrage aus, abgesehen von Lesevorgängen aus [Netzwerkpfaden](https://code.claude.com/docs/de/permissions.md#network-paths). Tools, die nicht aufgelistet sind, sind weiterhin verfügbar, und Aufrufe an sie, die eine Genehmigung benötigen, werden an den Berechtigungsmodus und `canUseTool` weitergereicht.172* **`allowed_tools` / `allowedTools`** genehmigt aufgelistete Tools automatisch. Ein nur lesender Agent mit `["Read", "Glob", "Grep"]` in seiner Liste zulässiger Tools führt diese Tools ohne Nachfrage aus, abgesehen von Lesevorgängen aus [Netzwerkpfaden](https://code.claude.com/docs/de/permissions.md#network-paths). Tools, die nicht aufgelistet sind, sind weiterhin verfügbar, und Aufrufe an sie, die eine Genehmigung benötigen, werden an den Berechtigungsmodus und `canUseTool` weitergereicht.

173* **`disallowed_tools` / `disallowedTools`** blockiert aufgelistete Werkzeuge, unabhängig von anderen Einstellungen. Siehe [Berechtigungen](https://code.claude.com/docs/de/agent-sdk/permissions.md) für die Reihenfolge, in der Regeln überprüft werden, bevor ein Werkzeug ausgeführt wird.173* **`disallowed_tools` / `disallowedTools`** blockiert aufgelistete Werkzeuge, unabhängig von anderen Einstellungen. Siehe [Berechtigungen](https://code.claude.com/docs/de/agent-sdk/permissions.md) für die Reihenfolge, in der Regeln überprüft werden, bevor ein Werkzeug ausgeführt wird.

Details

303 303 

304Die API meldet die tatsächliche Ausgabezählung am Ende der Antwort, und Claude Code fügt sie der Ergebnisnachricht hinzu. Lesen Sie Ausgabe-Token aus `usage` des Ergebnisses oder aus `modelUsage` für eine Aufschlüsselung pro Modell.304Die API meldet die tatsächliche Ausgabezählung am Ende der Antwort, und Claude Code fügt sie der Ergebnisnachricht hinzu. Lesen Sie Ausgabe-Token aus `usage` des Ergebnisses oder aus `modelUsage` für eine Aufschlüsselung pro Modell.

305 305 

306Um zu beobachten, wie die Ausgabezählung einer Antwort während des Streamings wächst, setzen Sie `includePartialMessages` bzw. `include_partial_messages` in Python und lesen Sie `usage` aus jedem `message_delta`-Stream-Event, typisiert als [`SDKPartialAssistantMessage`](https://code.claude.com/docs/de/agent-sdk/typescript#sdkpartialassistantmessage) in TypeScript und [`StreamEvent`](https://code.claude.com/docs/de/agent-sdk/python#streamevent) in Python.

307 

308### Kosten bei fehlgeschlagenen Konversationen verfolgen306### Kosten bei fehlgeschlagenen Konversationen verfolgen

309 307 

310Sowohl Erfolgs- als auch Fehler-Ergebnisnachrichten enthalten `usage` und `total_cost_usd`. In Python sind beide Felder als optional typisiert, prüfen Sie also, dass sie nicht `None` sind, bevor Sie sie lesen.308Sowohl Erfolgs- als auch Fehler-Ergebnisnachrichten enthalten `usage` und `total_cost_usd`. In Python sind beide Felder als optional typisiert, prüfen Sie also, dass sie nicht `None` sind, bevor Sie sie lesen.

Details

226| `timeout` | `number` | `undefined` | Timeout in Sekunden. Wenn weggelassen, wendet Claude Code das [Standard-Timeout des Ereignisses](#hook-timeout) an. Ihre SDK-Callbacks folgen den `command` Hook-Standards |226| `timeout` | `number` | `undefined` | Timeout in Sekunden. Wenn weggelassen, wendet Claude Code das [Standard-Timeout des Ereignisses](#hook-timeout) an. Ihre SDK-Callbacks folgen den `command` Hook-Standards |

227| `onFailure` | `"continue" \| "block"` | `undefined` | Was ein fehlgeschlagener Callback bewirkt. Setzen Sie `"block"`, um [die Aktion zu blockieren, wenn ein Callback fehlschlägt](#block-the-action-when-a-callback-fails). In Python verwenden Sie `on_failure` |227| `onFailure` | `"continue" \| "block"` | `undefined` | Was ein fehlgeschlagener Callback bewirkt. Setzen Sie `"block"`, um [die Aktion zu blockieren, wenn ein Callback fehlschlägt](#block-the-action-when-a-callback-fails). In Python verwenden Sie `on_failure` |

228 228 

229Verwenden Sie das `matcher` Muster, um nach Möglichkeit spezifische Tools anzusteuern. Ein Matcher mit `'Bash'` wird nur für Bash-Befehle ausgeführt, während das Weglassen des Musters Ihre Callbacks für jedes Vorkommen des Ereignisses ausführt.229Verwenden Sie das `matcher` Muster, um nach Möglichkeit spezifische Tools anzusteuern. Mit einem `'Bash'`-Matcher werden Ihre Callbacks für Bash-Befehle ausgeführt. Ab Claude Code v2.1.314 werden sie außerdem bei `PreToolUse` und `PermissionRequest` für Monitor-Befehle ausgeführt, die sie [ablehnen, aber nicht genehmigen können](https://code.claude.com/docs/de/hooks.md#match-monitor-commands). Ohne Matcher werden sie bei jedem Vorkommen des Ereignisses ausgeführt.

230 230 

231### Callback-Funktionen231### Callback-Funktionen

232 232 

Details

70>70>

71> Der Pfad sollte auf das Root-Verzeichnis des Plugins verweisen: das übergeordnete Verzeichnis von `skills/`, `agents/`, `hooks/`, `commands/` oder `.claude-plugin/`.71> Der Pfad sollte auf das Root-Verzeichnis des Plugins verweisen: das übergeordnete Verzeichnis von `skills/`, `agents/`, `hooks/`, `commands/` oder `.claude-plugin/`.

72 72 

73### Plugins in einer laufenden Sitzung neu laden

74 

75Um eine Änderung an den Skills, Befehlen, Agenten oder Hooks eines Plugins anzuwenden, ohne eine neue Sitzung zu starten, rufen Sie [`reloadPlugins()`](https://code.claude.com/docs/de/agent-sdk/typescript#query-object) für das `Query`-Objekt des TypeScript SDK auf. Das Python SDK stellt keine entsprechende Methode bereit; senden Sie stattdessen [`/reload-plugins`](https://code.claude.com/docs/de/plugins/cli-reference#reload-plugins) als Prompt in der Sitzung.

76 

73### Plugins zu einer laufenden Sitzung hinzufügen77### Plugins zu einer laufenden Sitzung hinzufügen

74 78 

75Rufen Sie im TypeScript SDK [`reloadPlugins()`](https://code.claude.com/docs/de/agent-sdk/typescript#load-more-plugin-folders-with-addplugins) für das `Query`-Objekt auf, das `query()` zurückgegeben hat, und geben Sie das Plugin-Verzeichnis in der Option `addPlugins` dieses Aufrufs an. Jeder Eintrag in `addPlugins` ist ein `{ type: "local", path }`-Objekt mit einem absoluten `path`. Erfordert TypeScript Agent SDK v0.3.301 oder höher.79Rufen Sie im TypeScript SDK [`reloadPlugins()`](https://code.claude.com/docs/de/agent-sdk/typescript#load-more-plugin-folders-with-addplugins) für das `Query`-Objekt auf, das `query()` zurückgegeben hat, und geben Sie das Plugin-Verzeichnis in der Option `addPlugins` dieses Aufrufs an. Jeder Eintrag in `addPlugins` ist ein `{ type: "local", path }`-Objekt mit einem absoluten `path`. Erfordert TypeScript Agent SDK v0.3.301 oder höher.

Details

1385| `enabled` | `type`, `budget_tokens`, `display` | Aktivieren Sie Thinking mit einem bestimmten Token-Budget |1385| `enabled` | `type`, `budget_tokens`, `display` | Aktivieren Sie Thinking mit einem bestimmten Token-Budget |

1386| `disabled` | `type` | Deaktivieren Sie Thinking |1386| `disabled` | `type` | Deaktivieren Sie Thinking |

1387 1387 

1388Das optionale Feld `display` steuert, ob Thinking-Text `"summarized"` oder `"omitted"` zurückgegeben wird. Bei Claude Opus 4.7 und später ist der API-Standard `"omitted"`, setzen Sie daher `"summarized"`, um Thinking-Inhalte in [`ThinkingBlock`](#thinkingblock)-Ausgaben zu erhalten. Claude Code gibt Ihren `display`-Wert an einige Anbieter nicht weiter, etwa Amazon Bedrock und die Agent Platform von Google Cloud. Bei diesen Anbietern geben Opus 4.7 und später leere `ThinkingBlock`-Ausgaben zurück, auch wenn Sie `display` auf `"summarized"` setzen.1388Das optionale Feld `display` steuert, ob Thinking-Text `"summarized"` oder `"omitted"` zurückgegeben wird. Bei Claude Opus 4.7 und später ist der API-Standard `"omitted"`, setzen Sie daher `"summarized"`, um Thinking-Inhalte in [`ThinkingBlock`](#thinkingblock)-Ausgaben zu erhalten. Bei Anbietern wie Amazon Bedrock und der Agent Platform von Google Cloud gibt Claude Code `display` für ältere Modelle, die es erkennt, nicht weiter. Das sind Opus 4.6, Sonnet 4.6, Haiku 4.5 und ältere Modelle, die ihren Standard verwenden.

1389 1389 

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

1391 1391 


2517 2517 

2518### Hook-Verwendungsbeispiel2518### Hook-Verwendungsbeispiel

2519 2519 

2520Dieses Beispiel registriert zwei Hooks: einen, der gefährliche Bash-Befehle wie `rm -rf /` blockiert, und einen anderen, der alle Tool-Nutzung für Auditing protokolliert. Der Sicherheits-Hook wird nur auf Bash-Befehle ausgeführt (über den `matcher`), während der Logging-Hook auf alle Tools angewendet wird.2520Dieses Beispiel registriert zwei Hooks: einen, der gefährliche Bash-Befehle wie `rm -rf /` blockiert, und einen anderen, der alle Tool-Nutzung für Auditing protokolliert. Mit seinem [`Bash`-Matcher](https://code.claude.com/docs/de/agent-sdk/hooks#matchers) wird der Sicherheits-Hook bei Bash-Tool-Aufrufen ausgeführt. Der Logging-Hook hat keinen Matcher und wird daher bei jedem Tool-Aufruf ausgeführt.

2521 2521 

2522```python theme={null}2522```python theme={null}

2523import asyncio2523import asyncio


3668 3668 

3669### `SandboxIgnoreViolations`3669### `SandboxIgnoreViolations`

3670 3670 

3671Konfiguration zum Ignorieren bestimmter Sandbox-Verstöße.3671Verstöße, die im Verstoßbericht der Sandbox ausgelassen werden sollen. Jeder Schlüssel entspricht einem Teil eines Befehls oder `*` für jeden Befehl, und jeder Wert listet Text auf, der in einer Verstoßzeile gefunden werden soll: `{"*": ["/etc/hosts"]}` blendet Verstöße aus, die `/etc/hosts` erwähnen. Ein übereinstimmender Zugriff wird trotzdem blockiert. Siehe [`sandbox.ignoreViolations`](https://code.claude.com/docs/de/settings-reference#sandbox-ignoreviolations).

3672 3672 

3673```python theme={null}3673```python theme={null}

3674class SandboxIgnoreViolations(TypedDict, total=False):3674SandboxIgnoreViolations = dict[str, list[str]]

3675 file: list[str]

3676 network: list[str]

3677```3675```

3678 3676 

3679| Eigenschaft | Typ | Standard | Beschreibung |

3680| :- | :- | :- | :- |

3681| `file` | `list[str]` | `[]` | Dateipfad-Muster, für die Verstöße ignoriert werden sollen |

3682| `network` | `list[str]` | `[]` | Netzwerkmuster, für die Verstöße ignoriert werden sollen |

3683 

3684### Berechtigungen-Fallback für Unsandboxed-Befehle3677### Berechtigungen-Fallback für Unsandboxed-Befehle

3685 3678 

3686Wenn `allowUnsandboxedCommands` aktiviert ist, kann das Modell anfordern, Befehle außerhalb der Sandbox auszuführen, indem es `dangerouslyDisableSandbox: True` in der Tool-Eingabe setzt. Diese Anfragen fallen auf das bestehende Berechtigungssystem zurück, was bedeutet, dass Ihr `can_use_tool`-Handler aufgerufen wird, sodass Sie benutzerdefinierte Autorisierungslogik implementieren können.3679Wenn `allowUnsandboxedCommands` aktiviert ist, kann das Modell anfordern, Befehle außerhalb der Sandbox auszuführen, indem es `dangerouslyDisableSandbox: True` in der Tool-Eingabe setzt. Diese Anfragen fallen auf das bestehende Berechtigungssystem zurück, was bedeutet, dass Ihr `can_use_tool`-Handler aufgerufen wird, sodass Sie benutzerdefinierte Autorisierungslogik implementieren können.

Details

1931 1931 

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

1933 1933 

1934Das Feld `origin` leitet den [`SDKMessageOrigin`](#sdkmessageorigin) der Benutzernachricht weiter, die dieses Ergebnis ausgelöst hat. Zu den Ergebnissen mit `origin: { kind: "task-notification" }` gehören:1934Das Feld `origin` enthält den [`SDKMessageOrigin`](#sdkmessageorigin), den Claude Code der Benutzernachricht zugewiesen hat, die dieses Ergebnis ausgelöst hat, und keine Kopie des von Ihnen gesendeten `origin`. Zu den Ergebnissen mit `origin: { kind: "task-notification" }` gehören:

1935 1935 

1936* **Synthetische Folge-Turns**: Wenn das SDK einen synthetischen Folge-Turn einspeist, etwa für eine abgeschlossene Hintergrundaufgabe, trägt die resultierende `SDKResultMessage` diese Art1936* **Synthetische Folge-Turns**: Wenn das SDK einen synthetischen Folge-Turn einspeist, etwa für eine abgeschlossene Hintergrundaufgabe, trägt die resultierende `SDKResultMessage` diese Art

1937* **Ausgelöste geplante Aufgaben und Nachrichten aus anderen Sitzungen**: Geplante Cloud-Aufgaben, deren Auslöser aktiviert wurde, und servergeprüfte Nachrichten aus Ihren anderen Sitzungen kommen ebenfalls mit dieser Art an, jeweils mit dem in [Task-notification subkinds](#task-notification-subkinds) beschriebenen `subkind`1937* **Ausgelöste geplante Aufgaben und Nachrichten aus anderen Sitzungen**: Geplante Cloud-Aufgaben, deren Auslöser aktiviert wurde, und servergeprüfte Nachrichten aus Ihren anderen Sitzungen kommen ebenfalls mit dieser Art an, jeweils mit dem in [Task-notification subkinds](#task-notification-subkinds) beschriebenen `subkind`


1940 1940 

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

1942 1942 

1943Das Feld fehlt bei Ergebnissen, die vor einem Benutzer-Turn ausgegeben werden, z. B. Startfehler.1943`origin` fehlt, wenn Claude Code keinen Ursprung zugewiesen hat, etwa:

1944 

1945* Bei einem Turn, den Sie mit einer Nachricht starten, die weder `origin` noch [`isSynthetic`](#sdkusermessage) hat

1946* Bei Ergebnissen, die vor jedem Benutzer-Turn ausgegeben werden, etwa Startfehler

1944 1947 

1945Wenn ein `PreToolUse`-Hook `permissionDecision: "defer"` zurückgibt, hat das Ergebnis `stop_reason: "tool_deferred"` und `deferred_tool_use` enthält die `id`, den `name` und die `input` des ausstehenden Tools. Lesen Sie dieses Feld, um die Anfrage in Ihrer eigenen Benutzeroberfläche anzuzeigen, und setzen Sie dann mit derselben `session_id` fort, um fortzufahren. Siehe [Einen Tool-Aufruf für später aufschieben](https://code.claude.com/docs/de/hooks.md#defer-a-tool-call-for-later) für die vollständige Runde.1948Wenn ein `PreToolUse`-Hook `permissionDecision: "defer"` zurückgibt, hat das Ergebnis `stop_reason: "tool_deferred"` und `deferred_tool_use` enthält die `id`, den `name` und die `input` des ausstehenden Tools. Lesen Sie dieses Feld, um die Anfrage in Ihrer eigenen Benutzeroberfläche anzuzeigen, und setzen Sie dann mit derselben `session_id` fort, um fortzufahren. Siehe [Einen Tool-Aufruf für später aufschieben](https://code.claude.com/docs/de/hooks.md#defer-a-tool-call-for-later) für die vollständige Runde.

1946 1949 


2435 2438 

2436### `SDKMessageOrigin`2439### `SDKMessageOrigin`

2437 2440 

2438Herkunft einer Nachricht mit Benutzer-Rolle. Dies erscheint als `origin` auf [`SDKUserMessage`](#sdkusermessage) und wird auf die entsprechende [`SDKResultMessage`](#sdkresultmessage) weitergeleitet, damit Sie erkennen können, was einen bestimmten Turn ausgelöst hat.2441Herkunft einer Nachricht mit der Rolle „user“. Sie erscheint als `origin` in [`SDKUserMessage`](#sdkusermessage). Die [`SDKResultMessage`](#sdkresultmessage) eines Turns enthält den `origin`, den Claude Code zugewiesen hat, sodass Sie erkennen können, was diesen Turn ausgelöst hat.

2439 2442 

2440```typescript theme={null}2443```typescript theme={null}

2441type SDKMessageOrigin =2444type SDKMessageOrigin =


2462 | { kind: "unclassified" };2465 | { kind: "unclassified" };

2463```2466```

2464 2467 

2468Ihre Anwendung kann folgende Arten von `origin` für eine von ihr gesendete Nachricht festlegen:

2469 

2470* `{ kind: "human" }`: was der Benutzer eingegeben hat

2471* `{ kind: "task-notification", subkind: "scheduled-trigger" }`: ein [geplanter Lauf, den Sie deklarieren](#declare-a-scheduled-run)

2472 

2473Überlassen Sie die anderen Arten Claude Code und den Anthropic-Servern. Wenn Sie eine dieser Arten festlegen, liest Claude die Nachricht standardmäßig als Nachricht des Benutzers.

2474 

2475Um Text zu senden, den der Benutzer nicht geschrieben hat, etwa eine abgerufene Seite oder die Ausgabe eines anderen Agenten, senden Sie ihn als eigene Nachricht mit [`isSynthetic`](#sdkusermessage) auf `true` und ohne `origin`. Setzen Sie außerdem [`client_composed`](#sdkusermessage) auf `true`, damit Text, der mit `/` beginnt, nicht als Befehl ausgeführt wird.

2476 

2465| `kind` | Bedeutung |2477| `kind` | Bedeutung |

2466| - | - |2478| - | - |

2467| `human` | Direkte Eingabe vom Endbenutzer. Wenn Ihre Anwendung das, was der Benutzer eingegeben hat, als Benutzer-Nachricht weiterleitet, setzen Sie ihre `origin` explizit auf `{ kind: "human" }`: Claude Code behandelt eine Benutzer-Nachricht ohne `origin` als nicht zugeordnet, und Prüfungen, die einen von einem Menschen eingegebenen Prompt erfordern, wie das [`ultracode`-Workflow-Schlüsselwort](https://code.claude.com/docs/de/workflows#ask-for-a-workflow-in-your-prompt), akzeptieren sie nicht. Vor v2.1.210 behandelte Claude Code ein fehlendes `origin` auf einer Benutzer-Nachricht als menschliche Eingabe. |2479| `human` | Direkte Eingabe des Endbenutzers. Wenn Ihre Anwendung die Eingabe des Benutzers als Benutzernachricht weiterleitet, setzen Sie deren `origin` auf `{ kind: "human" }`. Ohne diesen `origin` liest Claude die Nachricht zwar weiterhin als Nachricht des Benutzers, aber Prüfungen, die einen vom Menschen eingegebenen Prompt erfordern, wie etwa das [`ultracode`-Workflow-Schlüsselwort](https://code.claude.com/docs/de/workflows#ask-for-a-workflow-in-your-prompt), akzeptieren die Nachricht nicht. |

2468| `channel` | Nachricht, die auf einem [Channel](https://code.claude.com/docs/de/channels.md) ankommt. `server` ist der Name des Quell-MCP-Servers. |2480| `channel` | Nachricht, die auf einem [Channel](https://code.claude.com/docs/de/channels.md) ankommt. `server` ist der Name des Quell-MCP-Servers. |

2469| `peer` | Nachricht von einem anderen Agenten: ein In-Process-[Teamkollege](https://code.claude.com/docs/de/agent-teams.md) oder ein [Cross-Session-Peer](https://code.claude.com/docs/de/cross-session-messaging.md), eine andere Ihrer Claude Code-Sitzungen. Siehe [Peer-Herkunftsfelder](#peer-origin-fields) für die Pro-Feld-Semantik und das Vertrauensmodell. |2481| `peer` | Nachricht von einem anderen Claude-Code-Agenten: einem prozessinternen [Teammitglied](https://code.claude.com/docs/de/agent-teams.md) oder einem [sitzungsübergreifenden Peer](https://code.claude.com/docs/de/cross-session-messaging.md), also einer anderen Ihrer Claude-Code-Sitzungen. Die [Desktop-App](https://code.claude.com/docs/de/desktop.md#work-across-sessions), die solche Nachrichten zwischen Ihren Sitzungen weiterleitet, deklariert diese Art mit [`fromMode`](#peer-origin-fields). Um die Ausgabe eines anderen Agenten aus Ihrer eigenen Anwendung weiterzuleiten, setzen Sie stattdessen `isSynthetic` und `client_composed`. Unter [Peer-Herkunftsfelder](#peer-origin-fields) finden Sie die Semantik der einzelnen Felder und das Vertrauensmodell. |

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

2471| `coordinator` | Nachricht von einem Team-Koordinator in einem [Agent-Team](https://code.claude.com/docs/de/agent-teams.md). |2483| `coordinator` | Nachricht von einem Team-Koordinator in einem [Agent-Team](https://code.claude.com/docs/de/agent-teams.md). |

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

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

2474 2486 

2475### Task-Notification-Subkinds2487### Task-Notification-Subkinds

2476 2488 


2494Ein `peer`-Origin gibt an, welcher Agent die Nachricht gesendet hat: ein prozessinternes [Teammitglied](https://code.claude.com/docs/de/agent-teams.md), das mit `SendMessage` an `main` sendet, oder ein [sitzungsübergreifender Peer](https://code.claude.com/docs/de/cross-session-messaging.md), also eine andere Ihrer Claude-Code-Sitzungen. Sitzungsübergreifende Peers erfordern Claude Code v2.1.224 oder höher unter macOS und Linux; siehe [Verfügbarkeit der sitzungsübergreifenden Nachrichtenübermittlung](https://code.claude.com/docs/de/cross-session-messaging.md#availability) für die Anforderung unter nativem Windows. Ein sitzungsübergreifender Peer kann auf demselben Rechner laufen oder auf [einem anderen Ihrer Rechner](https://code.claude.com/docs/de/cross-session-messaging.md#message-sessions-on-other-machines), wenn seine Nachricht über [Remote Control](https://code.claude.com/docs/de/remote-control.md) eintrifft.2506Ein `peer`-Origin gibt an, welcher Agent die Nachricht gesendet hat: ein prozessinternes [Teammitglied](https://code.claude.com/docs/de/agent-teams.md), das mit `SendMessage` an `main` sendet, oder ein [sitzungsübergreifender Peer](https://code.claude.com/docs/de/cross-session-messaging.md), also eine andere Ihrer Claude-Code-Sitzungen. Sitzungsübergreifende Peers erfordern Claude Code v2.1.224 oder höher unter macOS und Linux; siehe [Verfügbarkeit der sitzungsübergreifenden Nachrichtenübermittlung](https://code.claude.com/docs/de/cross-session-messaging.md#availability) für die Anforderung unter nativem Windows. Ein sitzungsübergreifender Peer kann auf demselben Rechner laufen oder auf [einem anderen Ihrer Rechner](https://code.claude.com/docs/de/cross-session-messaging.md#message-sessions-on-other-machines), wenn seine Nachricht über [Remote Control](https://code.claude.com/docs/de/remote-control.md) eintrifft.

2495 2507 

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

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

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

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

2500* `body`: der dekodierte Nachrichtentext ohne den Peer-Umschlag, bytegenau identisch mit dem, was das Modell sieht. Vorhanden bei einer einzelnen Nachricht eines Teammitglieds, fehlt, wenn mehrere zusammengeführt werden; bei einem sitzungsübergreifenden Peer nur vorhanden, wenn der Turn aus genau einem von Claude Code gebildeten Peer-Umschlag besteht. Stellen Sie `name` und `body` dar, anstatt den Nachrichtentext erneut zu parsen. Vor v2.1.299 behielten zusammengeführte Nachrichten den `body` der ersten Nachricht. Erfordert Claude Code v2.1.205 oder höher.2512* `body`: der dekodierte Nachrichtentext ohne den Peer-Umschlag, bytegenau identisch mit dem, was das Modell sieht. Vorhanden bei einer einzelnen Nachricht eines Teammitglieds, fehlt, wenn mehrere zusammengeführt werden; bei einem sitzungsübergreifenden Peer nur vorhanden, wenn der Turn aus genau einem von Claude Code gebildeten Peer-Umschlag besteht. Stellen Sie `name` und `body` dar, anstatt den Nachrichtentext erneut zu parsen. Vor v2.1.299 behielten zusammengeführte Nachrichten den `body` der ersten Nachricht. Erfordert Claude Code v2.1.205 oder höher.


5419 | { type: "disabled" }; // Kein Extended Thinking5431 | { type: "disabled" }; // Kein Extended Thinking

5420```5432```

5421 5433 

5422Das optionale `display`-Feld steuert, ob Thinking-Text `"summarized"` oder `"omitted"` zurückgegeben wird. Bei Claude Opus 4.7 und später ist der API-Standard `"omitted"`, daher setzen Sie `"summarized"`, um Thinking-Inhalte in `thinking`-Blöcken zu erhalten. Claude Code übergibt Ihren `display`-Wert nicht an einige Anbieter, etwa Amazon Bedrock und Google Clouds Agent Platform. Bei diesen Anbietern geben Opus 4.7 und später leere `thinking`-Blöcke zurück, auch wenn Sie `display` auf `"summarized"` setzen.5434Das optionale `display`-Feld steuert, ob Thinking-Text `"summarized"` oder `"omitted"` zurückgegeben wird. Bei Claude Opus 4.7 und später ist der API-Standard `"omitted"`, daher setzen Sie `"summarized"`, um Thinking-Inhalte in `thinking`-Blöcken zu erhalten. Bei Anbietern wie Amazon Bedrock und Google Clouds Agent Platform übergibt Claude Code `display` nicht für frühere Modelle, die es erkennt. Das sind Opus 4.6, Sonnet 4.6, Haiku 4.5 und frühere Modelle, die ihren Standard verwenden.

5423 5435 

5424### `SpawnedProcess`5436### `SpawnedProcess`

5425 5437 


6040| `allowUnsandboxedCommands` | `boolean` | `true` | Erlauben Sie dem Modell, die Ausführung von Befehlen außerhalb der Sandbox anzufordern. Wenn `true`, kann das Modell `dangerouslyDisableSandbox` in der Tool-Eingabe setzen, was auf das [Berechtigungssystem](#permissions-fallback-for-unsandboxed-commands) zurückfällt |6052| `allowUnsandboxedCommands` | `boolean` | `true` | Erlauben Sie dem Modell, die Ausführung von Befehlen außerhalb der Sandbox anzufordern. Wenn `true`, kann das Modell `dangerouslyDisableSandbox` in der Tool-Eingabe setzen, was auf das [Berechtigungssystem](#permissions-fallback-for-unsandboxed-commands) zurückfällt |

6041| `network` | [`SandboxNetworkConfig`](#sandboxnetworkconfig) | `undefined` | Netzwerkspezifische Sandbox-Konfiguration |6053| `network` | [`SandboxNetworkConfig`](#sandboxnetworkconfig) | `undefined` | Netzwerkspezifische Sandbox-Konfiguration |

6042| `filesystem` | [`SandboxFilesystemConfig`](#sandboxfilesystemconfig) | `undefined` | Dateisystemspezifische Sandbox-Konfiguration für Lese-/Schreibbeschränkungen |6054| `filesystem` | [`SandboxFilesystemConfig`](#sandboxfilesystemconfig) | `undefined` | Dateisystemspezifische Sandbox-Konfiguration für Lese-/Schreibbeschränkungen |

6043| `ignoreViolations` | `Record<string, string[]>` | `undefined` | Zuordnung von Befehlssubstrings oder `*` für jeden Befehl zu Substrings des Verletzungstexts zum Ignorieren, z. B. `{ "*": ['/etc/hosts'] }`; siehe [`sandbox.ignoreViolations`](https://code.claude.com/docs/de/settings-reference#sandbox-ignoreviolations) |6055| `ignoreViolations` | `Record<string, string[]>` | `undefined` | Verletzungen, die im Verletzungsbericht der Sandbox ausgelassen werden. Jeder Schlüssel entspricht einem Teil eines Befehls oder `*` für jeden Befehl, und jeder Wert listet Text auf, nach dem in einer Verletzungszeile gesucht wird: `{ "*": ['/etc/hosts'] }` blendet Verletzungen aus, die `/etc/hosts` erwähnen. Siehe [`sandbox.ignoreViolations`](https://code.claude.com/docs/de/settings-reference#sandbox-ignoreviolations) |

6044| `enableWeakerNestedSandbox` | `boolean` | `false` | Aktivieren Sie eine schwächere verschachtelte Sandbox für Kompatibilität |6056| `enableWeakerNestedSandbox` | `boolean` | `false` | Aktivieren Sie eine schwächere verschachtelte Sandbox für Kompatibilität |

6045| `allowNestedUserNamespaces` | `boolean` | `false` | Erlauben Sie Befehlen, die unter Linux und WSL2 in einer Sandbox ausgeführt werden, User Namespaces zu erstellen. Bevor Sie dies auf `true` setzen, lesen Sie [`sandbox.allowNestedUserNamespaces`](https://code.claude.com/docs/de/settings-reference#sandbox-allownestedusernamespaces). Dort erfahren Sie, welche Tools dies benötigen und welche Sicherheitsgrenze Sie damit ausschalten. Erfordert Claude Code v2.1.305 oder später |6057| `allowNestedUserNamespaces` | `boolean` | `false` | Erlauben Sie Befehlen, die unter Linux und WSL2 in einer Sandbox ausgeführt werden, User Namespaces zu erstellen. Bevor Sie dies auf `true` setzen, lesen Sie [`sandbox.allowNestedUserNamespaces`](https://code.claude.com/docs/de/settings-reference#sandbox-allownestedusernamespaces). Dort erfahren Sie, welche Tools dies benötigen und welche Sicherheitsgrenze Sie damit ausschalten. Erfordert Claude Code v2.1.305 oder später |

6046| `ripgrep` | `{ command: string; args?: string[] }` | `undefined` | Benutzerdefinierte ripgrep-Binärkonfiguration für Sandbox-Umgebungen |6058| `ripgrep` | `{ command: string; args?: string[] }` | `undefined` | Benutzerdefinierte ripgrep-Binärkonfiguration für Sandbox-Umgebungen |

agent-teams.md +1 −1

Details

296>296>

297> Damit er vor dem Bearbeiten nachfragt, drücken Sie Enter in der Zeile `main` im Agent-Panel und schalten Sie auch den Lead in den Manual-Modus. Dann fragt auch der Lead nach, ebenso wie jeder andere Teammate im Manual-Modus.297> Damit er vor dem Bearbeiten nachfragt, drücken Sie Enter in der Zeile `main` im Agent-Panel und schalten Sie auch den Lead in den Manual-Modus. Dann fragt auch der Lead nach, ebenso wie jeder andere Teammate im Manual-Modus.

298 298 

299Sie können zum Zeitpunkt des Erzeugens keine Berechtigungsmodi pro Teammate festlegen. Ein neuer Teammate startet im Modus des Leads, einschließlich des `bypassPermissions`-Modus, den `--dangerously-skip-permissions` aktiviert. Wenn sich der Lead im [`dontAsk`-Modus](https://code.claude.com/docs/de/permission-modes#allow-only-pre-approved-tools-with-dontask-mode) befindet, startet der Teammate stattdessen im [Manual-Modus](https://code.claude.com/docs/de/permission-modes.md#available-modes).299Sie können zum Zeitpunkt des Erzeugens keine Berechtigungsmodi pro Teammate festlegen. Ein neuer Teammate startet im Modus des Leads, einschließlich des `bypassPermissions`-Modus, den `--dangerously-skip-permissions` aktiviert. Wenn sich der Lead im [`dontAsk`-Modus](https://code.claude.com/docs/de/permission-modes#allow-only-pre-approved-tools-with-dontask-mode) befindet, startet der Teammate stattdessen im [Manual-Modus](https://code.claude.com/docs/de/permission-modes.md#available-modes). Für einen Split-Pane-Teammate eines Leads im Manual- oder `dontAsk`-Modus erfordert dies Claude Code v2.1.317 oder höher.

300 300 

301Ein [In-Process](#choose-a-display-mode)-Teammate läuft unter den aktuellen Allow- und Deny-Regeln des Leads, sodass [`--disallowedTools`](https://code.claude.com/docs/de/cli-reference#cli-flags), `--tools` und `--allowedTools` alle für ihn gelten. Prüfen Sie bei einem Split-Pane-Teammate jedes Flag einzeln:301Ein [In-Process](#choose-a-display-mode)-Teammate läuft unter den aktuellen Allow- und Deny-Regeln des Leads, sodass [`--disallowedTools`](https://code.claude.com/docs/de/cli-reference#cli-flags), `--tools` und `--allowedTools` alle für ihn gelten. Prüfen Sie bei einem Split-Pane-Teammate jedes Flag einzeln:

302 302 

artifacts.md +1 −1

Details

141 141 

142* **Cloud-Sitzung ohne Netzwerkzugriff**: Für eine [Cloud-Umgebung](https://code.claude.com/docs/de/cloud-environments.md#access-levels) ist das die Stufe **None**. Im [Auto-Modus](https://code.claude.com/docs/de/permission-modes.md#eliminate-prompts-with-auto-mode) kann stattdessen der Klassifikator die Genehmigung erteilen; in einer [Cowork](https://claude.com/product/cowork)-Sitzung liegt die Genehmigung allein bei Ihnen.142* **Cloud-Sitzung ohne Netzwerkzugriff**: Für eine [Cloud-Umgebung](https://code.claude.com/docs/de/cloud-environments.md#access-levels) ist das die Stufe **None**. Im [Auto-Modus](https://code.claude.com/docs/de/permission-modes.md#eliminate-prompts-with-auto-mode) kann stattdessen der Klassifikator die Genehmigung erteilen; in einer [Cowork](https://claude.com/product/cowork)-Sitzung liegt die Genehmigung allein bei Ihnen.

143* **Öffentliches Artefakt einer anderen Organisation**: Claude Code fragt Sie zuerst, selbst im Auto-Modus. Wo Claude Code Sie nicht fragen kann, etwa im Modus `bypassPermissions`, kann Claude das Artefakt nicht lesen. Claude kann diese Artefakte nur lesen, solange das [Abrufen von Feature-Flags](https://code.claude.com/docs/de/env-vars.md#features-that-need-feature-flag-fetching) aktiviert ist.143* **Öffentliches Artefakt einer anderen Organisation**: Claude Code fragt Sie zuerst, selbst im Auto-Modus. Wo Claude Code Sie nicht fragen kann, etwa im Modus `bypassPermissions`, kann Claude das Artefakt nicht lesen. Claude kann diese Artefakte nur lesen, solange das [Abrufen von Feature-Flags](https://code.claude.com/docs/de/env-vars.md#features-that-need-feature-flag-fetching) aktiviert ist.

144* **Unbestätigter Eigentümer oder unbestätigte Netzwerkeinstellung**: Wenn Claude Code nicht bestätigen kann, wer das Artefakt erstellt hat, oder die Netzwerkeinstellung einer Cloud-Sitzung nicht bestätigen kann, fragt es nach, und Ihre Genehmigung gilt für genau diese eine Anfrage.144* **Unbestätigter Eigentümer oder unbestätigte Netzwerkeinstellung**: Wenn Claude Code nicht bestätigen kann, wer das Artefakt erstellt hat, oder die Netzwerkeinstellung einer Cloud-Sitzung nicht bestätigen kann, fragt es nach, und Ihre Genehmigung gilt für genau diese eine Anfrage. Im [Auto-Modus](https://code.claude.com/docs/de/permission-modes.md#eliminate-prompts-with-auto-mode) kann stattdessen der Klassifikator das Lesen genehmigen oder blockieren, anstatt Sie zu fragen.

145* **Plan-Modus**: Im [Plan-Modus](https://code.claude.com/docs/de/permission-modes.md#analyze-before-you-edit-with-plan-mode) fragt Claude Code nach, bevor das Artifact-Tool ein Artefakt liest, das eine andere Person in Ihrer Organisation erstellt hat.145* **Plan-Modus**: Im [Plan-Modus](https://code.claude.com/docs/de/permission-modes.md#analyze-before-you-edit-with-plan-mode) fragt Claude Code nach, bevor das Artifact-Tool ein Artefakt liest, das eine andere Person in Ihrer Organisation erstellt hat.

146 146 

147Wenn Claude das Artefakt mit WebFetch liest, gelten weiterhin die eigenen [Abfrageregeln](https://code.claude.com/docs/de/tools-reference.md#webfetch-tool-behavior) von WebFetch.147Wenn Claude das Artefakt mit WebFetch liest, gelten weiterhin die eigenen [Abfrageregeln](https://code.claude.com/docs/de/tools-reference.md#webfetch-tool-behavior) von WebFetch.

Details

29 29 

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

31 31 

32Wenn ein Gateway die Ursache ist, bitten Sie den Administrator Ihres Unternehmens oder Ihren Gateway-Anbieter, Anfragen und Antworten unverändert weiterzuleiten. Das bedeutet, dass Anfrage-Header und Body-Felder wie sie sind weitergeleitet werden, einschließlich solcher, die das Gateway nicht erkennt, wie das Anfrage-Feld `safeguards`, und dass Antworten und Streaming-Events zurückgegeben werden, ohne Schlüssel wie das Feld `safeguard_results` zu löschen oder Tool-Use-IDs umzuschreiben, wie das [Gateway-Kompatibilitätsleitfaden](https://code.claude.com/docs/de/llm-gateway-protocol.md#feature-pass-through) beschreibt. Ein Gateway, das den Datenverkehr auf diese Weise weiterleitet, funktioniert weiterhin mit dieser Funktion und mit zukünftigen Funktionen. Neue Sitzungen verwenden dann die Prüfungen des Servers erneut.32Wenn ein Gateway verhindert, dass die serverseitigen Prüfungen des Auto-Modus Ihre Sitzungen erreichen, und Sie es nicht selbst betreiben, senden Sie die folgenden Anforderungen an den Admin Ihres Unternehmens oder Ihren Gateway-Anbieter. Wo [der Upstream das Format akzeptiert, das das Gateway empfängt](https://code.claude.com/docs/de/llm-gateway-protocol.md#format-mismatch-with-the-upstream), erwartet Claude Code, dass das Gateway Anfragen und Antworten unverändert weiterleitet, wie der [Gateway-Kompatibilitätsleitfaden](https://code.claude.com/docs/de/llm-gateway-protocol.md#feature-pass-through) beschreibt:

33 

34* **Anfragen**: Damit die Prüfungen durchgelassen werden, leitet das Gateway sowohl den `anthropic-beta`-Header als auch das Body-Feld `safeguards` unverändert weiter, da [die beiden als Paar übertragen werden](https://code.claude.com/docs/de/llm-gateway-protocol.md#beta-header-and-body-field-pairs). Beim [Amazon Bedrock InvokeModel-Format](https://code.claude.com/docs/de/llm-gateway-protocol.md#api-formats) leitet es anstelle des Headers das Body-Feld `anthropic_beta` weiter.

35* **Antworten**: Das Gateway gibt Antworten und Streaming-Events zurück, ohne Felder zu löschen oder Tool-Use-IDs umzuschreiben. Damit die Ergebnisse der Prüfungen durchgelassen werden, behält es das Feld `safeguard_results` bei.

36 

37Ein Gateway, das den Datenverkehr auf diese Weise weiterleitet, funktioniert weiterhin mit dieser Funktion und mit zukünftigen Funktionen. Neue Sitzungen verwenden dann die Prüfungen des Servers erneut.

33 38 

34Wenn Sie bereits wissen, dass Ihr Gateway die Prüfungen des Servers nicht bereitstellen kann, teilen Sie Claude Code mit, dass es dort nicht danach fragen soll, indem Sie `CLAUDE_CODE_AUTO_MODE_SERVER` auf `0` setzen, bevor Sie die Sitzung starten, in Ihrer Shell oder im [`env`-Einstellungsschlüssel](https://code.claude.com/docs/de/settings-reference#env):39Wenn Sie bereits wissen, dass Ihr Gateway die Prüfungen des Servers nicht bereitstellen kann, teilen Sie Claude Code mit, dass es dort nicht danach fragen soll, indem Sie `CLAUDE_CODE_AUTO_MODE_SERVER` auf `0` setzen, bevor Sie die Sitzung starten, in Ihrer Shell oder im [`env`-Einstellungsschlüssel](https://code.claude.com/docs/de/settings-reference#env):

35 40 

channels.md +1 −1

Details

354| Funktion | Was sie tut | Gut für |354| Funktion | Was sie tut | Gut für |

355| - | - | - |355| - | - | - |

356| [Cloud-Sitzungen](https://code.claude.com/docs/de/claude-code-on-the-web.md) | Führt Aufgaben in einer neuen Cloud-Sandbox aus, geklont von GitHub | Delegieren von in sich geschlossener asynchroner Arbeit, die Sie später überprüfen |356| [Cloud-Sitzungen](https://code.claude.com/docs/de/claude-code-on-the-web.md) | Führt Aufgaben in einer neuen Cloud-Sandbox aus, geklont von GitHub | Delegieren von in sich geschlossener asynchroner Arbeit, die Sie später überprüfen |

357| [Claude in Slack](https://code.claude.com/docs/de/slack.md) | Startet eine Cloud-Sitzung von einer `@Claude`-Erwähnung in einem Channel oder Thread | Starten von Aufgaben direkt aus dem Kontext von Team-Konversationen |357| [Claude in Slack](https://code.claude.com/docs/de/slack.md) | Startet eine Cloud-Sitzung von einer `@Claude`-Erwähnung in einem Channel oder Thread | Starten von Aufgaben direkt aus einer Team-Konversation |

358| Standard-[MCP-Server](https://code.claude.com/docs/de/mcp.md) | Claude fragt ihn während einer Aufgabe ab; nichts wird in die Sitzung übertragen | Claude auf Abruf Zugriff zum Lesen oder Abfragen eines Systems geben |358| Standard-[MCP-Server](https://code.claude.com/docs/de/mcp.md) | Claude fragt ihn während einer Aufgabe ab; nichts wird in die Sitzung übertragen | Claude auf Abruf Zugriff zum Lesen oder Abfragen eines Systems geben |

359| [Remote Control](https://code.claude.com/docs/de/remote-control.md) | Sie steuern Ihre lokale Sitzung von claude.ai oder der Claude Mobile App | Steuern einer laufenden Sitzung, während Sie weg von Ihrem Schreibtisch sind |359| [Remote Control](https://code.claude.com/docs/de/remote-control.md) | Sie steuern Ihre lokale Sitzung von claude.ai oder der Claude Mobile App | Steuern einer laufenden Sitzung, während Sie weg von Ihrem Schreibtisch sind |

360 360 

Details

350 350 

351### Richtlinie an Claude Desktop-Sitzungen liefern351### Richtlinie an Claude Desktop-Sitzungen liefern

352 352 

353Claude Desktop führt seine Tabs Cowork und Code sowie Chat, wenn Sie diesen aktivieren, auf eingebetteten Claude Code-Sitzungen aus und sendet deren Modellanfragen über das Gateway. Es übergibt jeder dieser Sitzungen eine Richtlinie, die aus der Konfiguration erstellt wird, die das Gateway unter `/user/bootstrap` bereitstellt: die Modell-Allowlist, deaktivierte Tools und die Egress-Allowlist, die aus dem `cli`- oder `code`-Block der zutreffenden Richtlinie abgeleitet werden, sowie das [`desktop`-Overlay](https://code.claude.com/docs/de/claude-apps-gateway-config#claude-desktop-overlay).353Claude Desktop führt seine Tabs auf eingebetteten Claude Code-Sitzungen aus und sendet deren Modellanfragen über das Gateway. Es übergibt jeder dieser Sitzungen eine Richtlinie, die aus der Konfiguration erstellt wird, die das Gateway ihm unter `/user/bootstrap` bereitstellt. Diese Konfiguration enthält die Modell-Allowlist, deaktivierte Tools und die Egress-Allowlist, die aus dem `cli`- oder `code`-Block der zutreffenden Richtlinie abgeleitet werden, sowie das [`desktop`-Overlay](https://code.claude.com/docs/de/claude-apps-gateway-config#claude-desktop-overlay).

354 354 

355Die anderen Schlüssel des Blocks, wie Hooks, `env` und bereichsbezogene Berechtigungsregeln wie `Bash(npm *)`, erreichen Clients, die sich über `/login` anmelden. Unter `code` erreichen sie auch die Sitzung der Code-Registerkarte, wenn die [Bedingungen für die Code-Registerkarte](https://code.claude.com/docs/de/claude-apps-gateway-config.md#apply-code-settings-in-the-code-tab) erfüllt sind. Cowork- oder Chat-Sitzungen erreichen sie nicht. Claude Desktop liest die Gateway-URL aus seiner eigenen verwalteten Konfiguration und meldet sich mit seinem eigenen Fluss an, getrennt von den `forceLoginMethod`- und `forceLoginGatewayUrl`-Schlüsseln in [Gateway-URL festlegen](#set-the-gateway-url).355Die anderen Schlüssel des Blocks, wie Hooks, `env` und bereichsbezogene Berechtigungsregeln wie `Bash(npm *)`, erreichen Clients, die sich über `/login` anmelden. Unter `code` erreichen sie auch die Sitzung der Code-Registerkarte, wenn die [Bedingungen für die Code-Registerkarte](https://code.claude.com/docs/de/claude-apps-gateway-config.md#apply-code-settings-in-the-code-tab) erfüllt sind. Cowork- oder Chat-Sitzungen erreichen sie nicht. Claude Desktop liest die Gateway-URL aus seiner eigenen verwalteten Konfiguration und meldet sich mit seinem eigenen Fluss an, getrennt von den `forceLoginMethod`- und `forceLoginGatewayUrl`-Schlüsseln in [Gateway-URL festlegen](#set-the-gateway-url).

356 356 


476 476 

477### Claude Desktop verbinden477### Claude Desktop verbinden

478 478 

479[Claude Desktop](https://code.claude.com/docs/de/desktop.md) verbindet sich mit demselben Gateway über einen anderen MDM-Schlüssel: Setzen Sie `bootstrapUrl` in Claude Desktops [verwalteter Konfiguration](https://claude.com/docs/third-party/claude-desktop/configuration) auf `<listen.public_url>/user/bootstrap`, und aktivieren Sie die Richtlinie des Benutzers per Opt-in mit einem `desktop`-Schlüssel. [Claude Desktop-Überlagerung](https://code.claude.com/docs/de/claude-apps-gateway-config.md#claude-desktop-overlay) behandelt beide Hälften. Erfordert Claude Code v2.1.203 oder später auf dem Gateway-Server.479[Claude Desktop](https://code.claude.com/docs/de/desktop.md) verbindet sich mit demselben Gateway über einen anderen MDM-Schlüssel: Setzen Sie `bootstrapUrl` in Claude Desktops [verwalteter Konfiguration](https://claude.com/docs/third-party/claude-desktop/configuration) auf `<listen.public_url>/user/bootstrap`, und aktivieren Sie die Richtlinie des Benutzers per Opt-in mit einem `desktop`-Schlüssel. [Claude Desktop-Überlagerung](https://code.claude.com/docs/de/claude-apps-gateway-config.md#claude-desktop-overlay) behandelt beide Hälften. Erfordert Claude Code v2.1.203 oder später auf dem Gateway-Server. Nach der Verbindung sendet Claude Desktop Modellanfragen von jeder aktivierten Registerkarte durch das Gateway.

480 480 

481Claude Desktop meldet den Entwickler über den Identity Provider des Gateways mit demselben Browser-SSO-Schritt an, ruft dann seine Konfiguration vom Gateway statt von Anthropic ab. Modellzugriff und Richtlinie folgen denselben Pro-Gruppen-Regeln wie die CLI. Ein Entwickler, der sowohl die CLI als auch Claude Desktop verwendet, meldet sich bei jedem separat an; die Gateway-Sitzung wird nicht zwischen ihnen geteilt.481Claude Desktop meldet den Entwickler über den Identity Provider des Gateways mit demselben Browser-SSO-Schritt an, ruft dann seine Konfiguration vom Gateway statt von Anthropic ab. Modellzugriff und Richtlinie folgen denselben Pro-Gruppen-Regeln wie die CLI. Ein Entwickler, der sowohl die CLI als auch Claude Desktop verwendet, meldet sich bei jedem separat an; die Gateway-Sitzung wird nicht zwischen ihnen geteilt.

482 482 

483Nach der Verbindung sendet Claude Desktop Modellanfragen von jeder aktivierten Registerkarte durch das Gateway. Es zeigt die Cowork- und Code-Registerkarten standardmäßig an. Um Chat ebenfalls verfügbar zu machen, setzen Sie `chatTabEnabled` im [`desktop`-Block](https://code.claude.com/docs/de/claude-apps-gateway-config#claude-desktop-overlay) der Richtlinie auf einem Gateway, das Claude Code v2.1.227 oder später ausführt, auf `true`. Bei aktiviertem Cowork zeigt Claude Desktop Chat und Cowork dann zusammen in einer Registerkarte an.

484 

485### CI-Pipelines und Remote-Maschinen483### CI-Pipelines und Remote-Maschinen

486 484 

487Es gibt keinen Service-Token-Fluss für unbeaufsichtigte Pipelines. Gateway-Anmeldung führt immer den Browser-Gerätefluss aus, daher kann sich ein CI-Job ohne Entwickler zur Genehmigung der Anmeldung nicht authentifizieren; konfigurieren Sie diese direkt gegen Ihren Anbieter. Stellen Sie `forceLoginMethod` und `forceLoginGatewayUrl` auf Entwicklermaschinen bereit und lassen Sie sie auf CI-Runnern weg. Auf einer Maschine, deren verwaltete Einstellungen sie setzen, [beendet sich eine Sitzung beim Start](https://code.claude.com/docs/de/errors.md#administrator-policy-requires-a-cloud-gateway-sign-in), die sich mit `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` oder `apiKeyHelper` authentifiziert.485Es gibt keinen Service-Token-Fluss für unbeaufsichtigte Pipelines. Gateway-Anmeldung führt immer den Browser-Gerätefluss aus, daher kann sich ein CI-Job ohne Entwickler zur Genehmigung der Anmeldung nicht authentifizieren; konfigurieren Sie diese direkt gegen Ihren Anbieter. Stellen Sie `forceLoginMethod` und `forceLoginGatewayUrl` auf Entwicklermaschinen bereit und lassen Sie sie auf CI-Runnern weg. Auf einer Maschine, deren verwaltete Einstellungen sie setzen, [beendet sich eine Sitzung beim Start](https://code.claude.com/docs/de/errors.md#administrator-policy-requires-a-cloud-gateway-sign-in), die sich mit `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` oder `apiKeyHelper` authentifiziert.


523| Inferenz-Weiterleitung (Amazon Bedrock, Claude Platform auf AWS, Agent Platform von Google Cloud, Microsoft Foundry, Anthropic) | Verfügbar | Mit Pro-Upstream-Modellübersetzung und Failover. Der Amazon-Bedrock-Upstream verwendet den `bedrock-runtime`-Endpunkt und die AWS-Standard-Anmeldekette. Der [Amazon-Bedrock-Mantle-Upstream](https://code.claude.com/docs/de/claude-apps-gateway-config.md#amazon-bedrock-mantle-endpoint) erfordert Claude Code v2.1.283 oder später auf dem Gateway-Server, und der [Claude-Platform-auf-AWS-Upstream](https://code.claude.com/docs/de/claude-apps-gateway-config.md#claude-platform-on-aws) erfordert v2.1.198 oder später. |521| Inferenz-Weiterleitung (Amazon Bedrock, Claude Platform auf AWS, Agent Platform von Google Cloud, Microsoft Foundry, Anthropic) | Verfügbar | Mit Pro-Upstream-Modellübersetzung und Failover. Der Amazon-Bedrock-Upstream verwendet den `bedrock-runtime`-Endpunkt und die AWS-Standard-Anmeldekette. Der [Amazon-Bedrock-Mantle-Upstream](https://code.claude.com/docs/de/claude-apps-gateway-config.md#amazon-bedrock-mantle-endpoint) erfordert Claude Code v2.1.283 oder später auf dem Gateway-Server, und der [Claude-Platform-auf-AWS-Upstream](https://code.claude.com/docs/de/claude-apps-gateway-config.md#claude-platform-on-aws) erfordert v2.1.198 oder später. |

524| Kontextfenster mit 1M Token | Verfügbar | Fable-Modelle, Sonnet 5 und neuer sowie Opus 4.7 und neuer laufen standardmäßig mit dem 1M-Fenster; siehe [Erweiterter Kontext](https://code.claude.com/docs/de/model-config.md#extended-context). Der 1M-Standard für die Fable- und Opus-Modelle erfordert Claude Code v2.1.287 oder später auf dem Entwicklerrechner |522| Kontextfenster mit 1M Token | Verfügbar | Fable-Modelle, Sonnet 5 und neuer sowie Opus 4.7 und neuer laufen standardmäßig mit dem 1M-Fenster; siehe [Erweiterter Kontext](https://code.claude.com/docs/de/model-config.md#extended-context). Der 1M-Standard für die Fable- und Opus-Modelle erfordert Claude Code v2.1.287 oder später auf dem Entwicklerrechner |

525| Modellzugriff und verwaltete Einstellungen nach IdP-Gruppe | Verfügbar | Modellzugriff wird auf der Serverseite erzwungen; verwaltete Einstellungen werden pro IdP-Gruppe bereitgestellt und von der CLI auf der [Ebene der verwalteten Einstellungen](https://code.claude.com/docs/de/settings.md#settings-precedence) angewendet |523| Modellzugriff und verwaltete Einstellungen nach IdP-Gruppe | Verfügbar | Modellzugriff wird auf der Serverseite erzwungen; verwaltete Einstellungen werden pro IdP-Gruppe bereitgestellt und von der CLI auf der [Ebene der verwalteten Einstellungen](https://code.claude.com/docs/de/settings.md#settings-precedence) angewendet |

526| Claude Desktop | Verfügbar mit Opt-in | Das Gateway stellt die Konfiguration von Claude Desktop unter `/user/bootstrap` bereit, sobald eine Richtlinie [sich mit einem `desktop`-Schlüssel anmeldet](https://code.claude.com/docs/de/claude-apps-gateway-config#claude-desktop-overlay), und Claude Desktop sendet seine Modellanfragen über das Gateway. Um Chat zu aktivieren, siehe [Claude Desktop verbinden](#connect-claude-desktop). Erfordert Claude Code v2.1.203 oder später auf dem Gateway-Server. |524| Claude Desktop | Verfügbar mit Opt-in | Aktivieren Sie eine Richtlinie mit einem [`desktop`-Schlüssel](https://code.claude.com/docs/de/claude-apps-gateway-config#claude-desktop-overlay). Erfordert Claude Code v2.1.203 oder später auf dem Gateway-Server. |

527| Telemetrie-Verteilung (OTLP/HTTP) | Verfügbar | Identitäts-gestempelt pro Export; sowohl Protobuf- als auch JSON-Codierungen |525| Telemetrie-Verteilung (OTLP/HTTP) | Verfügbar | Identitäts-gestempelt pro Export; sowohl Protobuf- als auch JSON-Codierungen |

528| OIDC-Identitätsanbieter | Verfügbar | Alle OIDC-konformen IdPs; das Gateway führt Standard-OIDC-Erkennung und den Authorization-Code-Flow durch. Siehe [Identitätsanbieter-Setup](https://code.claude.com/docs/de/claude-apps-gateway-deploy.md#identity-provider-setup) für Pro-IdP-Konfiguration |526| OIDC-Identitätsanbieter | Verfügbar | Alle OIDC-konformen IdPs; das Gateway führt Standard-OIDC-Erkennung und den Authorization-Code-Flow durch. Siehe [Identitätsanbieter-Setup](https://code.claude.com/docs/de/claude-apps-gateway-deploy.md#identity-provider-setup) für Pro-IdP-Konfiguration |

529| Pro-Benutzer- und Pro-Gruppen-Ausgabenlimits | Verfügbar | Siehe [Ausgabenlimits](https://code.claude.com/docs/de/claude-apps-gateway-spend-limits.md) |527| Pro-Benutzer- und Pro-Gruppen-Ausgabenlimits | Verfügbar | Siehe [Ausgabenlimits](https://code.claude.com/docs/de/claude-apps-gateway-spend-limits.md) |


540| Multi-Tenant (mehrere OIDC-Aussteller) | Nicht unterstützt | Ein Aussteller pro Gateway. Führen Sie separate Instanzen aus |538| Multi-Tenant (mehrere OIDC-Aussteller) | Nicht unterstützt | Ein Aussteller pro Gateway. Führen Sie separate Instanzen aus |

541| Windows-Server | Nicht unterstützt | Bereitstellung auf Linux. macOS nur für lokale Entwicklung |539| Windows-Server | Nicht unterstützt | Bereitstellung auf Linux. macOS nur für lokale Entwicklung |

542| Helm-Diagramm | Nicht verfügbar | Das Gateway läuft als Standard-Stateless-Deployment; siehe den [Bereitstellungsleitfaden](https://code.claude.com/docs/de/claude-apps-gateway-deploy.md#kubernetes) |540| Helm-Diagramm | Nicht verfügbar | Das Gateway läuft als Standard-Stateless-Deployment; siehe den [Bereitstellungsleitfaden](https://code.claude.com/docs/de/claude-apps-gateway-deploy.md#kubernetes) |

543| Admin-UI | Nicht verfügbar | Konfiguration ist die YAML-Datei; stellen Sie erneut bereit, um sie zu ändern |541| Admin-UI | Nur Ausgabenlimits | In Claude Desktop 4.23118.0 oder später, [mit dem Gateway verbunden](#connect-claude-desktop), können Mitglieder von [`admin.admin_groups`](https://code.claude.com/docs/de/claude-apps-gateway-config#admin) Ausgabenlimits verwalten. Die übrige Konfiguration ist die YAML-Datei; stellen Sie erneut bereit, um sie zu ändern |

544 542 

545## Nächste Schritte543## Nächste Schritte

546 544 

Details

1651| `reply_tokens` | Nein | Standard `750`. Ungefähr wie viele Token Text jede vorgefertigte Antwort trägt, eine ganze Zahl von 1 bis 100.000. |1651| `reply_tokens` | Nein | Standard `750`. Ungefähr wie viele Token Text jede vorgefertigte Antwort trägt, eine ganze Zahl von 1 bis 100.000. |

1652| `reply_seconds` | Nein | Standard `9.5`. Wie lange eine gestreamte Antwort dauert, von 0 bis 600. `0` sendet die ganze Antwort auf einmal. Eine Antwort auf eine nicht-streamende Anfrage kommt immer auf einmal zurück. |1652| `reply_seconds` | Nein | Standard `9.5`. Wie lange eine gestreamte Antwort dauert, von 0 bis 600. `0` sendet die ganze Antwort auf einmal. Eine Antwort auf eine nicht-streamende Anfrage kommt immer auf einmal zurück. |

1653 1653 

1654Ein Lasttest in diesem Modus deckt das Gateway, Ihre Postgres-Datenbank und alles vor dem Gateway ab. Er deckt die Limits, die Geschwindigkeit oder den Netzwerkpfad des Anbieters nicht ab.1654Ein Lasttest in diesem Modus deckt das Gateway, Ihre Postgres-Datenbank und alles vor dem Gateway ab. Er deckt nicht die Limits, die Geschwindigkeit und den Netzwerkpfad des Anbieters ab, ebenso wenig die Wartezeit am [Limit für gleichzeitige Upstream-Anfragen](https://code.claude.com/docs/de/claude-apps-gateway-deploy.md#concurrent-upstream-requests) jedes Replikats. Ein Replikat protokolliert weiterhin die Warnung `client requests are open`, wenn mehr Anfragen offen sind als dieses Limit, also ab dem Punkt, an dem Produktionsanfragen zu warten beginnen.

1655 1655 

1656Es wird keine Modell-Anfrage an den Anbieter gesendet, daher ist die CPU pro Anfrage eines Replikats eine Schätzung und fällt niedriger aus als in der Produktion, die ihren Datenverkehr zum Anbieter zusätzlich verschlüsselt. Bestätigen Sie eine Replikat-Anzahl mit einem kleinen Pilotversuch gegen den echten Anbieter. Vor v2.1.283 fällt die Schätzung deutlich niedriger aus.1656Es wird keine Modell-Anfrage an den Anbieter gesendet, daher ist die CPU pro Anfrage eines Replikats eine Schätzung und fällt niedriger aus als in der Produktion, die ihren Datenverkehr zum Anbieter zusätzlich verschlüsselt. Bestätigen Sie eine Replikat-Anzahl mit einem kleinen Pilotversuch gegen den echten Anbieter. Vor v2.1.283 fällt die Schätzung deutlich niedriger aus.

1657 1657 

Details

202>202>

203> 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> 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.

204 204 

205Bei einem Lasttest mit [`load_test_mode`](https://code.claude.com/docs/de/claude-apps-gateway-config#load_test_mode) warten Anfragen nicht an diesem Limit, ein Replikat protokolliert die Warnung `client requests are open` aber dennoch.

206 

205### `API_TIMEOUT_MS` über der Zeit bis zum ersten Byte des Gateways halten207### `API_TIMEOUT_MS` über der Zeit bis zum ersten Byte des Gateways halten

206 208 

207Wenn 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.209Wenn 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.

Details

628 628 

629* [Konfigurationsreferenz](https://code.claude.com/docs/de/claude-apps-gateway-config.md): jede `gateway.yaml` Option, einschließlich `managed.policies` und `telemetry`629* [Konfigurationsreferenz](https://code.claude.com/docs/de/claude-apps-gateway-config.md): jede `gateway.yaml` Option, einschließlich `managed.policies` und `telemetry`

630* [Bereitstellung und Betrieb](https://code.claude.com/docs/de/claude-apps-gateway-deploy.md): IdP-Setup, Health-Checks, JWT-Geheimnis-Rotation, Upgrades und das Sicherheitsmodell630* [Bereitstellung und Betrieb](https://code.claude.com/docs/de/claude-apps-gateway-deploy.md): IdP-Setup, Health-Checks, JWT-Geheimnis-Rotation, Upgrades und das Sicherheitsmodell

631* [Lasttestmodus](https://code.claude.com/docs/de/claude-apps-gateway-config.md#load_test_mode): Lasttests für ein Gateway, ohne einen Modellanbieter aufzurufen

631* [Claude-Apps-Gateway Übersicht](https://code.claude.com/docs/de/claude-apps-gateway): Schnellstart und Verbindung von Entwicklern632* [Claude-Apps-Gateway Übersicht](https://code.claude.com/docs/de/claude-apps-gateway): Schnellstart und Verbindung von Entwicklern

632* [AWS-Beispiele für Claude-Apps-Gateway](https://github.com/aws-samples/anthropic-on-aws/tree/main/claude-apps-gateway): Von AWS verwaltete Bereitstellungsbeispiele, die eine Reihe von Kundenumgebungen abdecken633* [AWS-Beispiele für Claude-Apps-Gateway](https://github.com/aws-samples/anthropic-on-aws/tree/main/claude-apps-gateway): Von AWS verwaltete Bereitstellungsbeispiele, die eine Reihe von Kundenumgebungen abdecken

Details

316 316 

317* [Konfigurationsreferenz](https://code.claude.com/docs/de/claude-apps-gateway-config.md): jede `gateway.yaml`-Option, einschließlich `managed.policies` und `telemetry`317* [Konfigurationsreferenz](https://code.claude.com/docs/de/claude-apps-gateway-config.md): jede `gateway.yaml`-Option, einschließlich `managed.policies` und `telemetry`

318* [Bereitstellung und Betrieb](https://code.claude.com/docs/de/claude-apps-gateway-deploy.md): IdP-Setup, Integritätsprüfungen, JWT-Geheimnis-Rotation, Upgrades und das Sicherheitsmodell318* [Bereitstellung und Betrieb](https://code.claude.com/docs/de/claude-apps-gateway-deploy.md): IdP-Setup, Integritätsprüfungen, JWT-Geheimnis-Rotation, Upgrades und das Sicherheitsmodell

319* [Lasttestmodus](https://code.claude.com/docs/de/claude-apps-gateway-config.md#load_test_mode): Lasttests eines Gateways, ohne einen Modellanbieter aufzurufen

319* [Claude-Apps-Gateway-Übersicht](https://code.claude.com/docs/de/claude-apps-gateway): Schnellstart und Verbindung von Entwicklern320* [Claude-Apps-Gateway-Übersicht](https://code.claude.com/docs/de/claude-apps-gateway): Schnellstart und Verbindung von Entwicklern

Details

95Beschränken Sie das Projekt auf einen Strom von Arbeiten, den Sie ständig hinzufügen, wie z. B. alles, was erforderlich ist, um eine API unter ihrem Latenz-Ziel zu halten. [Wann ein Projekt verwendet werden sollte](#when-to-use-a-project) hat mehr Beispiele. Füllen Sie dann die Felder des Dialogs aus:95Beschränken Sie das Projekt auf einen Strom von Arbeiten, den Sie ständig hinzufügen, wie z. B. alles, was erforderlich ist, um eine API unter ihrem Latenz-Ziel zu halten. [Wann ein Projekt verwendet werden sollte](#when-to-use-a-project) hat mehr Beispiele. Füllen Sie dann die Felder des Dialogs aus:

96 96 

97* **Name**: Wie das Projekt in der Liste **Projekte** angezeigt wird.97* **Name**: Wie das Projekt in der Liste **Projekte** angezeigt wird.

98* **Ziel** (optional): Eine Zeile, was Sie versuchen zu erreichen, wie z. B. „Halten Sie die p95-API-Latenz unter 200 ms“. Claude im Gespräch arbeitet darauf hin. Ohne ein Ziel arbeitet Claude aus den Aufgaben, die Sie senden, und Sie können später ein Ziel in **Projekteinstellungen > Allgemein** hinzufügen.98* **Woran möchten Sie arbeiten?** (optional): Eine Zeile, die zum Ziel des Projekts wird, wie z. B. „Halten Sie die p95-API-Latenz unter 200 ms“. Claude in der Konversation arbeitet darauf hin. Ohne ein Ziel arbeitet Claude aus den Aufgaben, die Sie senden, und Sie können später ein Ziel in **Projekteinstellungen > Allgemein** hinzufügen.

99* **Kontext** (optional): Die GitHub-Repositories, an denen dieses Projekt arbeitet, plus alle Dateien, Ordner oder Google Drive-Ordner, die Threads lesen sollten. Klicken Sie für jeden auf **Hinzufügen**. Fügen Sie die Repositories hinzu, die die meisten Aufgaben benötigen, anstatt jeden, den die Arbeit möglicherweise berührt; [Entscheiden Sie, welche Repositories hinzugefügt werden sollen](#decide-which-repositories-to-add) behandelt die Wahl, und Sie können später mehr in **Projekteinstellungen > Umgebung** hinzufügen.99* **Kontext** (optional): Die GitHub-Repositorys, an denen dieses Projekt arbeitet, plus alle Dateien, Ordner oder Google Drive-Ordner, die Threads lesen sollten. Klicken Sie für jeden auf **Hinzufügen**. Fügen Sie die Repositorys hinzu, die die meisten Aufgaben benötigen, anstatt jedes, das die Arbeit möglicherweise berührt; [Entscheiden Sie, welche Repositorys hinzugefügt werden sollen](#decide-which-repositories-to-add) behandelt die Wahl, und Sie können später mehr in **Projekteinstellungen > Umgebung** hinzufügen.

100 100 

101Stehende Regeln für die Funktionsweise von Threads gehen in [Projektanweisungen](#give-a-project-standing-context), die Sie nach der Projekterstellung festlegen.101Stehende Regeln für die Funktionsweise von Threads gehen in [Projektanweisungen](#give-a-project-standing-context), die Sie nach der Projekterstellung festlegen.

102 102 


388| Plugins | Plugins | Die Plugins, die in jeden neuen Cloud-Thread geladen werden |388| Plugins | Plugins | Die Plugins, die in jeden neuen Cloud-Thread geladen werden |

389| Nutzung | Nutzung | [Token-Nutzung](#usage-and-cost) nach Thread und nach Modell |389| Nutzung | Nutzung | [Token-Nutzung](#usage-and-cost) nach Thread und nach Modell |

390| Memory | Memory | Die [Memory-Dateien](#give-a-project-standing-context) des Projekts |390| Memory | Memory | Die [Memory-Dateien](#give-a-project-standing-context) des Projekts |

391| Automatisch fortsetzen, wenn Nutzungslimits zurückgesetzt werden | Allgemein | Ob ein Thread oder die Projektkonversation, die [an einem Nutzungslimit stoppt](#usage-limit-reached), von selbst fortgesetzt wird, wenn das Limit zurückgesetzt wird. Standardmäßig aktiviert. |

391| Claude neu starten | Allgemein | Startet die Projektkonversation neu, wenn [Claude dort nicht mehr antwortet](#claude-hasnt-responded) |392| Claude neu starten | Allgemein | Startet die Projektkonversation neu, wenn [Claude dort nicht mehr antwortet](#claude-hasnt-responded) |

392| Pausieren, Archivieren, Löschen | Allgemein | Stoppt, verbirgt oder entfernt das Projekt; siehe [Projekt pausieren, archivieren oder löschen](#pause-archive-or-delete-a-project) |393| Pausieren, Archivieren, Löschen | Allgemein | Stoppt, verbirgt oder entfernt das Projekt; siehe [Projekt pausieren, archivieren oder löschen](#pause-archive-or-delete-a-project) |

393 394 


403 404 

404Die Projektnutzung zählt gegen die gleichen [Planlimits](https://code.claude.com/docs/de/errors.md#youve-hit-your-session-limit) wie Ihre anderen Claude Code-Sitzungen, und ein Projekt kann diese Limits nicht selbst überschreiten.405Die Projektnutzung zählt gegen die gleichen [Planlimits](https://code.claude.com/docs/de/errors.md#youve-hit-your-session-limit) wie Ihre anderen Claude Code-Sitzungen, und ein Projekt kann diese Limits nicht selbst überschreiten.

405 406 

406Ein Thread, der das Limit Ihres Plans erreicht, wartet und wird fortgesetzt, wenn das Limit zurückgesetzt wird, daher beginnt die Arbeit, die Sie laufen gelassen haben, Ihr nächstes Nutzungsfenster ohne eine Nachricht von Ihnen zu verwenden. [Ein Thread hat das Nutzungslimit erreicht](#usage-limit-reached) behandelt, was Sie sehen, wie Sie es stoppen, und den einen Fall, der nicht wartet.407Ein Thread, der am Limit Ihres Plans anhält, wartet und wird standardmäßig von selbst fortgesetzt, wenn das Limit zurückgesetzt wird. Seine Arbeit zählt dann gegen Ihr nächstes Nutzungsfenster. Wie Sie verhindern, dass Threads fortgesetzt werden, erfahren Sie unter [Ein Thread hat das Nutzungslimit erreicht](#usage-limit-reached).

407 408 

408Arbeit geht über Ihre Planlimits hinaus, nur wenn Sie [Nutzungsguthaben](https://code.claude.com/docs/de/costs.md#add-usage-credits-to-your-subscription) für Ihr Konto aktiviert haben. Ein Thread kann sie nicht für Sie aktivieren.409Arbeit geht über Ihre Planlimits hinaus, nur wenn Sie [Nutzungsguthaben](https://code.claude.com/docs/de/costs.md#add-usage-credits-to-your-subscription) für Ihr Konto aktiviert haben. Ein Thread kann sie nicht für Sie aktivieren.

409 410 


484 485 

485### Ein Thread hat das Nutzungslimit erreicht486### Ein Thread hat das Nutzungslimit erreicht

486 487 

487Wenn ein Thread oder das Projektgespräch das Fünf-Stunden- oder Wochenlimit Ihres Plans erreicht, versucht er es weiterhin selbstständig erneut und wird fortgesetzt, wenn das Limit zurückgesetzt wird. Ein Thread, den eine geplante Aufgabe gestartet hat, wartet nicht: Sein Turn stoppt mit einem Limit-Fehler, und Sie senden ihm nach dem Limit-Reset eine Nachricht.488Wenn ein Thread oder die Projektkonversation am Fünf-Stunden- oder Wochenlimit Ihres Plans anhält, wartet er bzw. sie und wird standardmäßig selbstständig fortgesetzt, sobald das Limit zurückgesetzt wird.

488 489 

489Während ein Thread wartet, zeigt er **Service ist beschäftigt** mit „Claude versucht immer noch und wird automatisch fortgesetzt.“ Sie müssen nichts tun, damit die Arbeit fortgesetzt wird. Wenn Sie lieber möchten, dass er Ihr nächstes Nutzungsfenster nicht nutzt, klicken Sie auf **Stopp** im Thread, oder [pausieren Sie das Projekt](#pause-archive-or-delete-a-project), um jeden Thread anzuhalten. [Nutzungslimit-Fehler](https://code.claude.com/docs/de/errors.md#youve-hit-your-session-limit) erklären die Limits und wann sie zurückgesetzt werden.490Um zu verhindern, dass ein Thread oder eine Konversation zum in der Nachricht angezeigten Reset-Zeitpunkt fortgesetzt wird, deaktivieren Sie vorher **Automatisch fortsetzen, wenn Nutzungslimits zurückgesetzt werden** in [**Projekteinstellungen > Allgemein**](#project-settings-reference). Die Einstellung gilt für das gesamte Projekt, nicht nur für den Thread, den Sie gerade ansehen. Um bei deaktivierter Einstellung fortzufahren, senden Sie dem Thread oder der Konversation nach dem Reset eine Nachricht. [Nutzungslimit-Fehler](https://code.claude.com/docs/de/errors.md#youve-hit-your-session-limit) erklären die Limits und wann sie zurückgesetzt werden.

490 491 

491### Zusätzliche Nutzungsguthaben sind erforderlich492### Zusätzliche Nutzungsguthaben sind erforderlich

492 493 


509| „Kann nicht mit Repository verbinden“ mit „Claude konnte nicht auf Ihr Repository oder Ihre Umgebung zugreifen“ | Ihr GitHub-Konto benötigt Push-Zugriff auf das Repository, und die Umgebung muss immer noch existieren. Überprüfen Sie beide in **Projekteinstellungen > Umgebung**, dann wiederholen Sie |510| „Kann nicht mit Repository verbinden“ mit „Claude konnte nicht auf Ihr Repository oder Ihre Umgebung zugreifen“ | Ihr GitHub-Konto benötigt Push-Zugriff auf das Repository, und die Umgebung muss immer noch existieren. Überprüfen Sie beide in **Projekteinstellungen > Umgebung**, dann wiederholen Sie |

510| „Konnte die Setup-Vorschlag nicht anzeigen“ | Die App, die Sie offen haben, ist älter als die **Setup-Empfehlungen**, die Claude gesendet hat. Aktualisieren Sie die Seite oder starten Sie die Desktop-App neu, oder bitten Sie Claude, den Setup erneut vorzuschlagen |511| „Konnte die Setup-Vorschlag nicht anzeigen“ | Die App, die Sie offen haben, ist älter als die **Setup-Empfehlungen**, die Claude gesendet hat. Aktualisieren Sie die Seite oder starten Sie die Desktop-App neu, oder bitten Sie Claude, den Setup erneut vorzuschlagen |

511| „Die Umgebung des Projekts wurde entfernt“ | Wählen Sie eine andere Umgebung in **Projekteinstellungen > Umgebung**; die Änderung gilt für neue Threads |512| „Die Umgebung des Projekts wurde entfernt“ | Wählen Sie eine andere Umgebung in **Projekteinstellungen > Umgebung**; die Änderung gilt für neue Threads |

512| „Setup-Skript fehlgeschlagen“ | Klicken Sie auf **Setup-Skript bearbeiten** auf dem Fehler, reparieren Sie das Skript in der Umgebung, dann senden Sie eine weitere Nachricht. [Setup-Skript fehlgeschlagen](https://code.claude.com/docs/de/web-quickstart.md#setup-script-failed) listet häufige Ursachen auf |513| „Setup-Skript fehlgeschlagen“ | [Setup-Skript fehlgeschlagen](https://code.claude.com/docs/de/web-quickstart.md#setup-script-failed) listet häufige Ursachen auf. Reparieren Sie das Skript in der Umgebung und bitten Sie Claude dann im Projektgespräch, die Aufgabe in einem neuen Thread auszuführen, damit das Skript erneut ausgeführt wird |

513| „Claude ist auf diesem Zug aus dem Kontext gelaufen“ | Der Thread hat sein Kontextfenster gefüllt. Wenn die Nachricht sagt, dass der Thread in einer frischen Sitzung fortgesetzt wird, wird er von selbst fortgesetzt; andernfalls bitten Sie Claude im Projektgespräch, einen neuen Thread für die verbleibende Arbeit zu starten |514| „Claude ist auf diesem Zug aus dem Kontext gelaufen“ | Der Thread hat sein Kontextfenster gefüllt. Wenn die Nachricht sagt, dass der Thread in einer frischen Sitzung fortgesetzt wird, wird er von selbst fortgesetzt; andernfalls bitten Sie Claude im Projektgespräch, einen neuen Thread für die verbleibende Arbeit zu starten |

514| „Couldn't start in“ gefolgt von Ihrem Ordnernamen | Sie erlaubten einem Thread, auf Ihrem Computer zu laufen, aber die Sitzung konnte dort nicht gestartet werden. Wenn eine Zeile unter der Nachricht den Grund angibt, beheben Sie das, dann bitten Sie Claude, die Aufgabe erneut auszuführen |515| „Couldn't start in“ gefolgt von Ihrem Ordnernamen | Sie erlaubten einem Thread, auf Ihrem Computer zu laufen, aber die Sitzung konnte dort nicht gestartet werden. Wenn eine Zeile unter der Nachricht den Grund angibt, beheben Sie das, dann bitten Sie Claude, die Aufgabe erneut auszuführen |

515| „Claude is out of date on your device“ | Der Computer, den Sie zum Ausführen eines Threads ausgewählt haben, hat eine Claude Code-Version älter als v2.1.280. Aktualisieren Sie Claude Code dort, oder aktualisieren Sie die Desktop-App, wenn das das ist, was den Ordner verbindet, dann bitten Sie Claude, die Aufgabe erneut auszuführen |516| „Claude is out of date on your device“ | Der Computer, den Sie zum Ausführen eines Threads ausgewählt haben, hat eine Claude Code-Version älter als v2.1.280. Aktualisieren Sie Claude Code dort, oder aktualisieren Sie die Desktop-App, wenn das das ist, was den Ordner verbindet, dann bitten Sie Claude, die Aufgabe erneut auszuführen |

Details

120 120 

121Wählen Sie **Secret hinzufügen**, in den Admin-Einstellungen mit **Hinzufügen** beschriftet, und füllen Sie das Formular aus. Behalten Sie den Standard-**Secret-Typ**, **Bearer**, für einen API-Schlüssel, der in einem Request-Header übertragen wird, und füllen Sie diese Felder aus:121Wählen Sie **Secret hinzufügen**, in den Admin-Einstellungen mit **Hinzufügen** beschriftet, und füllen Sie das Formular aus. Behalten Sie den Standard-**Secret-Typ**, **Bearer**, für einen API-Schlüssel, der in einem Request-Header übertragen wird, und füllen Sie diese Felder aus:

122 122 

123* **Name**: eine Bezeichnung für das Secret, wie `Internal billing API`

124* **Zulässige Websites**: die Hosts der API, wie `api.example.com`. Ein führendes `*.` passt zu jeder Subdomain123* **Zulässige Websites**: die Hosts der API, wie `api.example.com`. Ein führendes `*.` passt zu jeder Subdomain

125* **Benutzerdefinierte Header**: eine Zeile für den Header, der den Schlüssel trägt. Die Zeile beginnt mit `Authorization` als **Name** des Headers und `Bearer` als **Präfix**; fügen Sie den Schlüssel selbst als **Wert** ein. Für einen Header wie `X-Api-Key`, der den bloßen Wert nimmt, ändern Sie den Namen und löschen Sie das Präfix124* **Benutzerdefinierte Header**: eine Zeile für den Header, der den Schlüssel trägt. Die Zeile enthält bereits `Authorization` als **Header-Name** und `Bearer` als **Präfix**; fügen Sie den Schlüssel selbst als **Wert** ein. Für einen Header wie `X-Api-Key`, der den bloßen Wert nimmt, ändern Sie den Namen und löschen Sie das Präfix

126 125 

127Für eine API, die sich anders authentifiziert, wählen Sie einen anderen **Secret-Typ**. Die Liste ist dieselbe, die [Claude Tag](https://claude.com/docs/claude-tag/overview), die Slack-Integration für Team- und Enterprise-Pläne, für [Verbindungen](https://claude.com/docs/claude-tag/admins/add-connections) anbietet.126Für eine API, die sich anders authentifiziert, wählen Sie einen anderen **Secret-Typ**. Die Liste ist dieselbe, die [Claude Tag](https://claude.com/docs/claude-tag/overview), die Slack-Integration für Team- und Enterprise-Pläne, für [Verbindungen](https://claude.com/docs/claude-tag/admins/add-connections) anbietet.

128 127 


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:136Wenn 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:

138 137 

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

140* **Name**: eine optionale Bezeichnung für das Secret139* **Secret-Typ**: **Token** für einen Schlüssel, der in einem Request-Header übertragen wird, oder **Benutzername und Passwort**. Fügen Sie bei einem Token den Schlüssel in das Feld **Token** ein. Für einen anderen Header als `Authorization`, wie `X-Api-Key`, ändern Sie **Header** in dessen Namen

141* **Secret-Typ**: **Token** für einen Schlüssel, der in einem Request-Header übertragen wird, oder **Benutzername und Passwort**. Fügen Sie bei einem Token den Schlüssel als **Wert** ein

142 140 

143#### Welche Anfragen erhalten das Secret141#### Welche Anfragen erhalten das Secret

144 142 


445 443 

446Ein Setup-Skript hat vier Einschränkungen, die Sie beachten müssen:444Ein Setup-Skript hat vier Einschränkungen, die Sie beachten müssen:

447 445 

448* **Mit Null beenden**: Wenn das Skript mit einem Nicht-Null-Wert beendet wird, schlägt der Sitzungsstart fehl. Fügen Sie `|| true` an nicht kritische Befehle an, damit ein gelegentlicher Installationsfehler die Sitzung nicht blockiert.446* **Mit Null beenden**: Wenn das Skript mit einem Nicht-Null-Wert beendet wird, [startet die Sitzung nicht](https://code.claude.com/docs/de/web-quickstart.md#setup-script-failed) oder startet ohne das, was das Skript nicht installieren konnte. Fügen Sie `|| true` an nicht kritische Befehle an, damit ein gelegentlicher Installationsfehler nicht das gesamte Skript fehlschlagen lässt.

449* **Innerhalb von fünf Minuten fertig**: Halten Sie die Gesamtlaufzeit des Skripts unter etwa fünf Minuten, damit der [Umgebungs-Cache](#environment-caching) erstellt werden kann. Wenn Setup länger dauert, wird die Umgebung nicht zwischengespeichert. Führen Sie unabhängige Installationen parallel mit `&` und `wait` aus, und verschieben Sie jeden einzelnen Download, der nicht passt, in einen [SessionStart-Hook](#setup-scripts-vs-sessionstart-hooks), der ihn im Hintergrund startet. Wenn neue Sitzungen während des Setups hängen bleiben oder zeitüberschreitung auftreten, siehe [Neue Sitzungen hängen oder zeitüberschreitung während des Setups](https://code.claude.com/docs/de/web-quickstart.md#new-sessions-hang-or-time-out-during-setup).447* **Innerhalb von fünf Minuten fertig**: Halten Sie die Gesamtlaufzeit des Skripts unter etwa fünf Minuten, damit der [Umgebungs-Cache](#environment-caching) erstellt werden kann. Wenn Setup länger dauert, wird die Umgebung nicht zwischengespeichert. Führen Sie unabhängige Installationen parallel mit `&` und `wait` aus, und verschieben Sie jeden einzelnen Download, der nicht passt, in einen [SessionStart-Hook](#setup-scripts-vs-sessionstart-hooks), der ihn im Hintergrund startet. Wenn neue Sitzungen während des Setups hängen bleiben oder zeitüberschreitung auftreten, siehe [Neue Sitzungen hängen oder zeitüberschreitung während des Setups](https://code.claude.com/docs/de/web-quickstart.md#new-sessions-hang-or-time-out-during-setup).

450* **Netzwerkzugriff für Installationen**: Paketinstallationen müssen Registries erreichen. Die Standard-Stufe **Vertraut** deckt [häufige Paket-Registries](#default-allowed-domains) ab, einschließlich npm, PyPI, RubyGems und crates.io; mit **Keine** Netzwerkzugriff schlagen Installationen fehl.448* **Netzwerkzugriff für Installationen**: Paketinstallationen müssen Registries erreichen. Die Standard-Stufe **Vertraut** deckt [häufige Paket-Registries](#default-allowed-domains) ab, einschließlich npm, PyPI, RubyGems und crates.io; mit **Keine** Netzwerkzugriff schlagen Installationen fehl.

451* **Die Variablen der Umgebung sind noch nicht gesetzt**: Das Skript wird ausgeführt, bevor die Sitzung die [Umgebungsvariablen](#set-environment-variables) der Umgebung setzt. Setzen Sie jeden Wert, den das Skript benötigt, im Skript selbst.449* **Die Variablen der Umgebung sind noch nicht gesetzt**: Das Skript wird ausgeführt, bevor die Sitzung die [Umgebungsvariablen](#set-environment-variables) der Umgebung setzt. Setzen Sie jeden Wert, den das Skript benötigt, im Skript selbst.

Details

25 25 

26## REVIEW\.md für Regeln nur für Reviews verwenden26## REVIEW\.md für Regeln nur für Reviews verwenden

27 27 

28`REVIEW.md` ist eine Datei im Stammverzeichnis Ihres Repositorys, die Code Review an Ihr Repository anpasst. Sie können außerdem eine `REVIEW.md` in einem Unterverzeichnis hinzufügen, um zusätzlich zur Stammdatei Prüfungen für Änderungen unter diesem Pfad hinzuzufügen.28`REVIEW.md` ist eine Datei im Stammverzeichnis Ihres Repositorys, die Code Review an Ihr Repository anpasst. Auf einem [geschützten Branch](#what-a-review-reads-for-each-branch-setup) können Sie außerdem eine `REVIEW.md` in [den meisten Unterverzeichnissen](#when-a-subdirectory-review-md-doesnt-apply) hinzufügen, um zusätzlich zur Stammdatei Prüfungen für Änderungen unter diesem Unterverzeichnis hinzuzufügen.

29 29 

30Die Agenten, die Probleme finden, und die Agenten, die sie verifizieren, erhalten ihren Inhalt als Review-Anweisungen Ihres Repositorys, zusammen mit den Standard-Review-Richtlinien von Code Review. Der Schritt, der das endgültige Review verfasst, zieht sie heran, bevor er den Schweregrad festlegt und die Zusammenfassung schreibt.30Die Agenten, die Probleme finden, und die Agenten, die sie verifizieren, erhalten ihren Inhalt als Review-Anweisungen Ihres Repositorys, zusammen mit den Standard-Review-Richtlinien von Code Review. Der Schritt, der das endgültige Review verfasst, zieht sie heran, bevor er den Schweregrad festlegt und die Zusammenfassung schreibt.

31 31 


46>46>

47> Der Code-Review-Dienst und der lokale [`/code-review`-Befehl](https://code.claude.com/docs/de/code-review-local) sind zwei separate Tools, und sie lesen unterschiedliche Dateien. Der Dienst liest sowohl `CLAUDE.md` als auch `REVIEW.md`. Der `/code-review`-Befehl, den Sie in einer Claude Code-Sitzung auf Ihrem eigenen Rechner ausführen, liest Ihre `CLAUDE.md`-Dateien, nicht jedoch `REVIEW.md`. Legen Sie Richtlinien, die an beiden Stellen angewendet werden sollen, in `CLAUDE.md` ab, und reservieren Sie `REVIEW.md` für Regeln, die speziell für das Review von Pull Requests gelten.47> Der Code-Review-Dienst und der lokale [`/code-review`-Befehl](https://code.claude.com/docs/de/code-review-local) sind zwei separate Tools, und sie lesen unterschiedliche Dateien. Der Dienst liest sowohl `CLAUDE.md` als auch `REVIEW.md`. Der `/code-review`-Befehl, den Sie in einer Claude Code-Sitzung auf Ihrem eigenen Rechner ausführen, liest Ihre `CLAUDE.md`-Dateien, nicht jedoch `REVIEW.md`. Legen Sie Richtlinien, die an beiden Stellen angewendet werden sollen, in `CLAUDE.md` ab, und reservieren Sie `REVIEW.md` für Regeln, die speziell für das Review von Pull Requests gelten.

48 48 

49### Wann eine REVIEW\.md in einem Unterverzeichnis nicht angewendet wird

50 

51Code Review wendet keine `REVIEW.md` in oder unterhalb eines Unterverzeichnisses mit einem dieser Namen an, unabhängig davon, was das Unterverzeichnis enthält. Ein Unterverzeichnisname passt nur als Ganzes, in beliebiger Groß- und Kleinschreibung und auf beliebiger Tiefe, sodass `Tests` passt und `integration-tests` nicht:

52 

53* **Tests**: `test`, `tests`, `__tests__`, `testdata`, `fixtures`, `__fixtures__`, `golden`, `corpus`, `snapshots`, `__snapshots__`

54* **Beispiele**: `example`, `examples`, `sample`, `samples`, `demo`, `demos`

55* **Generierter Code**: `generated`

56* **Code von Drittanbietern**: `vendor`, `third_party`, `third-party`, `thirdparty`, `node_modules`, `bower_components`, `external`, `extern`, `deps`, `godeps`, `pods`, `carthage`, `site-packages`, `contrib`

57 

58Legen Sie Prüfungen für diese Unterverzeichnisse in der Stamm-`REVIEW.md` ab oder in der `REVIEW.md` eines übergeordneten Unterverzeichnisses, sofern weder dieses übergeordnete Verzeichnis noch ein darüberliegendes auf der Liste steht.

59 

60Die übrigen `REVIEW.md`-Dateien in Unterverzeichnissen auf den Pfaden, die ein Pull Request ändert, teilen sich einen Grenzwert von 150.000 Bytes, die Stammdatei nicht mitgerechnet. Wenn der [Check Run](https://code.claude.com/docs/de/code-review-pull-requests.md#check-run-output) meldet, dass einige davon nicht hineingepasst haben, kürzen Sie die Dateien, sodass sie diesen Grenzwert einhalten.

61 

49### Beispiel für REVIEW\.md62### Beispiel für REVIEW\.md

50 63 

51Diese `REVIEW.md` kalibriert die Schweregrade für einen Backend-Dienst neu, begrenzt Nits, überspringt generierte Dateien und fügt Repository-spezifische Prüfungen hinzu.64Diese `REVIEW.md` kalibriert die Schweregrade für einen Backend-Dienst neu, begrenzt Nits, überspringt generierte Dateien und fügt Repository-spezifische Prüfungen hinzu.


217 230 

218| Branch-Schutz | Gelesene Kopie | Gelesene Dateien |231| Branch-Schutz | Gelesene Kopie | Gelesene Dateien |

219| :- | :- | :- |232| :- | :- | :- |

220| Der Standard-Branch ist geschützt, und der Pull Request zielt auf ihn oder auf einen Branch, den kein Ruleset schützt | Standard-Branch | Stammdatei, die von ihr eingebundenen Dateien und Dateien in Unterverzeichnissen |233| Der Standard-Branch ist geschützt, und der Pull Request zielt auf ihn oder auf einen Branch, den kein Ruleset schützt | Standard-Branch | Stammdatei, die von ihr eingebundenen Dateien und [die meisten Dateien in Unterverzeichnissen](#when-a-subdirectory-review-md-doesnt-apply) |

221| Der Pull Request zielt auf einen anderen Branch, den ein Ruleset schützt | Dieser Basis-Branch | Stammdatei, die von ihr eingebundenen Dateien und Dateien in Unterverzeichnissen |234| Der Pull Request zielt auf einen anderen Branch, den ein Ruleset schützt | Dieser Basis-Branch | Stammdatei, die von ihr eingebundenen Dateien und [die meisten Dateien in Unterverzeichnissen](#when-a-subdirectory-review-md-doesnt-apply) |

222| Der Standard-Branch ist nicht geschützt, und der Basis-Branch hat keine Schutzregel der einen oder anderen Art | Standard-Branch | Stammdatei |235| Der Standard-Branch ist nicht geschützt, und der Basis-Branch hat keine Schutzregel der einen oder anderen Art | Standard-Branch | Stammdatei |

223| Code Review kann die Schutzeinstellungen nicht bestätigen. Dazu gehört ein ungeschützter Standard-Branch mit einem Basis-Branch, der nur eine klassische Regel hat | Keine | Keine |236| Code Review kann die Schutzeinstellungen nicht bestätigen. Dazu gehört ein ungeschützter Standard-Branch mit einem Basis-Branch, der nur eine klassische Regel hat | Keine | Keine |

224 237 

Details

4 4 

5# iOS-Apps im Simulator testen5# iOS-Apps im Simulator testen

6 6 

7> Claude Code Desktop öffnet Ihre App im iOS-Simulator-Bereich, wenn Claude sie erstellt, ausführt oder überprüft. Jede Sitzung hat einen separaten Simulator.7> Claude Code Desktop öffnet Ihre App im iOS-Simulator-Bereich, wenn Claude sie erstellt, ausführt oder überprüft.

8 8 

9> [!NOTE]9> [!NOTE]

10>10>


63 63 

64Wenn die App in einem Simulator startet, öffnet sich der iOS-Simulator-Bereich neben der Unterhaltung. Wenn Claude ein Gerät zum ersten Mal nutzt, fragt die Desktop-App Sie um Erlaubnis; siehe [Gewähren Sie Claude Zugriff auf ein Gerät](#grant-claude-access-to-a-device). Claude installiert die App, tippt sie durch und liest den Bildschirm, um seine eigenen Änderungen zu überprüfen, während Sie zuschauen.64Wenn die App in einem Simulator startet, öffnet sich der iOS-Simulator-Bereich neben der Unterhaltung. Wenn Claude ein Gerät zum ersten Mal nutzt, fragt die Desktop-App Sie um Erlaubnis; siehe [Gewähren Sie Claude Zugriff auf ein Gerät](#grant-claude-access-to-a-device). Claude installiert die App, tippt sie durch und liest den Bildschirm, um seine eigenen Änderungen zu überprüfen, während Sie zuschauen.

65 65 

66Der Simulator-Bereich öffnet sich, wenn Claude die App in einem Simulator startet, an jedem Punkt in der Sitzung. Wenn Ihre Anfrage darum geht, die App zu sehen, zum Beispiel „sieht der neue Bildschirm richtig aus?“, startet Claude einen Simulator, bevor er mit der Arbeit beginnt. Nachdem Claude einen Fehler behoben oder einen Bildschirm geändert hat, bitten Sie ihn, die Änderung zu überprüfen: Das Neustarten der App öffnet den Bereich erneut, wenn er nicht offen ist.66Wenn Ihre Anfrage darum geht, die App zu sehen, zum Beispiel „sieht der neue Bildschirm richtig aus?“, startet Claude einen Simulator, bevor er mit der Arbeit beginnt. Nachdem Claude einen Fehler behoben oder einen Bildschirm geändert hat, bitten Sie ihn, die Änderung zu überprüfen.

67 67 

68Der Simulator-Bereich zeigt das Gerät, auf dem die App tatsächlich gestartet wurde. Um auf einem bestimmten Gerät zu testen, nennen Sie es in Ihrer Anfrage, zum Beispiel „führe es auf dem iPhone SE Simulator aus“, und Claude zielt auf dieses Gerät ab, wenn es erstellt und startet.68Der Simulator-Bereich zeigt das Gerät, auf dem die App tatsächlich gestartet wurde. Um auf einem bestimmten Gerät zu testen, nennen Sie es in Ihrer Anfrage, zum Beispiel „führe es auf dem iPhone SE Simulator aus“, und Claude zielt auf dieses Gerät ab, wenn es erstellt und startet.

69 69 


86 86 

87Sie und Claude steuern das gleiche Gerät, daher ändern Ihre Taps den App-Status, den Claude sieht. Um Claude einen bestimmten Bildschirm überprüfen zu lassen, navigieren Sie dorthin, indem Sie tippen, und fragen Sie dann. Während Claude das Gerät steuert, zeigt der Bereich ein Badge **Claude is using this device** über dem Bildschirm an; halten Sie mit dem Tippen an, bis das Badge verschwindet, damit das Ergebnis die App und nicht Ihre Eingabe widerspiegelt.87Sie und Claude steuern das gleiche Gerät, daher ändern Ihre Taps den App-Status, den Claude sieht. Um Claude einen bestimmten Bildschirm überprüfen zu lassen, navigieren Sie dorthin, indem Sie tippen, und fragen Sie dann. Während Claude das Gerät steuert, zeigt der Bereich ein Badge **Claude is using this device** über dem Bildschirm an; halten Sie mit dem Tippen an, bis das Badge verschwindet, damit das Ergebnis die App und nicht Ihre Eingabe widerspiegelt.

88 88 

89### Simulator-Bereich minimieren oder schließen

90 

91Sie können den Simulator-Bereich minimieren oder schließen, und Claude kann das Gerät in beiden Fällen weiterhin verwenden.

92 

93* Wenn Sie den Bereich minimieren, bleibt das Gerät in verkleinerter Größe sichtbar. Wie Sie den Bereich minimieren oder wieder erweitern, erfahren Sie unter [Einen Bereich minimieren](https://code.claude.com/docs/de/desktop.md#minimize-a-pane).

94* Wenn Sie den Bereich in voller Größe oder den minimierten Bereich schließen, bleibt das Gerät verbunden und läuft weiter. Um das Gerät wieder anzuzeigen, klicken Sie in der Titelleiste der Sitzung auf **iOS Simulator**.

95 

89## Wie Sitzungen Geräte verwalten96## Wie Sitzungen Geräte verwalten

90 97 

91Jedes Gerät gehört der Sitzung, die es gestartet hat, daher teilen sich [parallele Sitzungen](https://code.claude.com/docs/de/desktop.md#work-in-parallel-with-sessions) kein Gerät: Was Sie im Bereich einer Sitzung sehen, spiegelt die Arbeit dieser Sitzung wider, nicht die einer anderen. Das Wechseln von Sitzungen in der Seitenleiste wechselt die Simulator-Ansicht zusammen mit der Unterhaltung, und das Zurückwechseln setzt das gleiche Gerät fort, wo es aufgehört hat. Wenn Claude mit mehr als einem Gerät arbeitet, öffnet jedes seinen eigenen Bereich, bis zu 4 pro Sitzung.98Wenn Ihr Prompt keinen Simulator benennt, verwendet Claude einen, der bereits läuft, auch wenn eine andere [parallele Sitzung](https://code.claude.com/docs/de/desktop.md#work-in-parallel-with-sessions) ihn geöffnet hat. Um jeder Sitzung einen eigenen Simulator zu geben, benennen Sie im Prompt jeder Sitzung einen anderen.

92 99 

93Claude Code Desktop fährt die Simulatoren herunter, die es gestartet hat, sobald sie nicht mehr verwendet werden: wenn Sie die App beenden, wenn Sie die Sitzung archivieren, oder 10 Minuten, nachdem Sie ein Gerät von seinem Bereich trennen. Geräte, die Sie außerhalb von Claude Code Desktop starten, etwa in Apples Simulator-App oder in Device Hub, werden niemals automatisch heruntergefahren. Um das angehängte Gerät sofort herunterzufahren, verwenden Sie die Schaltfläche zum Herunterfahren im Bereich.100Claude Code Desktop fährt die Simulatoren herunter, die es gestartet hat, sobald sie nicht mehr verwendet werden: wenn Sie die App beenden, wenn Sie die Sitzung archivieren, oder 10 Minuten, nachdem Sie ein Gerät von seinem Bereich trennen. Geräte, die Sie außerhalb von Claude Code Desktop starten, etwa in Apples Simulator-App oder in Device Hub, werden niemals automatisch heruntergefahren. Um das angehängte Gerät sofort herunterzufahren, verwenden Sie die Schaltfläche zum Herunterfahren im Bereich.

94 101 


102 109 

103Nachdem Sie ein Gerät zugelassen haben, laufen Claudes Aktionen darauf, wie Tippen, Eingeben und Erstellen von Screenshots, ohne Nachfrage ab, das Starten der App genehmigen Sie jedoch so, wie es Ihr [Berechtigungsmodus](#actions-that-follow-your-permission-mode) erfordert. Sie haben das gleiche Vertrauen wie Ihr Klicken im Bereich, und sie berühren nur das simulierte Gerät, daher benötigt der Bereich nicht die macOS-Barrierefreiheits- und Bildschirmaufzeichnungsberechtigungen, die die Computernutzung erfordert.110Nachdem Sie ein Gerät zugelassen haben, laufen Claudes Aktionen darauf, wie Tippen, Eingeben und Erstellen von Screenshots, ohne Nachfrage ab, das Starten der App genehmigen Sie jedoch so, wie es Ihr [Berechtigungsmodus](#actions-that-follow-your-permission-mode) erfordert. Sie haben das gleiche Vertrauen wie Ihr Klicken im Bereich, und sie berühren nur das simulierte Gerät, daher benötigt der Bereich nicht die macOS-Barrierefreiheits- und Bildschirmaufzeichnungsberechtigungen, die die Computernutzung erfordert.

104 111 

105Wenn Sie ablehnen, startet das Gerät immer noch und der Bereich funktioniert immer noch für Ihre eigenen Taps; nur Claudes Zugriff bleibt deaktiviert. Um Ihre Meinung später zu ändern, klicken Sie auf **Let Claude use it** im Bereich.112Wenn Sie Claudes Anfrage ablehnen, wird das Gerät nicht angeschlossen und Desktop startet es nicht. So verwenden Sie das Gerät selbst:

113 

1141. Klicken Sie im Bereich auf **Attach simulator**.

1152. Klicken Sie auf dem Berechtigungsbildschirm auf **Continue**.

1163. Klicken Sie im darauf folgenden Dialog auf **Cancel**.

117 

118Das Gerät wird angeschlossen und funktioniert für Ihre eigenen Taps, und Claudes Zugriff bleibt deaktiviert. Um Claude danach Zugriff zu gewähren, klicken Sie im Bereich auf **Let Claude use it**.

106 119 

107### Aktionen, die Ihrem Berechtigungsmodus folgen120### Aktionen, die Ihrem Berechtigungsmodus folgen

108 121 

Details

53gpg --show-keys /usr/share/keyrings/claude-desktop-archive-keyring.asc53gpg --show-keys /usr/share/keyrings/claude-desktop-archive-keyring.asc

54```54```

55 55 

56Der Fingerabdruck, den gpg ausgibt, sollte `31DDDE24DDFAB679F42D7BD2BAA929FF1A7ECACE` sein. Wenn gpg meldet, dass die Datei nicht geöffnet werden kann oder keine gültigen OpenPGP-Daten enthält, ist der Download fehlgeschlagen oder hat den falschen Inhalt zurückgegeben: Bestätigen Sie, dass Ihr Netzwerk `downloads.claude.ai` erreichen kann, und führen Sie dann den Download-Befehl erneut aus.56Der einzige Fingerabdruck, den gpg ausgibt, sollte `31DDDE24DDFAB679F42D7BD2BAA929FF1A7ECACE` sein. Wenn gpg meldet, dass die Datei nicht geöffnet werden kann oder keine gültigen OpenPGP-Daten enthält, ist der Download fehlgeschlagen oder hat den falschen Inhalt zurückgegeben. Bestätigen Sie, dass Ihr Netzwerk `downloads.claude.ai` erreichen kann, und führen Sie dann den Download-Befehl erneut aus.

57 57 

58Registrieren Sie das Repository:58Registrieren Sie das Repository:

59 59 

Details

160 160 

161## Berechtigungen für geplante Aufgaben161## Berechtigungen für geplante Aufgaben

162 162 

163Jede Aufgabe hat ihren eigenen Berechtigungsmodus, den Sie beim Erstellen oder Bearbeiten der Aufgabe festlegen. Zulassungsregeln aus `~/.claude/settings.json` gelten auch für geplante Aufgabensitzungen. Wenn eine Aufgabe im [Manuellen Modus](https://code.claude.com/docs/de/desktop.md#choose-a-permission-mode) ausgeführt wird und ein Tool ausführen muss, für das sie keine Berechtigung hat, bleibt die Ausführung stehen, bis Sie sie genehmigen. Um sie zu genehmigen, [suchen Sie die Sitzung der Ausführung](#find-a-runs-session) und beantworten Sie dort die Berechtigungsabfrage.163Jede Aufgabe hat ihren eigenen [Berechtigungsmodus](https://code.claude.com/docs/de/desktop.md#choose-a-permission-mode), den Sie beim Erstellen oder Bearbeiten der Aufgabe festlegen. Zulassungsregeln aus `~/.claude/settings.json` gelten auch für Sitzungen geplanter Aufgaben. Wenn eine Ausführung an einer Berechtigungsabfrage stehen bleibt, [suchen Sie die Sitzung der Ausführung](#find-a-runs-session) und beantworten Sie dort die Abfrage.

164 164 

165Um Stalls zu vermeiden, klicken Sie nach dem Erstellen einer Aufgabe auf **Jetzt ausführen**, achten Sie auf Berechtigungsaufforderungen und wählen Sie für jede „immer zulassen“. Zukünftige Ausführungen dieser Aufgabe genehmigen automatisch die gleichen Tools ohne Aufforderung. Sie können diese Genehmigungen auf der Detailseite der Aufgabe überprüfen und widerrufen.165Um ein Stehenbleiben zu vermeiden, klicken Sie nach dem Erstellen einer Aufgabe auf **Jetzt ausführen**, achten Sie auf Berechtigungsabfragen und wählen Sie für jede „immer zulassen“. Zukünftige Ausführungen überspringen die meisten dieser Abfragen. Sie können diese Genehmigungen auf der Detailseite der Aufgabe überprüfen und widerrufen. Wenn Sie bei einer Dateibearbeitung im Ordner der Aufgabe „immer zulassen“ wählen, wechselt nur diese Sitzung zu **Bearbeitungen akzeptieren**. Legen Sie daher den Berechtigungsmodus der Aufgabe auf **Bearbeitungen akzeptieren** fest.

166 166 

167MCP-Tools, die mit [`requiresUserInteraction`](https://code.claude.com/docs/de/mcp#require-approval-for-a-specific-tool) gekennzeichnet sind, werden bei jedem Aufruf angefordert und bieten keine Option „immer zulassen“. Ausführungen, die diese Tools aufrufen, bleiben jedes Mal stehen.167MCP-Tools, die mit [`requiresUserInteraction`](https://code.claude.com/docs/de/mcp#require-approval-for-a-specific-tool) gekennzeichnet sind, werden bei jedem Aufruf angefordert und bieten keine Option „immer zulassen“. Ausführungen, die diese Tools aufrufen, bleiben jedes Mal stehen.

168 168 


179 179 

180Sie können Aufgaben auch auflisten, erstellen, bearbeiten und pausieren, indem Sie Claude in einer beliebigen Desktop-Sitzung bitten. Zum Beispiel „Pausieren Sie meine Aufgabe zur Abhängigkeitsprüfung“ oder „Zeigen Sie mir meine geplanten Aufgaben.“ Um eine Aufgabe zu löschen, verwenden Sie die Schaltfläche **Löschen** auf ihrer Detailseite.180Sie können Aufgaben auch auflisten, erstellen, bearbeiten und pausieren, indem Sie Claude in einer beliebigen Desktop-Sitzung bitten. Zum Beispiel „Pausieren Sie meine Aufgabe zur Abhängigkeitsprüfung“ oder „Zeigen Sie mir meine geplanten Aufgaben.“ Um eine Aufgabe zu löschen, verwenden Sie die Schaltfläche **Löschen** auf ihrer Detailseite.

181 181 

182Eine geplante Aufgabe kann auch ihren eigenen Zeitplan oder ihre Eingabeaufforderung innerhalb einer laufenden Sitzung mit dem MCP-Tool `update_scheduled_task` ändern. Dies ermöglicht es einer Aufgabe, sich selbst neu zu planen, basierend auf dem, was sie findet, zum Beispiel das Umplanen eines Code-Reviews, um früher ausgeführt zu werden, wenn es einen Release-Branch erkennt.182Damit eine Aufgabe ihren eigenen Zeitplan oder Prompt mit dem MCP-Tool `update_scheduled_task` ändern kann, klicken Sie auf **Jetzt ausführen** und genehmigen Sie den Aufruf jedes Mal.

183 183 

184Um die Eingabeaufforderung einer Aufgabe auf der Festplatte zu bearbeiten, öffnen Sie `~/.claude/scheduled-tasks/<task-name>/SKILL.md` (oder unter [`CLAUDE_CONFIG_DIR`](https://code.claude.com/docs/de/env-vars), falls gesetzt). Die Datei verwendet YAML-Frontmatter für `name` und `description`, mit der Eingabeaufforderung als Text. Änderungen werden bei der nächsten Ausführung wirksam. Zeitplan, Ordner, Modell und aktivierter Status befinden sich nicht in dieser Datei: Ändern Sie sie über das Bearbeitungsformular oder bitten Sie Claude.184Um die Eingabeaufforderung einer Aufgabe auf der Festplatte zu bearbeiten, öffnen Sie `~/.claude/scheduled-tasks/<task-name>/SKILL.md` (oder unter [`CLAUDE_CONFIG_DIR`](https://code.claude.com/docs/de/env-vars), falls gesetzt). Die Datei verwendet YAML-Frontmatter für `name` und `description`, mit der Eingabeaufforderung als Text. Änderungen werden bei der nächsten Ausführung wirksam. Zeitplan, Ordner, Modell und aktivierter Status befinden sich nicht in dieser Datei: Ändern Sie sie über das Bearbeitungsformular oder bitten Sie Claude.

185 185 

env-vars.md +5 −3

Details

221| `CLAUDE_CODE_CLIENT_CERT` | Pfad zur Client-Zertifikatsdatei für die mTLS-Authentifizierung |221| `CLAUDE_CODE_CLIENT_CERT` | Pfad zur Client-Zertifikatsdatei für die mTLS-Authentifizierung |

222| `CLAUDE_CODE_CLIENT_KEY` | Pfad zur Datei mit dem privaten Client-Schlüssel für die mTLS-Authentifizierung |222| `CLAUDE_CODE_CLIENT_KEY` | Pfad zur Datei mit dem privaten Client-Schlüssel für die mTLS-Authentifizierung |

223| `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE` | Passphrase für einen verschlüsselten CLAUDE\_CODE\_CLIENT\_KEY (optional) |223| `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE` | Passphrase für einen verschlüsselten CLAUDE\_CODE\_CLIENT\_KEY (optional) |

224| `CLAUDE_CODE_CONFIG_LOCK_WAIT_MS` | Millisekunden, die ein Befehl, der einen MCP-Server mit dem Geltungsbereich `user` oder `local` hinzufügt oder entfernt, etwa `claude mcp add`, weiterhin versucht, die Sperre für `~/.claude.json` zu erhalten, bevor er [fehlschlägt](https://code.claude.com/docs/de/errors.md#mcp-server-was-not-saved-or-removed). Wenn die Variable nicht gesetzt ist, wartet der Befehl etwa 10 bis 20 Sekunden, und ein kürzerer Wert ändert nichts. Erfordert Claude Code v2.1.318 oder höher |

224| `CLAUDE_CODE_CONNECT_TIMEOUT_MS` | In v2.1.186 entfernt und jetzt wirkungslos. Legte zuvor einen separaten Timeout für die Verbindungs-, TLS- und Response-Header-Phase einer Streaming-API-Anfrage fest. Verwenden Sie stattdessen `API_TIMEOUT_MS`. Für die Response-Header-Phase einer Streaming-Anfrage siehe `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` |225| `CLAUDE_CODE_CONNECT_TIMEOUT_MS` | In v2.1.186 entfernt und jetzt wirkungslos. Legte zuvor einen separaten Timeout für die Verbindungs-, TLS- und Response-Header-Phase einer Streaming-API-Anfrage fest. Verwenden Sie stattdessen `API_TIMEOUT_MS`. Für die Response-Header-Phase einer Streaming-Anfrage siehe `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` |

225| `CLAUDE_CODE_DEBUG_LOGS_DIR` | Überschreibt den Pfad der Debug-Logdatei. Trotz des Namens ist dies ein Dateipfad, kein Verzeichnis. Erfordert, dass der Debug-Modus separat über `--debug`, `/debug` oder die Umgebungsvariable `DEBUG` aktiviert wird: Das Setzen dieser Variable allein aktiviert das Logging nicht. Das Flag [`--debug-file`](https://code.claude.com/docs/de/cli-reference#cli-flags) erledigt beides gleichzeitig. Standardwert ist `~/.claude/debug/<session-id>.txt` |226| `CLAUDE_CODE_DEBUG_LOGS_DIR` | Überschreibt den Pfad der Debug-Logdatei. Trotz des Namens ist dies ein Dateipfad, kein Verzeichnis. Erfordert, dass der Debug-Modus separat über `--debug`, `/debug` oder die Umgebungsvariable `DEBUG` aktiviert wird: Das Setzen dieser Variable allein aktiviert das Logging nicht. Das Flag [`--debug-file`](https://code.claude.com/docs/de/cli-reference#cli-flags) erledigt beides gleichzeitig. Standardwert ist `~/.claude/debug/<session-id>.txt` |

226| `CLAUDE_CODE_DEBUG_LOG_LEVEL` | Minimale Log-Stufe, die in die Debug-Logdatei geschrieben wird. Werte: `verbose`, `debug` (Standard), `info`, `warn`, `error`. Setzen Sie `verbose`, um umfangreiche Diagnosedaten wie die vollständige Ausgabe des Statuszeilenbefehls einzuschließen, oder erhöhen Sie auf `error`, um überflüssige Meldungen zu reduzieren |227| `CLAUDE_CODE_DEBUG_LOG_LEVEL` | Minimale Log-Stufe, die in die Debug-Logdatei geschrieben wird. Werte: `verbose`, `debug` (Standard), `info`, `warn`, `error`. Setzen Sie `verbose`, um umfangreiche Diagnosedaten wie die vollständige Ausgabe des Statuszeilenbefehls einzuschließen, oder erhöhen Sie auf `error`, um überflüssige Meldungen zu reduzieren |


277| `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 |278| `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 |

278| `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 |279| `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 |

279| `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) |280| `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) |

281| `CLAUDE_CODE_DROP_UNAVAILABLE_DEFERRED_TOOL` | Setzen Sie diese Variable auf `1`, um einen [zurückgestellten Tool-Aufruf](https://code.claude.com/docs/de/hooks.md#resume-when-a-deferred-tool-is-unavailable) zu verwerfen, dessen Tool beim Fortsetzen mit `-p` nicht verfügbar ist. Ohne diese Variable bleibt der Aufruf ausstehend, und ein von Ihnen gesendeter Prompt erreicht Claude nicht. Erfordert Claude Code v2.1.319 oder neuer |

280| `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) |282| `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) |

281| `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` |283| `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` |

282| `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 |284| `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 |


295| `CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS` | Auf `1` setzen, um [gefährliche `rm`-Befehle ohne Nachfrage auszuführen](https://code.claude.com/docs/de/permission-modes#turn-off-the-critical-path-removal-prompt-in-bypasspermissions-mode), wenn der Modus `bypassPermissions` aktiv ist; dadurch entfällt eine Sicherheitsabfrage vor destruktiven Löschvorgängen. Im verlinkten Abschnitt ist aufgeführt, wo die Variable keine Wirkung hat. [Setzen Sie sie in der Umgebung, aus der Claude Code gestartet wird](#set-variables-in-your-shell), da Claude Code sie [in einem `env`-Block von Einstellungen ignoriert](https://code.claude.com/docs/de/settings-reference#variables-claude-code-ignores-in-env). Erfordert Claude Code v2.1.311 oder höher |297| `CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS` | Auf `1` setzen, um [gefährliche `rm`-Befehle ohne Nachfrage auszuführen](https://code.claude.com/docs/de/permission-modes#turn-off-the-critical-path-removal-prompt-in-bypasspermissions-mode), wenn der Modus `bypassPermissions` aktiv ist; dadurch entfällt eine Sicherheitsabfrage vor destruktiven Löschvorgängen. Im verlinkten Abschnitt ist aufgeführt, wo die Variable keine Wirkung hat. [Setzen Sie sie in der Umgebung, aus der Claude Code gestartet wird](#set-variables-in-your-shell), da Claude Code sie [in einem `env`-Block von Einstellungen ignoriert](https://code.claude.com/docs/de/settings-reference#variables-claude-code-ignores-in-env). Erfordert Claude Code v2.1.311 oder höher |

296| `CLAUDE_CODE_EXIT_AFTER_STOP_DELAY` | Zeit in Millisekunden, die nach dem Übergang der Abfrageschleife in den Leerlauf gewartet wird, bevor automatisch beendet wird. Nützlich für automatisierte Workflows und Skripte, die den SDK-Modus verwenden |298| `CLAUDE_CODE_EXIT_AFTER_STOP_DELAY` | Zeit in Millisekunden, die nach dem Übergang der Abfrageschleife in den Leerlauf gewartet wird, bevor automatisch beendet wird. Nützlich für automatisierte Workflows und Skripte, die den SDK-Modus verwenden |

297| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | Auf `1` setzen, um [Agent Teams](https://code.claude.com/docs/de/agent-teams.md) zu aktivieren. Agent Teams sind experimentell und standardmäßig deaktiviert |299| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | Auf `1` setzen, um [Agent Teams](https://code.claude.com/docs/de/agent-teams.md) zu aktivieren. Agent Teams sind experimentell und standardmäßig deaktiviert |

298| `CLAUDE_CODE_EXTRA_BODY` | JSON-Objekt, das in die oberste Ebene des Bodys jeder API-Anfrage zusammengeführt wird. Nützlich, um anbieterspezifische Parameter zu übergeben, die Claude Code nicht direkt bereitstellt. Ein in Ihrer Shell exportierter Wert gilt auch für die [Hintergrundsitzungen](https://code.claude.com/docs/de/agent-view.md), die Sie mit `claude agents` oder `--bg` starten. Vor v2.1.206 ignorierten Hintergrundsitzungen einen in der Shell exportierten Wert und verwendeten die Kopie, die der Hintergrund-Supervisor-Prozess geerbt hatte |300| `CLAUDE_CODE_EXTRA_BODY` | JSON-Objekt, das in die oberste Ebene der Request-Bodys von Modellanfragen zusammengeführt wird, außer bei einigen Anfragen außerhalb der Konversation, etwa `/model`-Prüfungen. Nützlich, um anbieterspezifische Parameter zu übergeben, die Claude Code nicht direkt bereitstellt. Ein in Ihrer Shell exportierter Wert gilt auch für die [Hintergrundsitzungen](https://code.claude.com/docs/de/agent-view.md), die Sie mit `claude agents` oder `--bg` starten. Vor v2.1.206 ignorierten Hintergrundsitzungen einen in der Shell exportierten Wert und verwendeten die Kopie, die der Supervisor-Prozess im Hintergrund geerbt hatte |

299| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | Überschreibt das standardmäßige Token-Limit für [Dateilesevorgänge](https://code.claude.com/docs/de/tools-reference.md#large-files), das 25.000 Token beträgt. Nützlich, wenn Sie größere Dateien vollständig lesen müssen. Ein Lesevorgang, den Claude mit dem Parameter `allow_large` ausführt, kann dieses Limit überschreiten, wenn im Kontextfenster Platz ist |301| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | Überschreibt das standardmäßige Token-Limit für [Dateilesevorgänge](https://code.claude.com/docs/de/tools-reference.md#large-files), das 25.000 Token beträgt. Nützlich, wenn Sie größere Dateien vollständig lesen müssen. Ein Lesevorgang, den Claude mit dem Parameter `allow_large` ausführt, kann dieses Limit überschreiten, wenn im Kontextfenster Platz ist |

300| `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE` | Auf `1` setzen, um die Persistenz von Transkripten, den Prompt-Verlauf und die Registrierung bei `claude agents` zu erzwingen, selbst wenn dieses `claude` aus einer anderen Claude Code-Sitzung heraus gestartet wurde. Verwenden Sie dies, wenn ein geerbter `CLAUDE_CODE_CHILD_SESSION`-Wert, etwa aus einer `screen`-Sitzung oder einem Hintergrund-Launcher, der zuerst vom Bash-Tool von Claude Code gestartet wurde, dazu führt, dass eine echte Sitzung der obersten Ebene fälschlich als verschachtelt eingestuft wird. Ab v2.1.178 erkennt Claude Code den tmux-Fall automatisch und ignoriert die geerbte Markierung, sodass tmux diese Variable nicht mehr benötigt. Wird auch in v2.1.169 und früher berücksichtigt; hat in v2.1.170 und v2.1.171 keine Wirkung, da dort die Erkennung verschachtelter Sitzungen, die sie überschreibt, entfernt war |302| `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE` | Auf `1` setzen, um die Persistenz von Transkripten, den Prompt-Verlauf und die Registrierung bei `claude agents` zu erzwingen, selbst wenn dieses `claude` aus einer anderen Claude Code-Sitzung heraus gestartet wurde. Verwenden Sie dies, wenn ein geerbter `CLAUDE_CODE_CHILD_SESSION`-Wert, etwa aus einer `screen`-Sitzung oder einem Hintergrund-Launcher, der zuerst vom Bash-Tool von Claude Code gestartet wurde, dazu führt, dass eine echte Sitzung der obersten Ebene fälschlich als verschachtelt eingestuft wird. Ab v2.1.178 erkennt Claude Code den tmux-Fall automatisch und ignoriert die geerbte Markierung, sodass tmux diese Variable nicht mehr benötigt. Wird auch in v2.1.169 und früher berücksichtigt; hat in v2.1.170 und v2.1.171 keine Wirkung, da dort die Erkennung verschachtelter Sitzungen, die sie überschreibt, entfernt war |

301| `CLAUDE_CODE_FORCE_STRIKETHROUGH` | Auf `1` setzen, um die durchgestrichene Darstellung von `~~text~~` in Claudes Antworten zu erzwingen, wenn Ihr Terminal sie unterstützt, aber nicht automatisch erkannt wird, etwa über SSH ohne weitergeleitetes `TERM_PROGRAM`. Ohne diese Variable zeigen nicht erkannte Terminals die wörtlichen `~~`-Markierungen an, statt den Text durchgestrichen darzustellen. Erfordert Claude Code v2.1.186 oder höher |303| `CLAUDE_CODE_FORCE_STRIKETHROUGH` | Auf `1` setzen, um die durchgestrichene Darstellung von `~~text~~` in Claudes Antworten zu erzwingen, wenn Ihr Terminal sie unterstützt, aber nicht automatisch erkannt wird, etwa über SSH ohne weitergeleitetes `TERM_PROGRAM`. Ohne diese Variable zeigen nicht erkannte Terminals die wörtlichen `~~`-Markierungen an, statt den Text durchgestrichen darzustellen. Erfordert Claude Code v2.1.186 oder höher |


313| `CLAUDE_CODE_GZIP_REQUEST_BODIES` | Auf `0` setzen, um die gzip-Komprimierung der Request-Bodys für die Claude API, Telemetrie und die Veröffentlichung von [Artefakten](https://code.claude.com/docs/de/artifacts.md) auszuschalten, die an `api.anthropic.com` gesendet werden. Standardmäßig komprimiert Claude Code große Request-Bodys bei direkten Verbindungen und überspringt die Komprimierung, wenn Sie Anfragen über einen Proxy senden, ein Clientzertifikat konfigurieren oder `NODE_EXTRA_CA_CERTS` setzen. Verwenden Sie `0`, wenn ein [TLS-inspizierender Proxy](https://code.claude.com/docs/de/network-config.md#ca-certificate-store), den Claude Code nicht erkennen kann, komprimierte Anfragen falsch verarbeitet |315| `CLAUDE_CODE_GZIP_REQUEST_BODIES` | Auf `0` setzen, um die gzip-Komprimierung der Request-Bodys für die Claude API, Telemetrie und die Veröffentlichung von [Artefakten](https://code.claude.com/docs/de/artifacts.md) auszuschalten, die an `api.anthropic.com` gesendet werden. Standardmäßig komprimiert Claude Code große Request-Bodys bei direkten Verbindungen und überspringt die Komprimierung, wenn Sie Anfragen über einen Proxy senden, ein Clientzertifikat konfigurieren oder `NODE_EXTRA_CA_CERTS` setzen. Verwenden Sie `0`, wenn ein [TLS-inspizierender Proxy](https://code.claude.com/docs/de/network-config.md#ca-certificate-store), den Claude Code nicht erkennen kann, komprimierte Anfragen falsch verarbeitet |

314| `CLAUDE_CODE_HIDE_CWD` | Auf `1` setzen, um das Arbeitsverzeichnis im Startlogo auszublenden. Nützlich für Bildschirmfreigaben oder Aufzeichnungen, bei denen der Pfad Ihren Betriebssystem-Benutzernamen preisgibt |316| `CLAUDE_CODE_HIDE_CWD` | Auf `1` setzen, um das Arbeitsverzeichnis im Startlogo auszublenden. Nützlich für Bildschirmfreigaben oder Aufzeichnungen, bei denen der Pfad Ihren Betriebssystem-Benutzernamen preisgibt |

315| `CLAUDE_CODE_IDE_HOST_OVERRIDE` | Überschreibt die Host-Adresse, die für die Verbindung zur IDE-Erweiterung verwendet wird. Standardmäßig erkennt Claude Code die richtige Adresse automatisch, einschließlich des Routings von WSL zu Windows |317| `CLAUDE_CODE_IDE_HOST_OVERRIDE` | Überschreibt die Host-Adresse, die für die Verbindung zur IDE-Erweiterung verwendet wird. Standardmäßig erkennt Claude Code die richtige Adresse automatisch, einschließlich des Routings von WSL zu Windows |

316| `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL` | Auf `1` setzen, damit `/ide` die IDE-Erweiterung nicht installiert. Entspricht dem Setzen von [`autoInstallIdeExtension`](https://code.claude.com/docs/de/settings-reference#autoinstallideextension) auf `false` |318| `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL` | Auf `1` setzen, damit `/ide` die IDE-Erweiterung nicht installiert. Entspricht dem Setzen von [`autoInstallIdeExtension`](https://code.claude.com/docs/de/settings-reference#autoinstallideextension) auf `false`. Claude-Code-Versionen vor v2.1.318 installieren oder aktualisieren die Erweiterung auch, wenn Sie `claude` in einem Terminal von VS Code, Cursor oder Devin Desktop starten. Diese Variable verhindert auch das |

317| `CLAUDE_CODE_IDE_SKIP_VALID_CHECK` | Auf `1` setzen, um die Validierung von IDE-Lockfile-Einträgen während der Verbindung zu überspringen. Verwenden Sie dies, wenn die automatische Verbindung Ihre IDE nicht findet, obwohl sie läuft |319| `CLAUDE_CODE_IDE_SKIP_VALID_CHECK` | Auf `1` setzen, um die Validierung von IDE-Lockfile-Einträgen während der Verbindung zu überspringen. Verwenden Sie dies, wenn die automatische Verbindung Ihre IDE nicht findet, obwohl sie läuft |

318| `CLAUDE_CODE_IDLE_COMPACT_MIN_TOKENS` | Kontextgröße in Token, ab der die [Komprimierung im Leerlauf](https://code.claude.com/docs/de/settings-reference.md#idlecompaction) auf eine Konversation angewendet wird (Standard: `200000`). Akzeptiert eine positive ganze Zahl; alles andere wird ignoriert. Werte unter `100000` werden auf `100000` angehoben, den niedrigsten Schwellenwert. Die Komprimierung im Leerlauf ist für Konversationen, die ihre Bedingungen erfüllen, standardmäßig aktiviert. Um sie zu deaktivieren, setzen Sie `idleCompaction` auf `false`. Erfordert Claude Code v2.1.290 oder höher |320| `CLAUDE_CODE_IDLE_COMPACT_MIN_TOKENS` | Kontextgröße in Token, ab der die [Komprimierung im Leerlauf](https://code.claude.com/docs/de/settings-reference.md#idlecompaction) auf eine Konversation angewendet wird (Standard: `200000`). Akzeptiert eine positive ganze Zahl; alles andere wird ignoriert. Werte unter `100000` werden auf `100000` angehoben, den niedrigsten Schwellenwert. Die Komprimierung im Leerlauf ist für Konversationen, die ihre Bedingungen erfüllen, standardmäßig aktiviert. Um sie zu deaktivieren, setzen Sie `idleCompaction` auf `false`. Erfordert Claude Code v2.1.290 oder höher |

319| `CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS` | Wie viele [Subagenten](https://code.claude.com/docs/de/sub-agents.md#concurrent-subagent-limit) in einer Sitzung gleichzeitig laufen können, bevor das Agent-Tool das Starten eines weiteren verweigert (Standard: 20). Akzeptiert eine positive ganze Zahl in reinen Ziffern; alles andere wird ignoriert, sodass die Variable die Obergrenze anpassen, aber nicht deaktivieren kann. Erfordert Claude Code v2.1.217 oder höher |321| `CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS` | Wie viele [Subagenten](https://code.claude.com/docs/de/sub-agents.md#concurrent-subagent-limit) in einer Sitzung gleichzeitig laufen können, bevor das Agent-Tool das Starten eines weiteren verweigert (Standard: 20). Akzeptiert eine positive ganze Zahl in reinen Ziffern; alles andere wird ignoriert, sodass die Variable die Obergrenze anpassen, aber nicht deaktivieren kann. Erfordert Claude Code v2.1.217 oder höher |


486| `MCP_DISCOVERY_CACHE_STRIKES` | Bei einem Start, bei dem ein [Discovery-Cache](https://code.claude.com/docs/de/mcp.md#server-status-detail)-Eintrag älter als `MCP_DISCOVERY_CACHE_TTL_S` ist, aktualisiert Claude Code ihn im Hintergrund. Diese Variable legt fest, wie viele Aktualisierungen nacheinander fehlschlagen dürfen, bevor Claude Code den Eintrag verwirft und den Server stattdessen beim nächsten Start verbindet (Standard: 1). Erhöhen Sie den Wert, wenn Ihre Netzwerkverbindung gelegentlich abbricht, damit eine einzelne fehlgeschlagene Aktualisierung den Eintrag nicht verwirft. Erfordert Claude Code v2.1.238 oder höher |488| `MCP_DISCOVERY_CACHE_STRIKES` | Bei einem Start, bei dem ein [Discovery-Cache](https://code.claude.com/docs/de/mcp.md#server-status-detail)-Eintrag älter als `MCP_DISCOVERY_CACHE_TTL_S` ist, aktualisiert Claude Code ihn im Hintergrund. Diese Variable legt fest, wie viele Aktualisierungen nacheinander fehlschlagen dürfen, bevor Claude Code den Eintrag verwirft und den Server stattdessen beim nächsten Start verbindet (Standard: 1). Erhöhen Sie den Wert, wenn Ihre Netzwerkverbindung gelegentlich abbricht, damit eine einzelne fehlgeschlagene Aktualisierung den Eintrag nicht verwirft. Erfordert Claude Code v2.1.238 oder höher |

487| `MCP_DISCOVERY_CACHE_TTL_S` | Sekunden, für die Claude Code einen [Discovery-Cache](https://code.claude.com/docs/de/mcp.md#server-status-detail)-Eintrag verwendet, ohne ihn zu aktualisieren (Standard: 900). Bei einem Start, bei dem der Eintrag älter ist, verwendet Claude Code ihn weiterhin, aktualisiert ihn aber im Hintergrund. Sobald der Eintrag älter als `MCP_DISCOVERY_CACHE_MAX_STALE_S` ist, verwirft Claude Code ihn stattdessen. Claude Code begrenzt den Wert auf `MCP_DISCOVERY_CACHE_MAX_STALE_S`, standardmäßig 4 Stunden. Vor v2.1.238 begrenzte Claude Code den Wert nicht |489| `MCP_DISCOVERY_CACHE_TTL_S` | Sekunden, für die Claude Code einen [Discovery-Cache](https://code.claude.com/docs/de/mcp.md#server-status-detail)-Eintrag verwendet, ohne ihn zu aktualisieren (Standard: 900). Bei einem Start, bei dem der Eintrag älter ist, verwendet Claude Code ihn weiterhin, aktualisiert ihn aber im Hintergrund. Sobald der Eintrag älter als `MCP_DISCOVERY_CACHE_MAX_STALE_S` ist, verwirft Claude Code ihn stattdessen. Claude Code begrenzt den Wert auf `MCP_DISCOVERY_CACHE_MAX_STALE_S`, standardmäßig 4 Stunden. Vor v2.1.238 begrenzte Claude Code den Wert nicht |

488| `MCP_OAUTH_CALLBACK_PORT` | Fester Port für den OAuth-Redirect-Callback, als Alternative zu `--callback-port` beim Hinzufügen eines MCP-Servers mit [vorkonfigurierten Anmeldedaten](https://code.claude.com/docs/de/mcp.md#use-pre-configured-oauth-credentials) |490| `MCP_OAUTH_CALLBACK_PORT` | Fester Port für den OAuth-Redirect-Callback, als Alternative zu `--callback-port` beim Hinzufügen eines MCP-Servers mit [vorkonfigurierten Anmeldedaten](https://code.claude.com/docs/de/mcp.md#use-pre-configured-oauth-credentials) |

489| `MCP_PROTOCOL_NEGOTIATION` | Steuert nur in der [v2-MCP-Client-Runtime](https://code.claude.com/docs/de/mcp.md#mcp-client-runtimes), ob Claude Code Server auf die MCP-Protokollrevision 2026-07-28 prüft. Setzen Sie `legacy`, um die Prüfung zu überspringen, sodass sich jeder Server mit dem Handshake aus der Zeit vor dieser Revision verbindet. Setzen Sie `auto`, um die Serverarten zu prüfen, die die Prüfung unterstützen: HTTP- und stdio-Server, claude.ai-Konnektoren sowie die Konnektoren von Cloud- und Remote-Control-Sitzungen. Ohne gesetzte Variable prüft Claude Code standardmäßig dieselben Arten; siehe [MCP-Client-Runtimes](https://code.claude.com/docs/de/mcp.md#mcp-client-runtimes). Jeder andere Wert wird mit einer Warnung im Debug-Log ignoriert. Erfordert Claude Code v2.1.221 oder neuer |491| `MCP_PROTOCOL_NEGOTIATION` | Nur bei der [v2-MCP-Client-Laufzeit](https://code.claude.com/docs/de/mcp.md#mcp-client-runtimes): steuert, ob Claude Code Server auf die MCP-Protokollrevision 2026-07-28 prüft. Setzen Sie `legacy`, um alle Server beim früheren Handshake zu belassen, oder `auto`, um die Serverarten zu prüfen, die sie unterstützen. Wenn nicht gesetzt, prüft Claude Code sie, kann aber [einige Server überspringen](https://code.claude.com/docs/de/mcp.md#mcp-client-runtimes). Jeder andere Wert wird mit einer Warnung im Debug-Log ignoriert. Erfordert Claude Code v2.1.221 oder höher |

490| `MCP_REMOTE_SERVER_CONNECTION_BATCH_SIZE` | Maximale Anzahl von Remote-MCP-Servern (HTTP/SSE), die beim Start parallel verbunden werden (Standard: 20) |492| `MCP_REMOTE_SERVER_CONNECTION_BATCH_SIZE` | Maximale Anzahl von Remote-MCP-Servern (HTTP/SSE), die beim Start parallel verbunden werden (Standard: 20) |

491| `MCP_SDK_GENERATION` | Legt fest, mit welcher [MCP-Client-Laufzeitumgebung](https://code.claude.com/docs/de/mcp.md#mcp-client-runtimes) sich dieser Prozess mit MCP-Servern verbindet: `v1`, basierend auf MCP TypeScript SDK 1.x, oder `v2`, basierend auf [MCP TypeScript SDK 2.0](https://ts.sdk.modelcontextprotocol.io/v2/). Ohne die Variable verwendet Claude Code v2, beginnend mit den in diesem Abschnitt aufgeführten Versionen. Ab Claude Code v2.1.221 prüft die v2-Laufzeitumgebung den Aussteller, den ein MCP-OAuth-Server in seiner Autorisierungsantwort zurückgibt, und lässt die Anmeldung mit einem Fehler fehlschlagen, der mit `Issuer mismatch in authorization response` beginnt, wenn er nicht übereinstimmt. Die v1-Laufzeitumgebung führt diese Prüfung nicht durch. Wenn Sie einen nicht erkannten Wert setzen, ignoriert Claude Code ihn und schreibt eine Warnung in das Debug-Log. Claude Code liest den Wert einmal pro Prozess. Erfordert Claude Code v2.1.218 oder höher |493| `MCP_SDK_GENERATION` | Legt fest, mit welcher [MCP-Client-Laufzeitumgebung](https://code.claude.com/docs/de/mcp.md#mcp-client-runtimes) sich dieser Prozess mit MCP-Servern verbindet: `v1`, basierend auf MCP TypeScript SDK 1.x, oder `v2`, basierend auf [MCP TypeScript SDK 2.0](https://ts.sdk.modelcontextprotocol.io/v2/). Ohne die Variable verwendet Claude Code v2, beginnend mit den in diesem Abschnitt aufgeführten Versionen. Ab Claude Code v2.1.221 prüft die v2-Laufzeitumgebung den Aussteller, den ein MCP-OAuth-Server in seiner Autorisierungsantwort zurückgibt, und lässt die Anmeldung mit einem Fehler fehlschlagen, der mit `Issuer mismatch in authorization response` beginnt, wenn er nicht übereinstimmt. Die v1-Laufzeitumgebung führt diese Prüfung nicht durch. Wenn Sie einen nicht erkannten Wert setzen, ignoriert Claude Code ihn und schreibt eine Warnung in das Debug-Log. Claude Code liest den Wert einmal pro Prozess. Erfordert Claude Code v2.1.218 oder höher |

492| `MCP_SERVER_CONNECTION_BATCH_SIZE` | Maximale Anzahl lokaler MCP-Server (stdio), die beim Start parallel verbunden werden (Standard: 3) |494| `MCP_SERVER_CONNECTION_BATCH_SIZE` | Maximale Anzahl lokaler MCP-Server (stdio), die beim Start parallel verbunden werden (Standard: 3) |

errors.md +27 −17

Details

61| `Could not resolve authentication method` | [Authentifizierung](#could-not-resolve-authentication-method) |61| `Could not resolve authentication method` | [Authentifizierung](#could-not-resolve-authentication-method) |

62| `Invalid API key` | [Authentifizierung](#invalid-api-key) |62| `Invalid API key` | [Authentifizierung](#invalid-api-key) |

63| `Your apiKeyHelper script is failing` | [Authentifizierung](#your-apikeyhelper-script-is-failing) |63| `Your apiKeyHelper script is failing` | [Authentifizierung](#your-apikeyhelper-script-is-failing) |

64| `Claude Code didn't send your claude.ai login, because the API key helper your administrator set isn't in effect` | [Authentifizierung](#claude-code-didnt-send-your-claude-ai-login) |64| `Your organization's settings need an update` | [Authentifizierung](#claude-code-didnt-send-your-claude-ai-login) |

65| `Couldn't load your organization's settings. Check your connection` | [Authentifizierung](#claude-code-didnt-send-your-claude-ai-login) |

66| `Restart Claude Code to finish signing in` | [Authentifizierung](#claude-code-didnt-send-your-claude-ai-login) |

65| `Invalid auth token · Fix external auth token` | [Authentifizierung](#invalid-request-header-value) |67| `Invalid auth token · Fix external auth token` | [Authentifizierung](#invalid-request-header-value) |

66| `Invalid ANTHROPIC_CUSTOM_HEADERS · Fix the environment variable` | [Authentifizierung](#invalid-request-header-value) |68| `Invalid ANTHROPIC_CUSTOM_HEADERS · Fix the environment variable` | [Authentifizierung](#invalid-request-header-value) |

67| `Invalid request header from the environment · Fix the environment variable` | [Authentifizierung](#invalid-request-header-value) |69| `Invalid request header from the environment · Fix the environment variable` | [Authentifizierung](#invalid-request-header-value) |


1117 1119 

1118### Claude Code didn't send your claude.ai login1120### Claude Code didn't send your claude.ai login

1119 1121 

1120Senden Sie diese vollständige Meldung an Ihren Administrator. Sie listet die Änderungen auf, die er vornehmen kann. Die Meldung bedeutet, dass Claude Code Ihren Prompt abgelehnt hat. Solange Sie Ihre claude.ai-Anmeldung verwenden, lehnt Claude Code Prompts weiterhin ab, auch nach einem Neustart:1122Diese Meldungen bedeuten, dass Claude Code Ihre Anfrage abgelehnt und Ihre claude.ai-Anmeldung nicht gesendet hat:

1121 1123 

1122```text theme={null}1124```text theme={null}

1123Claude Code didn't send your claude.ai login, because the API key helper your administrator set isn't in effect. Your organization's managed settings may be overriding it. Ask your administrator to keep the key helper and its API address in effect, to name Anthropic's API address in those managed settings, or to remove the key helper. Run /status to see your setting sources.1125Your organization's settings need an update. Ask your administrator to fix the API key helper configuration.

1126Couldn't load your organization's settings. Check your connection, then restart Claude Code.

1127Restart Claude Code to finish signing in.

1124```1128```

1125 1129 

1126**Vorgehensweise:**1130**Vorgehensweise:**

1127 1131 

1128* Um Ihrem Administrator mitzuteilen, welche verwalteten Quellen Ihr Rechner hat, führen Sie `/status` an der Claude Code-Eingabeaufforderung aus und kopieren Sie die [Zeile `Setting sources`](https://code.claude.com/docs/de/managed-settings#read-the-source-in-/status). Wenn eine Zeile `Skipped sources` erscheint, kopieren Sie diese ebenfalls1132* `Your organization's settings need an update`: Bitten Sie Ihren Administrator, die Konfiguration des API-Key-Helpers zu korrigieren

1129* Wenn Sie die Einstellungen verwalten, lesen Sie [warum der Key-Helper des Rechners nicht wirksam ist](https://code.claude.com/docs/de/server-managed-settings.md#machine-apikeyhelper-not-in-effect)1133 * Um Ihrem Administrator mitzuteilen, welche verwalteten Quellen Ihr Rechner hat, führen Sie `/status` an der Claude Code-Eingabeaufforderung aus und kopieren Sie die [Zeile `Setting sources`](https://code.claude.com/docs/de/managed-settings#read-the-source-in-/status). Wenn eine Zeile `Skipped sources` erscheint, kopieren Sie diese ebenfalls

1134 * Wenn Sie die Einstellungen verwalten und der Helper in der Datei mit verwalteten Einstellungen eines Rechners oder in einer MDM-Richtlinie steht, siehe [Wenn der `apiKeyHelper` eines Rechners nicht wirksam ist](https://code.claude.com/docs/de/server-managed-settings#machine-apikeyhelper-not-in-effect)

1135* `Couldn't load your organization's settings`: Prüfen Sie Ihre Verbindung und starten Sie Claude Code dann neu. Wenn die Meldung nach einem Neustart erneut erscheint, informieren Sie Ihren Administrator

1136* `Restart Claude Code to finish signing in`: Starten Sie Claude Code neu

1137 

1138Vor v2.1.315 gab ein abgelehnter Prompt oder Datei-Upload eine einzige Meldung aus, die mit `Claude Code didn't send your claude.ai login` begann.

1130 1139 

1131### Ungültiger Wert im Request-Header1140### Ungültiger Wert im Request-Header

1132 1141 


3422* **`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.3431* **`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.

3423* **`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.3432* **`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.

3424* **`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`.3433* **`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`.

3425* **``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`.3434* **``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 diesen Lauf zu vertrauen, setzen Sie die PR-Nummer oder den Basis-Branch vor das Flag: `claude ultrareview 1234 --trust-workspace`.

3426 3435 

3427Vor v2.1.309 akzeptierte `claude ultrareview` kein `--trust-workspace`.3436Vor v2.1.309 akzeptierte `claude ultrareview` kein `--trust-workspace`.

3428 3437 


3554 3563 

3555### MCP-Server wurde nicht gespeichert oder entfernt3564### MCP-Server wurde nicht gespeichert oder entfernt

3556 3565 

3557Sie haben `claude mcp add`, `claude mcp add-json` oder `claude mcp remove` für einen Server im [Geltungsbereich](https://code.claude.com/docs/de/mcp.md#mcp-installation-scopes) `user` oder `local` ausgeführt. Beide Geltungsbereiche werden in `~/.claude.json` gespeichert, und die Änderung ist nicht in dieser Datei enthalten, wenn Claude Code sie nach dem Schreiben zurückliest. Der Befehl beendet sich mit diesem Fehler anstelle seiner Erfolgszeile.3566Dieser Fehler bedeutet, dass ein Befehl wie `claude mcp add` oder `claude mcp remove` Ihre Änderung nicht in `~/.claude.json` übernommen hat. Möglicherweise haben andere Claude-Code-Prozesse die Datei gesperrt gehalten, oder die Datei ist schreibgeschützt oder durch eine Sandbox geschützt.

3558 3567 

3559```text theme={null}3568```text theme={null}

3560MCP server "example" was not saved to /home/user/.claude.json. If that file is read-only or protected by a sandbox, make it writable or run the command outside the sandbox, then add the server again.3569MCP server "example" was not saved to /home/user/.claude.json. If other Claude Code processes use that file, they may have kept it locked: add the server again, with CLAUDE_CODE_CONFIG_LOCK_WAIT_MS=60000 set to wait up to a minute. If that file is read-only or protected by a sandbox, make it writable or run the command outside the sandbox first.

3561```3570```

3562 3571 

3563Nach einem Entfernen lautet die Meldung `was not removed from` und endet mit `then remove the server again`. Bei einem Server im Geltungsbereich `local` folgt auf den Pfad das Projektverzeichnis, zu dem der Eintrag gehört, in der Form `(local scope for /path/to/project)`.3572Nach einem Entfernen lautet die Meldung `was not removed from` statt `was not saved to` und `remove the server again` statt `add the server again`. Bei einem Server im Geltungsbereich `local` folgt auf den Pfad das Projektverzeichnis, zu dem der Eintrag gehört, als `(local scope for /path/to/project)`.

3564 

3565Vor v2.1.283 meldeten `claude mcp add`, `claude mcp add-json` und `claude mcp remove` Erfolg, selbst wenn die Änderung die Datei nicht erreichte.

3566 3573 

3567**Vorgehensweise:**3574**Vorgehensweise:**

3568 3575 

3569* Machen Sie die in der Meldung genannte Datei beschreibbar oder führen Sie den Befehl außerhalb der Sandbox aus, und führen Sie dann denselben Hinzufügen- oder Entfernen-Befehl erneut aus.3576* **Andere Claude-Code-Prozesse laufen**: Der Befehl wartet etwa 10 bis 20 Sekunden auf die Sperre der Datei und gibt dann auf, ohne zu schreiben. Führen Sie denselben Befehl erneut aus und setzen Sie dabei [`CLAUDE_CODE_CONFIG_LOCK_WAIT_MS`](https://code.claude.com/docs/de/env-vars#variables) auf eine längere Wartezeit in Millisekunden, etwa `60000`.

3577* **Die Datei ist schreibgeschützt oder durch eine Sandbox geschützt**: Machen Sie die in der Meldung genannte Datei beschreibbar und führen Sie denselben Befehl zum Hinzufügen oder Entfernen erneut aus, oder führen Sie diesen Befehl außerhalb der Sandbox aus.

3578 

3579Vor v2.1.283 meldeten `claude mcp add`, `claude mcp add-json` und `claude mcp remove` Erfolg, selbst wenn die Änderung die Datei nicht erreichte. Vor v2.1.318 erwähnte die Meldung die Sperre nicht, und Claude Code las [`CLAUDE_CODE_CONFIG_LOCK_WAIT_MS`](https://code.claude.com/docs/de/env-vars#variables) nicht.

3570 3580 

3571### MCP-Server wurde möglicherweise nicht gespeichert oder entfernt3581### MCP-Server wurde möglicherweise nicht gespeichert oder entfernt

3572 3582 

3573Sie haben `claude mcp add`, `claude mcp add-json` oder `claude mcp remove` für einen Server im [Geltungsbereich](https://code.claude.com/docs/de/mcp.md#mcp-installation-scopes) `user` oder `local` ausgeführt, und Claude Code konnte `~/.claude.json` nicht zurücklesen, um die Änderung zu bestätigen. Die Änderung befindet sich möglicherweise auf der Festplatte, möglicherweise aber auch nicht. Der Text in Klammern ist der Fehler dieses Lesevorgangs.3583Sie haben `claude mcp add`, `claude mcp add-json` oder `claude mcp remove` für einen Server im [Geltungsbereich](https://code.claude.com/docs/de/mcp.md#mcp-installation-scopes) `user` oder `local` ausgeführt, und Claude Code konnte `~/.claude.json` nicht erneut lesen, um die Änderung zu bestätigen. Die Änderung befindet sich möglicherweise auf der Festplatte, möglicherweise aber auch nicht. Die Klammern nach `to confirm the change` nennen den Grund.

3574 3584 

3575```text theme={null}3585```text theme={null}

3576MCP server "example" may not have been saved: /home/user/.claude.json could not be read to confirm the change (EACCES: permission denied, open '/home/user/.claude.json'). Run `claude mcp get example` to check, then add the server again if it is missing.3586MCP server "example" may not have been saved: /home/user/.claude.json could not be read to confirm the change (EACCES: permission denied, open '/home/user/.claude.json'). Run `claude mcp get example` to check, then add the server again if it is missing.

3577```3587```

3578 3588 

3579Nach einem Entfernen lautet die Meldung `may not have been removed` und endet mit `then remove the server again if it is still listed`.3589Nach einem Entfernen lautet die Meldung `may not have been removed` und endet mit `then remove the server again if it is still listed`. Wenn der Grund `the file was not found` ist, ist der Server möglicherweise noch konfiguriert.

3580 3590 

3581Vor v2.1.283 meldeten die Befehle Erfolg, selbst wenn die Änderung nicht bestätigt werden konnte.3591Vor v2.1.283 meldeten die Befehle Erfolg, selbst wenn die Änderung nicht bestätigt werden konnte.

3582 3592 


3714 3724 

3715Verwandte Meldungen treten auf, bevor der Befehl überhaupt ausgeführt wird:3725Verwandte Meldungen treten auf, bevor der Befehl überhaupt ausgeführt wird:

3716 3726 

3717* `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 genehmigen3727* `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 welchem Berechtigungsmodus abbrechen und wie Sie einen Befehl mit `allowed-tools` vorab genehmigen

3718* ``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)3728* ``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 in `shell: powershell`. Siehe [Wie eingefügte Befehle ausgeführt werden](https://code.claude.com/docs/de/skills.md#how-injected-commands-run)

3719 3729 

3720**Vorgehensweise:**3730**Vorgehensweise:**

3721 3731 


3868 3878 

3869* **Sie haben keinen Basis-Branch übergeben**: Claude Code hat mit dem Standard-Branch des Repositorys verglichen und schlägt vor, Ihre Basis explizit zu übergeben, wie im obigen Beispiel3879* **Sie haben keinen Basis-Branch übergeben**: Claude Code hat mit dem Standard-Branch des Repositorys verglichen und schlägt vor, Ihre Basis explizit zu übergeben, wie im obigen Beispiel

3870* **Sie haben einen Basis-Branch übergeben, der bereits in Ihrem Klon vorhanden war**: Der Hinweis lautet ``Make sure <branch> exists locally or on origin (try `git fetch origin <branch>`)``3880* **Sie haben einen Basis-Branch übergeben, der bereits in Ihrem Klon vorhanden war**: Der Hinweis lautet ``Make sure <branch> exists locally or on origin (try `git fetch origin <branch>`)``

3871* **Sie haben einen Basis-Branch übergeben, der nicht in Ihrem Klon vorhanden war**: Claude Code hat ihn vor dem Vergleich von origin abgerufen. Der Hinweis lautet ``<branch> was fetched from origin but shares no history with HEAD. If another branch is your real base, pass it explicitly (`/code-review ultra <branch>`)``; wenn Claude Code nicht erkennen kann, ob Ihr Klon shallow ist, schlägt es stattdessen `git fetch --unshallow origin` vor. Vor v2.1.221 schlug der Hinweis für jeden abgerufenen Basis-Branch `git fetch --unshallow origin` vor, und bei einem vollständigen Klon schlägt dieser Befehl mit `fatal: --unshallow on a complete repository does not make sense` fehl.3881* **Sie haben einen Basis-Branch übergeben, der nicht in Ihrem Klon vorhanden war**: Claude Code hat ihn vor dem Vergleich von origin abgerufen. Der Hinweis lautet ``<branch> was fetched from origin but shares no history with HEAD. If another branch is your real base, pass it explicitly (`/code-review ultra <branch>`)``; wenn Claude Code nicht feststellen kann, ob Ihr Klon shallow ist, schlägt es stattdessen `git fetch --unshallow origin` vor. Vor v2.1.221 schlug der Hinweis für jeden abgerufenen Basis-Branch `git fetch --unshallow origin` vor, und bei einem vollständigen Klon schlägt dieser Befehl mit `fatal: --unshallow on a complete repository does not make sense` fehl.

3872 3882 

3873**Vorgehensweise:**3883**Vorgehensweise:**

3874 3884 

fast-mode.md +5 −5

Details

35In der CLI schalten Sie den Fast-Modus auf eine der folgenden Arten um:35In der CLI schalten Sie den Fast-Modus auf eine der folgenden Arten um:

36 36 

37* Führen Sie `/fast` aus, drücken Sie Space zum Ein- oder Ausschalten und anschließend Enter zum Bestätigen37* Führen Sie `/fast` aus, drücken Sie Space zum Ein- oder Ausschalten und anschließend Enter zum Bestätigen

38* Setzen Sie `"fastMode": true` in Ihrer [Benutzer-Einstellungsdatei](https://code.claude.com/docs/de/settings.md)38* Setzen Sie bei einem Modell, das den Fast-Modus unterstützt, `"fastMode": true` in Ihrer [Benutzer-Einstellungsdatei](https://code.claude.com/docs/de/settings.md). Wenn Sie dies bei einem anderen Modell setzen, bleiben Sie bei diesem Modell, und der Fast-Modus bleibt ausgeschaltet.

39 39 

40Standardmäß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).40Standardmäßig bleibt der Fast-Modus, den Sie in einer interaktiven Sitzung einschalten, bei einem unterstützten Modell ü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).

41 41 

42Auß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.42Auß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.

43 43 


45 45 

46Fü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).46Fü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).

47 47 

48Wenn Sie den Fast-Modus aktivieren:48Wenn Sie den Fast-Modus mit `/fast` aktivieren:

49 49 

50* Wenn Ihr aktuelles Modell den Fast-Modus nicht unterstützt, wechselt Claude Code zu Opus50* Wenn Ihr aktuelles Modell den Fast-Modus nicht unterstützt, wechselt Claude Code zu Opus

51* Sie sehen eine Bestätigungsmeldung: „Fast mode ON“51* Sie sehen eine Bestätigungsmeldung: „Fast mode ON“


196 196 

197### Opt-in pro Sitzung erforderlich197### Opt-in pro Sitzung erforderlich

198 198 

199Standardmäßig bleibt der Schnellmodus, den ein Benutzer in einer interaktiven Sitzung aktiviert, über Sitzungen hinweg erhalten. Um dies zu ändern, setzen Sie `fastModePerSessionOptIn` in einer beliebigen [Einstellungsdatei](https://code.claude.com/docs/de/settings.md#where-settings-live) auf `true`, was dazu führt, dass jede Sitzung mit deaktiviertem Schnellmodus beginnt und Benutzer ihn explizit mit `/fast` aktivieren müssen. Owners in [Team](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=fast_mode_teams#team-&-enterprise)- oder [Enterprise](https://anthropic.com/contact-sales?utm_source=claude_code\&utm_medium=docs\&utm_content=fast_mode_enterprise)-Plänen können dies organisationsweit über [servergesteuerte Einstellungen](https://code.claude.com/docs/de/server-managed-settings.md) bereitstellen.199Standardmäßig bleibt der Fast-Modus, den ein Benutzer in einer interaktiven Sitzung aktiviert, auf einem unterstützten Modell über Sitzungen hinweg erhalten. Um dies zu ändern, setzen Sie `fastModePerSessionOptIn` in einer beliebigen [Einstellungsdatei](https://code.claude.com/docs/de/settings.md#where-settings-live) auf `true`, was dazu führt, dass jede Sitzung mit deaktiviertem Fast-Modus beginnt und Benutzer ihn explizit mit `/fast` aktivieren müssen. Owners in [Team](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=fast_mode_teams#team-&-enterprise)- oder [Enterprise](https://anthropic.com/contact-sales?utm_source=claude_code\&utm_medium=docs\&utm_content=fast_mode_enterprise)-Plänen können dies organisationsweit über [servergesteuerte Einstellungen](https://code.claude.com/docs/de/server-managed-settings.md) bereitstellen.

200 200 

201```json theme={null}201```json theme={null}

202{202{


221 221 

222Wenn Sie während einer Sitzung keine Nutzungsguthaben mehr haben, versucht Claude Code jeden abgelehnten Schnellmodus-Request mit Standard-Geschwindigkeit und -Preisen erneut, sodass Sie weiterarbeiten können und es keine Abkühlung gibt. Wie Sie die Ablehnung sehen, hängt vom Sitzungstyp ab:222Wenn Sie während einer Sitzung keine Nutzungsguthaben mehr haben, versucht Claude Code jeden abgelehnten Schnellmodus-Request mit Standard-Geschwindigkeit und -Preisen erneut, sodass Sie weiterarbeiten können und es keine Abkühlung gibt. Wie Sie die Ablehnung sehen, hängt vom Sitzungstyp ab:

223 223 

224* In einer interaktiven Sitzung zeigt Claude Code eine Benachrichtigung „Schnellmodus deaktiviert · Nutzungsguthaben aufgebraucht“ an und schaltet den Schnellmodus für den Rest der Sitzung aus. Ihre gespeicherte Schnellmodus-Einstellung ändert sich nicht; führen Sie `/fast` aus, um den Schnellmodus wieder einzuschalten.224* In einer interaktiven Sitzung zeigt Claude Code eine Benachrichtigung „Fast mode disabled · Out of usage credits“ an und schaltet den Fast-Modus aus. Ihre gespeicherte Fast-Modus-Einstellung ändert sich nicht; führen Sie `/fast` aus, um den Fast-Modus wieder einzuschalten.

225* Im [Headless-Modus](https://code.claude.com/docs/de/headless.md) mit `--output-format stream-json` und über das Agent SDK sendet Claude Code denselben Text im Message-Stream als `system`-Nachricht mit dem Subtyp `notification` einmal pro Turn, während Sie keine Nutzungsguthaben haben. Der Schnellmodus bleibt aktiviert. Erfordert Claude Code v2.1.221 oder später.225* Im [Headless-Modus](https://code.claude.com/docs/de/headless.md) mit `--output-format stream-json` und über das Agent SDK sendet Claude Code denselben Text im Message-Stream als `system`-Nachricht mit dem Subtyp `notification` einmal pro Turn, während Sie keine Nutzungsguthaben haben. Der Schnellmodus bleibt aktiviert. Erfordert Claude Code v2.1.221 oder später.

226 226 

227## Forschungsvorschau227## Forschungsvorschau

hooks.md +63 −21

Details

70 70 

71> [tab] macOS/Linux71> [tab] macOS/Linux

72>72>

73> Der `matcher` grenzt auf Bash-Tool-Aufrufe ein und die `if`-Bedingung grenzt weiter auf Bash-Unterbefehle ein, die mit `rm *` übereinstimmen, daher wird `block-rm.sh` nur ausgeführt, wenn beide Filter passen:73> Der `matcher` grenzt auf Bash-Tool-Aufrufe und [Monitor-Befehle](#match-monitor-commands) ein, und die `if`-Bedingung grenzt weiter auf Bash-Unterbefehle ein, die mit `rm *` übereinstimmen, daher wird `block-rm.sh` nur ausgeführt, wenn beide Filter passen:

74>74>

75> ```json theme={null}75> ```json theme={null}

76> {76> {


116 116 

117> [tab] Windows (PowerShell)117> [tab] Windows (PowerShell)

118>118>

119> Der Matcher `Bash|PowerShell` deckt das [PowerShell-Tool](#powershell) sowie Bash ab. Eine einzelne `if`-Regel passt nur zu den Aufrufen eines Tools, daher erhält jedes Tool seinen eigenen Handler: der erste grenzt auf Bash-Unterbefehle ein, die mit `rm *` übereinstimmen, der zweite auf PowerShell-Befehle, die mit `Remove-Item *` übereinstimmen. Beide führen das gleiche Skript über `powershell.exe` aus:119> Der Matcher `Bash|PowerShell` deckt das [PowerShell-Tool](#powershell) sowie Bash ab. Eine einzelne `if`-Regel benennt nur ein Tool, daher erhält jedes Tool seinen eigenen Handler: der erste grenzt auf Bash-Unterbefehle ein, die mit `rm *` übereinstimmen, der zweite auf PowerShell-Befehle, die mit `Remove-Item *` übereinstimmen. Beide führen das gleiche Skript über `powershell.exe` aus:

120>120>

121> ```json theme={null}121> ```json theme={null}

122> {122> {


225Hooks werden in JSON-Einstellungsdateien definiert. Die Konfiguration hat drei Verschachtelungsebenen:225Hooks werden in JSON-Einstellungsdateien definiert. Die Konfiguration hat drei Verschachtelungsebenen:

226 226 

2271. Wählen Sie ein [Hook-Ereignis](#hook-events) aus, auf das reagiert werden soll, wie `PreToolUse` oder `Stop`2271. Wählen Sie ein [Hook-Ereignis](#hook-events) aus, auf das reagiert werden soll, wie `PreToolUse` oder `Stop`

2282. Fügen Sie eine [Matcher-Gruppe](#matcher-patterns) hinzu, um zu filtern, wann es ausgelöst wird, z. B. „nur für das Bash-Tool“2282. Fügen Sie eine [Matcher-Gruppe](#matcher-patterns) hinzu, um festzulegen, wann er ausgelöst wird, z. B. „für das Bash-Tool“

2293. Definieren Sie einen oder mehrere [Hook-Handler](#hook-handler-fields), die ausgeführt werden, wenn eine Übereinstimmung gefunden wird2293. Definieren Sie einen oder mehrere [Hook-Handler](#hook-handler-fields), die ausgeführt werden, wenn eine Übereinstimmung gefunden wird

230 230 

231Siehe [Wie ein Hook aufgelöst wird](#how-a-hook-resolves) oben für eine vollständige Anleitung mit einem kommentierten Beispiel.231Siehe [Wie ein Hook aufgelöst wird](#how-a-hook-resolves) oben für eine vollständige Anleitung mit einem kommentierten Beispiel.


277| Matcher-Wert | Ausgewertet als | Beispiel |277| Matcher-Wert | Ausgewertet als | Beispiel |

278| :- | :- | :- |278| :- | :- | :- |

279| `"*"`, `""` oder weggelassen | Alle abgleichen | wird bei jedem Auftreten des Ereignisses ausgelöst |279| `"*"`, `""` oder weggelassen | Alle abgleichen | wird bei jedem Auftreten des Ereignisses ausgelöst |

280| Nur Buchstaben, Ziffern, `_`, `-`, Leerzeichen, `,` und `\|` | Exakte Zeichenkette oder Liste exakter Zeichenketten, getrennt durch `\|` oder `,` mit optionalem umgebendem Leerzeichen | `Bash` passt nur auf das Bash-Tool; `Edit\|Write` und `Edit, Write` passen jeweils auf eines der beiden Tools genau; `code-reviewer` passt nur auf diesen Agent-Typ |280| Nur Buchstaben, Ziffern, `_`, `-`, Leerzeichen, `,` und `\|` | Exakte Zeichenkette oder Liste exakter Zeichenketten, getrennt durch `\|` oder `,` mit optionalem umgebendem Leerzeichen | `Bash` passt auf das Bash-Tool und bei `PreToolUse` und `PermissionRequest` auch auf [Monitor-Befehle](#match-monitor-commands); `Edit\|Write` und `Edit, Write` passen jeweils auf eines der beiden Tools genau; `code-reviewer` passt nur auf diesen Agent-Typ |

281| Enthält ein anderes Zeichen | JavaScript-Regulärer Ausdruck, nicht verankert | `^Notebook` passt auf jedes Tool, dessen Name mit `Notebook` beginnt; `mcp__memory__.*` passt auf jedes Tool vom `memory`-Server |281| Enthält ein anderes Zeichen | JavaScript-Regulärer Ausdruck, nicht verankert | `^Notebook` passt auf jedes Tool, dessen Name mit `Notebook` beginnt; `mcp__memory__.*` passt auf jedes Tool vom `memory`-Server |

282 282 

283Ein Matcher auf dem Pfad des regulären Ausdrucks wird mit `RegExp.prototype.test` von JavaScript getestet, was bei einer Übereinstimmung an einer beliebigen Stelle im Wert erfolgreich ist. `Edit.*` passt sowohl auf `Edit` als auch auf `NotebookEdit`; umgeben Sie das Muster mit `^` und `$`, wie in `^Edit$`, wenn Sie eine Übereinstimmung mit der gesamten Zeichenkette benötigen.283Ein Matcher auf dem Pfad des regulären Ausdrucks wird mit `RegExp.prototype.test` von JavaScript getestet, was bei einer Übereinstimmung an einer beliebigen Stelle im Wert erfolgreich ist. `Edit.*` passt sowohl auf `Edit` als auch auf `NotebookEdit`; umgeben Sie das Muster mit `^` und `$`, wie in `^Edit$`, wenn Sie eine Übereinstimmung mit der gesamten Zeichenkette benötigen.


294| `SessionStart` | wie die Sitzung gestartet wurde | `startup`, `resume`, `clear`, `compact`, `fork` |294| `SessionStart` | wie die Sitzung gestartet wurde | `startup`, `resume`, `clear`, `compact`, `fork` |

295| `Setup` | welches CLI-Flag Setup ausgelöst hat | `init`, `maintenance` |295| `Setup` | welches CLI-Flag Setup ausgelöst hat | `init`, `maintenance` |

296| `SessionEnd` | warum die Sitzung endete | `clear`, `resume`, `logout`, `prompt_input_exit`, `other` |296| `SessionEnd` | warum die Sitzung endete | `clear`, `resume`, `logout`, `prompt_input_exit`, `other` |

297| `Notification` | Benachrichtigungstyp | `permission_prompt`, `idle_prompt`, `auth_success`, `elicitation_dialog`, `elicitation_url_dialog`, `elicitation_complete`, `elicitation_response`, `agent_needs_input`, `agent_completed`, `quota_auto_resume_fired`, `quota_auto_resume_stale`, `quota_auto_resume_disabled`, `plugin_notification` |297| `Notification` | Benachrichtigungstyp | `permission_prompt`, `idle_prompt`, `auth_success`, `auth_storage_failure`, `elicitation_dialog`, `elicitation_url_dialog`, `elicitation_complete`, `elicitation_response`, `agent_needs_input`, `agent_completed`, `quota_auto_resume_fired`, `quota_auto_resume_stale`, `quota_auto_resume_disabled`, `plugin_notification` |

298| `SubagentStart` | Agent-Typ | `general-purpose`, `Explore`, `Plan`, benutzerdefinierte Agent-Namen oder Plugin-bezogene Namen wie `^my-plugin:reviewer$` |298| `SubagentStart` | Agent-Typ | `general-purpose`, `Explore`, `Plan`, benutzerdefinierte Agent-Namen oder Plugin-bezogene Namen wie `^my-plugin:reviewer$` |

299| `PreCompact`, `PostCompact` | was Komprimierung ausgelöst hat | `manual`, `auto` |299| `PreCompact`, `PostCompact` | was Komprimierung ausgelöst hat | `manual`, `auto` |

300| `PreModelSwitch`, `PostModelSwitch` | kanonischer Name des Modells, zu dem die Sitzung wechselt, wie unter [PreModelSwitch](#premodelswitch) beschrieben | `claude-opus-5`, `claude-opus-4-6\|claude-opus-5`, `.*opus.*` |300| `PreModelSwitch`, `PostModelSwitch` | kanonischer Name des Modells, zu dem die Sitzung wechselt, wie unter [PreModelSwitch](#premodelswitch) beschrieben | `claude-opus-5`, `claude-opus-4-6\|claude-opus-5`, `.*opus.*` |


385}385}

386```386```

387 387 

388#### Monitor-Befehle abgleichen

389 

390Ein [`PreToolUse`](#pretooluse)- oder [`PermissionRequest`](#permissionrequest)-Hook mit einem `Bash`-Matcher wird auch bei Shell-Befehlen ausgeführt, die Claude mit dem [Monitor-Tool](https://code.claude.com/docs/de/tools-reference.md#monitor-tool) startet, aber sein `allow` und [`updatedInput`](#pretooluse-decision-control) haben keine Wirkung auf sie. Erfordert Claude Code v2.1.314 oder später. Matcher wie `Bash|PowerShell`, `^Bash$` und `Bash.*` sind ebenfalls `Bash`-Matcher. Ein Hook mit einem `Bash`-Matcher wird für eine [WebSocket-Überwachung](https://code.claude.com/docs/de/tools-reference.md#websocket-source) nicht ausgeführt, und ein `PostToolUse`-Hook mit einem solchen Matcher wird für Monitor nicht ausgeführt.

391 

392Ein Hook, der für einen Monitor-Befehl ausgeführt wird, kann ihn verweigern oder Claude Code veranlassen, Sie dazu um Bestätigung zu bitten. Um den Befehl zuzulassen oder umzuschreiben, wechseln Sie von einem `Bash`-Matcher zu einem Matcher, der Monitor einschließt:

393 

394* **Matcher, der Monitor einschließt**: Mit einem Matcher wie `Bash|Monitor` oder `.*` oder ohne Matcher erhält der Hook die eigene Eingabe des Monitor-Aufrufs, und `allow` und `updatedInput` greifen. Nennen Sie in [`if`](#common-fields) Monitor, wie in `Monitor(tail *)`, das nach [den Regeln abgleicht, denen `Bash(tail *)` folgt](#bash-if-matching). Wenn sein `if` Bash nennt, erhält der Hook trotzdem die Eingabe des Monitor-Aufrufs, aber `allow` und `updatedInput` haben keine Wirkung

395* **`Bash`-Matcher**: Der Hook erhält einen Bash-Aufruf. Nennen Sie in `if` Bash, wie in `Bash(tail *)`. Der Hook wird nicht ausgeführt, wenn sein `if` Monitor nennt

396 

388### Hook-Handler-Felder397### Hook-Handler-Felder

389 398 

390Jedes Objekt im inneren `hooks`-Array ist ein Hook-Handler: der Shell-Befehl, HTTP-Endpunkt, MCP-Tool, LLM-Prompt oder Agent, der ausgeführt wird, wenn der Matcher passt. Es gibt fünf Typen:399Jedes Objekt im inneren `hooks`-Array ist ein Hook-Handler: der Shell-Befehl, HTTP-Endpunkt, MCP-Tool, LLM-Prompt oder Agent, der ausgeführt wird, wenn der Matcher passt. Es gibt fünf Typen:


811* **Zwei oder mehr Zeilen, die jeweils für sich als JSON geparst werden, wobei die erste mit `{` beginnt und die letzte mit `}` endet**: einfacher Text, wenn keine Zeile ein JSON-Ausgabe-Objekt ist, das ein Feld setzt. Ist eine Zeile ein solches Objekt, ist die Ausgabe ein Parse-Fehler; geben Sie dieses Objekt also ohne weiteren Inhalt auf stdout aus.820* **Zwei oder mehr Zeilen, die jeweils für sich als JSON geparst werden, wobei die erste mit `{` beginnt und die letzte mit `}` endet**: einfacher Text, wenn keine Zeile ein JSON-Ausgabe-Objekt ist, das ein Feld setzt. Ist eine Zeile ein solches Objekt, ist die Ausgabe ein Parse-Fehler; geben Sie dieses Objekt also ohne weiteren Inhalt auf stdout aus.

812* **Alles andere, das mit `{` beginnt und mit `}` endet, aber kein gültiges JSON ist**: ein Parse-Fehler.821* **Alles andere, das mit `{` beginnt und mit `}` endet, aber kein gültiges JSON ist**: ein Parse-Fehler.

813 822 

814Für die meisten Events schreibt Claude Code stdout in das Debug-Log und zeigt es nicht im Transkript an. Die Ausnahmen sind `UserPromptSubmit`, `UserPromptExpansion`, `SessionStart` und `PostModelSwitch`, wo Claude Code einfachen Text-stdout als Kontext hinzufügt, den Claude sehen und bearbeiten kann. Bei diesen Events fügt Claude Code stdout, den es nicht parsen konnte, nicht hinzu.823Für die meisten Events schreibt Claude Code stdout in das Debug-Log und zeigt es nicht im Transkript an. Bei diesen Events erreicht Ihr stdout Claude oder die Zusammenfassung der Komprimierung:

824 

825* **`UserPromptSubmit`, `UserPromptExpansion`, `SessionStart` und `PostModelSwitch`**: Claude Code fügt einfachen Text-stdout als Kontext hinzu, den Claude sehen und bearbeiten kann. stdout, den es nicht parsen konnte, fügt es nicht hinzu.

826* **`PreCompact`**: Ihr stdout wird zu [Anweisungen für die Komprimierungszusammenfassung](#precompact-output)

815 827 

816Claude sieht stderr von einem Hook, der mit 0 beendet wird, nie. Um ihn bei Events wie `PreToolUse` selbst zu lesen, aktivieren Sie [Debug-Logging](#debug-hooks). Um eine Warnung an Claude von einem `PostToolUse`- oder `PostToolUseFailure`-Hook zu übermitteln, beenden Sie stattdessen mit 2, damit [Claude den stderr sieht](#exit-code-2-behavior-per-event), obwohl das Tool bereits ausgeführt wurde.828Claude sieht stderr von einem Hook, der mit 0 beendet wird, nie. Um ihn bei Events wie `PreToolUse` selbst zu lesen, aktivieren Sie [Debug-Logging](#debug-hooks). Um eine Warnung an Claude von einem `PostToolUse`- oder `PostToolUseFailure`-Hook zu übermitteln, beenden Sie stattdessen mit 2, damit [Claude den stderr sieht](#exit-code-2-behavior-per-event), obwohl das Tool bereits ausgeführt wurde.

817 829 


1050Die Strings `additionalContext`, `systemMessage` und `initialUserMessage` eines Hooks sowie sein einfacher stdout sind auf 10.000 Zeichen begrenzt:1062Die Strings `additionalContext`, `systemMessage` und `initialUserMessage` eines Hooks sowie sein einfacher stdout sind auf 10.000 Zeichen begrenzt:

1051 1063 

1052* **Umfang**: Claude Code misst jeden String für sich, auch wenn mehrere Hooks für den gleichen Event ausgeführt werden. Für JSON-Ausgabe wird jedes Feld separat gemessen; einfacher stdout wird als Ganzes gemessen.1064* **Umfang**: Claude Code misst jeden String für sich, auch wenn mehrere Hooks für den gleichen Event ausgeführt werden. Für JSON-Ausgabe wird jedes Feld separat gemessen; einfacher stdout wird als Ganzes gemessen.

1053* **Über dem Limit**: Claude Code speichert die Ausgabe in einer Datei im Session-Verzeichnis und ersetzt sie durch den Dateipfad und eine Vorschau von bis zu den ersten 2.000 Zeichen. Ein großes gültiges Bash-Ergebnis wird auf die gleiche Weise behandelt, beschrieben unter [Ausgabelimits](https://code.claude.com/docs/de/tools-reference.md#output-limits). Im Gegensatz zu dieser Bash-Obergrenze hat diese Obergrenze keine Einstellung oder Umgebungsvariable, um sie zu erhöhen.1065* **Über dem Limit**: Außer bei [PreCompact-stdout](#precompact-output) speichert Claude Code die Ausgabe in einer Datei im Session-Verzeichnis. Es ersetzt die Ausgabe durch den Dateipfad und eine Vorschau von bis zu den ersten 2.000 Zeichen. Ein großes gültiges Bash-Ergebnis wird auf die gleiche Weise behandelt, beschrieben unter [Ausgabelimits](https://code.claude.com/docs/de/tools-reference.md#output-limits). Im Gegensatz zu dieser Bash-Obergrenze hat diese Obergrenze keine Einstellung oder Umgebungsvariable, um sie zu erhöhen.

1054* **Datei lesen**: Claude Code bittet Claude nicht, die Datei zu lesen, daher halten Sie alles, das Claude immer sehen muss, innerhalb der Obergrenze.1066* **Datei lesen**: Claude Code bittet Claude nicht, die Datei zu lesen, daher halten Sie alles, das Claude immer sehen muss, innerhalb der Obergrenze.

1055 1067 

1056Das JSON-Objekt unterstützt drei Arten von Feldern:1068Das JSON-Objekt unterstützt drei Arten von Feldern:


1954 1966 

1955#### PreToolUse-Entscheidungssteuerung1967#### PreToolUse-Entscheidungssteuerung

1956 1968 

1957`PreToolUse`-Hooks können steuern, ob ein Tool-Aufruf fortgesetzt wird. Anders als andere Hooks, die ein `decision`-Feld auf oberster Ebene verwenden, gibt PreToolUse seine Entscheidung innerhalb eines `hookSpecificOutput`-Objekts zurück. Das ermöglicht eine umfassendere Steuerung: vier Ergebnisse (allow, deny, ask oder defer) sowie die Möglichkeit, die Tool-Eingabe vor der Ausführung zu ändern.1969`PreToolUse`-Hooks können steuern, ob ein Tool-Aufruf fortgesetzt wird. Anders als andere Hooks, die ein Feld `decision` auf oberster Ebene verwenden, gibt PreToolUse seine Entscheidung innerhalb eines Objekts `hookSpecificOutput` zurück. Das ermöglicht eine umfassendere Steuerung: vier Ergebnisse (allow, deny, ask oder defer) sowie die Möglichkeit, die Tool-Eingabe vor der Ausführung zu ändern. Wie Sie einen Monitor-Befehl erlauben oder umschreiben, erfahren Sie unter [Monitor-Befehle matchen](#match-monitor-commands).

1958 1970 

1959| Feld | Beschreibung |1971| Feld | Beschreibung |

1960| :- | :- |1972| :- | :- |


2051 2063 

2052#### Einen Tool-Aufruf zurückstellen2064#### Einen Tool-Aufruf zurückstellen

2053 2065 

2054`"defer"` ist für Integrationen gedacht, die `claude -p` als Unterprozess ausführen und dessen JSON-Ausgabe lesen, etwa eine Agent SDK-App oder eine benutzerdefinierte Benutzeroberfläche, die auf Claude Code aufbaut. Es ermöglicht dem aufrufenden Prozess, Claude bei einem Tool-Aufruf anzuhalten, Eingaben über die eigene Oberfläche zu sammeln und an derselben Stelle fortzufahren. Claude Code berücksichtigt diesen Wert nur im [nicht interaktiven Modus](https://code.claude.com/docs/de/headless.md) mit dem Flag `-p`. In interaktiven Sitzungen protokolliert es eine Warnung und ignoriert das Hook-Ergebnis.2066`"defer"` ist für Integrationen gedacht, die `claude -p` als Unterprozess ausführen und dessen JSON-Ausgabe lesen, etwa eine Agent-SDK-App oder eine eigene Benutzeroberfläche, die auf Claude Code aufsetzt. Damit kann der aufrufende Prozess Claude bei einem Tool-Aufruf anhalten, Eingaben über seine eigene Oberfläche erfassen und an der Stelle fortfahren, an der er aufgehört hat.

2067 

2068Claude Code berücksichtigt `"defer"` nur im [nicht interaktiven Modus](https://code.claude.com/docs/de/headless.md) mit dem Flag `-p` und nur dann, wenn Claude im Turn einen einzigen Tool-Aufruf ausführt:

2069 

2070* **In interaktiven Sitzungen**: Claude Code protokolliert eine Warnung und ignoriert das Hook-Ergebnis

2071* **Mehrere Tool-Aufrufe gleichzeitig**: `"defer"` wird mit einer Warnung ignoriert, und das Tool durchläuft den normalen Berechtigungsablauf

2055 2072 

2056Das Tool `AskUserQuestion` ist der typische Fall: Claude möchte dem Benutzer eine Frage stellen, aber es gibt kein Terminal, in dem geantwortet werden könnte. Ein `-p`-Lauf bietet `AskUserQuestion` nur an, wenn er einen [Berechtigungs-Host](https://code.claude.com/docs/de/headless.md#turn-off-permission-prompts-in-unattended-runs) hat, etwa ein MCP-Tool, das Sie mit `--permission-prompt-tool` übergeben. Starten Sie den Lauf daher mit einem solchen. Der Ablauf funktioniert so:2073Das Tool `AskUserQuestion` ist der typische Fall: Claude möchte dem Benutzer eine Frage stellen, aber es gibt kein Terminal, in dem geantwortet werden könnte. Ein `-p`-Lauf bietet `AskUserQuestion` nur an, wenn er einen [Berechtigungs-Host](https://code.claude.com/docs/de/headless.md#turn-off-permission-prompts-in-unattended-runs) hat, etwa ein MCP-Tool, das Sie mit `--permission-prompt-tool` übergeben. Starten Sie den Lauf daher mit einem solchen. Der Ablauf funktioniert so:

2057 2074 


20614. Der aufrufende Prozess führt `claude -p --resume <session-id>` mit demselben Berechtigungs-Host aus. Derselbe Tool-Aufruf löst `PreToolUse` erneut aus.20784. Der aufrufende Prozess führt `claude -p --resume <session-id>` mit demselben Berechtigungs-Host aus. Derselbe Tool-Aufruf löst `PreToolUse` erneut aus.

20625. Der Hook gibt `permissionDecision: "allow"` mit der Antwort in `updatedInput` zurück. Das Tool wird ausgeführt, und Claude fährt fort.20795. Der Hook gibt `permissionDecision: "allow"` mit der Antwort in `updatedInput` zurück. Das Tool wird ausgeführt, und Claude fährt fort.

2063 2080 

2064Das Feld `deferred_tool_use` enthält `id`, `name` und `input` des Tools. `input` sind die Parameter, die Claude für den Tool-Aufruf generiert hat, erfasst vor der Ausführung:2081Das Feld `deferred_tool_use` enthält `id`, `name` und `input` des Tools:

2065 2082 

2066```json theme={null}2083```json theme={null}

2067{2084{


2077}2094}

2078```2095```

2079 2096 

2080Es gibt keinen Timeout und keine Begrenzung für Wiederholungsversuche. Die Sitzung bleibt auf dem Datenträger, bis Sie sie fortsetzen, vorbehaltlich der Aufbewahrungsbereinigung über [`cleanupPeriodDays`](https://code.claude.com/docs/de/settings-reference#cleanupperioddays), die Sitzungsdateien standardmäßig nach 30 Tagen löscht, gemäß den [Regeln der Aufbewahrungsbereinigung](https://code.claude.com/docs/de/claude-directory.md#cleaned-up-automatically).2097Es gibt keinen Timeout und keine Begrenzung für Wiederholungsversuche. Die Sitzung bleibt auf der Festplatte, bis die [Aufbewahrungsbereinigung](https://code.claude.com/docs/de/claude-directory.md#cleaned-up-automatically) gemäß [`cleanupPeriodDays`](https://code.claude.com/docs/de/settings-reference#cleanupperioddays) sie löscht, standardmäßig nach 30 Tagen.

2081 

2082Wenn das zurückgestellte Tool beim Fortsetzen nicht mehr verfügbar ist, hat das erste Ergebnis der Fortsetzung `stop_reason: "tool_deferred_unavailable"` und `is_error: true`, und der Hook wird nicht ausgelöst. Das passiert, wenn ein MCP-Server, der das Tool bereitgestellt hat, für die fortgesetzte Sitzung nicht verbunden ist. Die Payload `deferred_tool_use` ist trotzdem enthalten, damit Sie erkennen können, welches Tool fehlt.

2083 

2084* **Wenn Sie weder mit der Fortsetzung noch danach einen Prompt gesendet haben**, ist der Aufruf weiterhin ausstehend. Setzen Sie erneut fort, wenn das Tool verfügbar ist, und es wird zuerst ausgeführt.

2085* **Wenn Sie mit der Fortsetzung oder danach einen Prompt gesendet haben**, beantwortet Claude Code diesen ohne das Ergebnis des Tools und verwirft den zurückgestellten Aufruf. Senden Sie einen neuen Prompt, sobald das Tool verfügbar ist, falls es weiterhin aufgerufen werden soll.

2086 2098 

2087Wenn die Antwort, auf die Sie warten, beim Fortsetzen ohne Prompt noch nicht bereit ist, kann der Hook erneut `"defer"` zurückgeben. Wenn Sie einen Prompt gesendet haben und der Hook erneut zurückstellt, behandelt Claude Code den Prompt genauso: Es antwortet ohne das Ergebnis des Tools und verwirft den Aufruf. Setzen Sie ohne Prompt fort, bis der Hook `"allow"` oder `"deny"` zurückgibt; so durchbricht der aufrufende Prozess die Schleife.2099Wenn die Antwort beim Fortsetzen noch nicht bereitsteht, kann der Hook erneut `"defer"` zurückgeben. Wenn Sie beim Fortsetzen einen Prompt mitgesendet haben, beantwortet Claude ihn ohne das Ergebnis des Tools und führt den Aufruf nicht aus. Setzen Sie ohne Prompt fort, bis der Hook `"allow"` oder `"deny"` zurückgibt.

2088 

2089`"defer"` funktioniert nur, wenn Claude im Turn einen einzigen Tool-Aufruf ausführt. Wenn Claude mehrere Tool-Aufrufe gleichzeitig ausführt, wird `"defer"` mit einer Warnung ignoriert, und das Tool durchläuft den normalen Berechtigungsablauf. Diese Einschränkung besteht, weil beim Fortsetzen nur ein Tool erneut ausgeführt werden kann: Es gibt keine Möglichkeit, einen Aufruf aus einem Stapel zurückzustellen, ohne die anderen ungelöst zu lassen.

2090 2100 

2091> [!NOTE]2101> [!NOTE]

2092>2102>

2093> Um eine zurückgestellte Sitzung im Plan-Modus fortzusetzen, übergeben Sie [`--permission-prompt-tool`](https://code.claude.com/docs/de/cli-reference#cli-flags) zusammen mit `--resume`, damit Claude Code den Plan zur Genehmigung vorlegen kann. Die weiteren Bedingungen finden Sie unter [Im Plan-Modus mit `-p` fortsetzen](https://code.claude.com/docs/de/sessions#resume-in-plan-mode-with-p). Erfordert Claude Code v2.1.246 oder höher.2103> Um eine zurückgestellte Sitzung im Plan-Modus fortzusetzen, übergeben Sie [`--permission-prompt-tool`](https://code.claude.com/docs/de/cli-reference#cli-flags) zusammen mit `--resume`, damit Claude Code den Plan zur Genehmigung vorlegen kann. Die weiteren Bedingungen finden Sie unter [Im Plan-Modus mit `-p` fortsetzen](https://code.claude.com/docs/de/sessions#resume-in-plan-mode-with-p). Erfordert Claude Code v2.1.246 oder höher.

2094>2104>

2095> Wenn Sie mit `-p` fortsetzen, stellt Claude Code keinen anderen gespeicherten Berechtigungsmodus wieder her. Es startet den Lauf in dem Berechtigungsmodus, in dem ein neuer `claude -p`-Lauf starten würde. Übergeben Sie daher `--permission-mode` oder `--dangerously-skip-permissions` erneut, falls die zurückgestellte Sitzung eines davon verwendet hat. Wenn Sie mit `claude --resume <session-id>` ohne `-p` fortsetzen, stellt Claude Code den gespeicherten Berechtigungsmodus wieder her, mit den unter [Berechtigungsmodus beim Fortsetzen](https://code.claude.com/docs/de/sessions.md#permission-mode-on-resume) aufgeführten Ausnahmen.2105> Wenn Sie mit `-p` fortsetzen, stellt Claude Code keinen anderen gespeicherten Berechtigungsmodus wieder her. Der Lauf startet in dem Berechtigungsmodus, in dem ein neuer `claude -p`-Lauf starten würde. Übergeben Sie daher `--permission-mode` oder `--dangerously-skip-permissions` erneut, wenn die zurückgestellte Sitzung eine dieser Optionen verwendet hat.

2106 

2107##### Fortsetzen, wenn ein zurückgestelltes Tool nicht verfügbar ist

2108 

2109Ein Ergebnis mit `stop_reason: "tool_deferred_unavailable"` bedeutet, dass das Tool eines zurückgestellten Aufrufs in der fortgesetzten Sitzung nicht verfügbar ist, zum Beispiel weil sein MCP-Server nicht verbunden ist. Ihr `PreToolUse`-Hook wird nicht ausgelöst, und das Feld `deferred_tool_use` des Ergebnisses nennt das Tool.

2110 

2111Solange der Aufruf aussteht, erreicht kein von Ihnen gesendeter Prompt Claude, und der Lauf endet mit Exit-Code 1. Das Feld `result` beginnt mit `<tool> isn't available, so its deferred call didn't run.` Führen Sie den Aufruf aus, oder verwerfen Sie ihn, damit er nicht ausgeführt wird:

2112 

2113* **Um den Aufruf auszuführen**: Machen Sie das Tool verfügbar und setzen Sie erneut fort.

2114* **Um den Aufruf zu verwerfen**: Setzen Sie mit einem Prompt fort und setzen Sie [`CLAUDE_CODE_DROP_UNAVAILABLE_DEFERRED_TOOL`](https://code.claude.com/docs/de/env-vars#variables) auf `1`. Claude erhält einen Fehler als Ergebnis des Aufrufs und beantwortet Ihren Prompt. Wenn Sie später fortsetzen, steht kein Aufruf mehr aus.

2115 

2116Wenn Sie den Aufruf verwerfen, schreibt der Lauf das Ergebnis `tool_deferred_unavailable` mit einem leeren Feld `result` und danach Claudes Antwort in einem zweiten Ergebnis. Er endet mit Exit-Code 0, sofern diese Antwort kein Fehler ist. Wenn Sie die Variable setzen und keinen Prompt senden, verwirft der Lauf den Aufruf trotzdem und endet mit Exit-Code 1.

2117 

2118Vor v2.1.319 beantwortete Claude Code einen Prompt ohne das Ergebnis des Tools und verwarf den Aufruf. Senden Sie bei diesen Versionen einen neuen Prompt, sobald das Tool verfügbar ist.

2096 2119 

2097### PermissionRequest2120### PermissionRequest

2098 2121 


2148| `message` | Nur für `"deny"`: Teilt Claude mit, warum die Berechtigung abgelehnt wurde |2171| `message` | Nur für `"deny"`: Teilt Claude mit, warum die Berechtigung abgelehnt wurde |

2149| `interrupt` | Nur für `"deny"`: Bei `true` wird Claude gestoppt |2172| `interrupt` | Nur für `"deny"`: Bei `true` wird Claude gestoppt |

2150 2173 

2174Informationen zum Erlauben oder Umschreiben eines Monitor-Befehls finden Sie unter [Monitor-Befehle abgleichen](#match-monitor-commands).

2175 

2151Ein Hook, der ohne `decision`-Objekt mit Exit-Code 2 beendet wird, lässt den Berechtigungsablauf unverändert, und seine stderr-Ausgabe wird verworfen. Um die Anfrage zu erlauben oder abzulehnen, geben Sie das `decision`-Objekt zurück.2176Ein Hook, der ohne `decision`-Objekt mit Exit-Code 2 beendet wird, lässt den Berechtigungsablauf unverändert, und seine stderr-Ausgabe wird verworfen. Um die Anfrage zu erlauben oder abzulehnen, geben Sie das `decision`-Objekt zurück.

2152 2177 

2153```json theme={null}2178```json theme={null}


2205* Um einen Hook nach jedem erfolgreich abgeschlossenen Tool auszuführen, lassen Sie den `matcher` weg oder setzen Sie ihn auf `"*"`. Ihr Hook kann dann selbst ermitteln, was sich geändert hat, etwa durch Ausführen von `git status --porcelain`, das auch nicht verfolgte Dateien auflistet, die `git diff` übersieht. Für fehlgeschlagene Tool-Aufrufe fügen Sie denselben Hook unter [PostToolUseFailure](#posttoolusefailure) hinzu.2230* Um einen Hook nach jedem erfolgreich abgeschlossenen Tool auszuführen, lassen Sie den `matcher` weg oder setzen Sie ihn auf `"*"`. Ihr Hook kann dann selbst ermitteln, was sich geändert hat, etwa durch Ausführen von `git status --porcelain`, das auch nicht verfolgte Dateien auflistet, die `git diff` übersieht. Für fehlgeschlagene Tool-Aufrufe fügen Sie denselben Hook unter [PostToolUseFailure](#posttoolusefailure) hinzu.

2206* Um einen Hook auszuführen, wenn sich eine bestimmte Datei auf der Festplatte ändert, unabhängig davon, wer sie geschrieben hat, verwenden Sie [FileChanged](#filechanged). Claude Code führt keinen `PostToolUse`-Hook mit dem Matcher `Edit|Write` aus, wenn ein `Bash`-Befehl oder ein Prozess außerhalb von Claude Code dieselbe Datei neu schreibt.2231* Um einen Hook auszuführen, wenn sich eine bestimmte Datei auf der Festplatte ändert, unabhängig davon, wer sie geschrieben hat, verwenden Sie [FileChanged](#filechanged). Claude Code führt keinen `PostToolUse`-Hook mit dem Matcher `Edit|Write` aus, wenn ein `Bash`-Befehl oder ein Prozess außerhalb von Claude Code dieselbe Datei neu schreibt.

2207 2232 

2233#### PostToolUse nach einer Unterbrechung

2234 

2235Wenn ein `PostToolUse`-Hook vorzeitig endet, nachdem Sie während eines Tool-Aufrufs eine Nachricht gesendet oder unterbrochen haben, prüfen Sie, ob Sie `Ctrl+Enter`, `Enter` oder `Esc` gedrückt haben:

2236 

2237* **`Ctrl+Enter`**: Wenn das Drücken den Turn [beendet](https://code.claude.com/docs/de/interactive-mode.md#when-claude-code-sends-what-you-queued), während ein Tool läuft, und das Tool abgeschlossen wird, laufen Ihre `PostToolUse`-Hooks auf dessen Ergebnis und haben 10 Sekunden Zeit, um fertig zu werden. Die Taste wirkt wie `Esc`, wenn Sie vor Ihren Nachrichten einen `!`-Befehl in die Warteschlange gestellt haben oder Hintergrundaufgaben deaktiviert sind, zum Beispiel mit [`CLAUDE_CODE_DISABLE_BACKGROUND_TASKS`](https://code.claude.com/docs/de/env-vars#variables).

2238* **`Enter`**: Eine Nachricht, die Sie mit `Enter` in die Warteschlange stellen, unterbricht den Turn nicht, sodass die Hooks ihren üblichen `timeout` behalten.

2239* **`Esc`**: Sie brechen die Hooks sofort ab. Senden Sie die Nachricht daher mit `Enter` oder `Ctrl+Enter`, wenn die Hooks laufen müssen.

2240 

2241Wenn die 10 Sekunden abgelaufen sind, beendet Claude Code einen noch laufenden Befehls-Hook, unabhängig von seinem [`timeout`](#common-fields). Damit ein länger laufender Befehls-Hook fertig werden kann, führen Sie ihn mit [`async: true`](#run-hooks-in-the-background) aus. Das bedeutet, dass der Hook das Ergebnis weder blockieren noch umschreiben kann.

2242 

2243Vor v2.1.319 starteten die Hooks nicht, nachdem Sie den Turn mit einer Nachricht unterbrochen hatten, und ein laufender Hook wurde angehalten.

2244 

2208#### PostToolUse-Eingabe2245#### PostToolUse-Eingabe

2209 2246 

2210`PostToolUse`-Hooks werden ausgelöst, nachdem ein Tool bereits erfolgreich ausgeführt wurde. Die Eingabe enthält sowohl `tool_input`, die an das Tool gesendeten Argumente, als auch `tool_response`, das zurückgegebene Ergebnis. Das genaue Schema beider hängt vom Tool ab. Pfade in `tool_input` von Datei-Tools kommen im selben Format an wie bei [PreToolUse](#pretooluse-input): immer absolut, mit den nativen Trennzeichen der Plattform, unter Windows also mit Backslashes. Bei einem MCP-Tool enthält die Eingabe außerdem das Objekt [`mcp_server`](#pretooluse-input).2247`PostToolUse`-Hooks werden ausgelöst, nachdem ein Tool bereits erfolgreich ausgeführt wurde. Die Eingabe enthält sowohl `tool_input`, die an das Tool gesendeten Argumente, als auch `tool_response`, das zurückgegebene Ergebnis. Das genaue Schema beider hängt vom Tool ab. Pfade in `tool_input` von Datei-Tools kommen im selben Format an wie bei [PreToolUse](#pretooluse-input): immer absolut, mit den nativen Trennzeichen der Plattform, unter Windows also mit Backslashes. Bei einem MCP-Tool enthält die Eingabe außerdem das Objekt [`mcp_server`](#pretooluse-input).


2479| `permission_prompt` | Claude benötigt Ihre Genehmigung für eine Tool-Nutzung oder die [Netzwerkanfrage](https://code.claude.com/docs/de/sandboxing.md#network-isolation) eines in einer Sandbox ausgeführten Befehls, und die Abfrage wartet seit etwa sechs Sekunden |2516| `permission_prompt` | Claude benötigt Ihre Genehmigung für eine Tool-Nutzung oder die [Netzwerkanfrage](https://code.claude.com/docs/de/sandboxing.md#network-isolation) eines in einer Sandbox ausgeführten Befehls, und die Abfrage wartet seit etwa sechs Sekunden |

2480| `idle_prompt` | Claude hat vor etwa 60 Sekunden seine Antwort beendet, und Sie haben seitdem nichts eingegeben |2517| `idle_prompt` | Claude hat vor etwa 60 Sekunden seine Antwort beendet, und Sie haben seitdem nichts eingegeben |

2481| `auth_success` | Die Authentifizierung ist abgeschlossen |2518| `auth_success` | Die Authentifizierung ist abgeschlossen |

2519| `auth_storage_failure` | Ihre Anmeldung ist abgeschlossen, aber Claude Code kann die neuen Anmeldedaten nicht in seinem [Anmeldedatenspeicher](https://code.claude.com/docs/de/authentication.md#credential-management) speichern. Wird anstelle von `auth_success` ausgelöst |

2482| `elicitation_dialog` | Ein MCP-Server öffnet ein Elicitation-Formular, und Sie haben seit etwa sechs Sekunden nichts eingegeben |2520| `elicitation_dialog` | Ein MCP-Server öffnet ein Elicitation-Formular, und Sie haben seit etwa sechs Sekunden nichts eingegeben |

2483| `elicitation_url_dialog` | Ein MCP-Server bittet Sie, eine Browser-URL zu öffnen, und Sie haben seit etwa sechs Sekunden nichts eingegeben |2521| `elicitation_url_dialog` | Ein MCP-Server bittet Sie, eine Browser-URL zu öffnen, und Sie haben seit etwa sechs Sekunden nichts eingegeben |

2484| `elicitation_complete` | Ein MCP-Server meldet, dass eine [Elicitation im URL-Modus](#elicitation-input) abgeschlossen ist |2522| `elicitation_complete` | Ein MCP-Server meldet, dass eine [Elicitation im URL-Modus](#elicitation-input) abgeschlossen ist |


2490| `quota_auto_resume_disabled` | Claude Code beendet das Warten auf ein claude.ai-Nutzungslimit, 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 begonnen hat, um mehr als 24 Stunden verschoben, die fortgesetzte Aufgabe ist wiederholt an das Limit gestoßen, 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** wählen |2528| `quota_auto_resume_disabled` | Claude Code beendet das Warten auf ein claude.ai-Nutzungslimit, 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 begonnen hat, um mehr als 24 Stunden verschoben, die fortgesetzte Aufgabe ist wiederholt an das Limit gestoßen, 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** wählen |

2491| `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 festgelegt hat |2529| `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 festgelegt hat |

2492 2530 

2493Die Typen `quota_auto_resume_fired`, `quota_auto_resume_stale` und `quota_auto_resume_disabled` erfordern Claude Code v2.1.234 oder höher.2531Die Typen `quota_auto_resume_fired`, `quota_auto_resume_stale` und `quota_auto_resume_disabled` erfordern Claude Code v2.1.234 oder höher. Der Typ `auth_storage_failure` erfordert v2.1.288 oder höher.

2494 2532 

2495In Terminalsitzungen erfordert `permission_prompt` für die Netzwerkanfrage eines in einer Sandbox ausgeführten Befehls Claude Code v2.1.246 oder höher.2533In Terminalsitzungen erfordert `permission_prompt` für die Netzwerkanfrage eines in einer Sandbox ausgeführten Befehls Claude Code v2.1.246 oder höher.

2496 2534 


3326}3364}

3327```3365```

3328 3366 

3367#### PreCompact-Ausgabe

3368 

3369Wenn ein PreCompact-Hook mit 0 beendet wird und nicht blockiert, verwendet Claude Code seine stdout-Ausgabe als Anweisungen für die Zusammenfassung der Komprimierung. Halten Sie diese stdout-Ausgabe pro Hook unter 10.000 Zeichen. Claude Code schneidet längere Ausgabe an dieser Grenze ab und hängt eine Markierung an.

3370 

3329### PostCompact3371### PostCompact

3330 3372 

3331Wird ausgeführt, nachdem Claude Code eine Komprimierung abgeschlossen hat. Verwenden Sie dieses Ereignis, um auf den neuen komprimierten Zustand zu reagieren, etwa um die generierte Zusammenfassung zu protokollieren oder externen Zustand zu aktualisieren. Claude Code verwirft die Felder `systemMessage` und `continue` eines PostCompact-Hooks.3373Wird ausgeführt, nachdem Claude Code eine Komprimierung abgeschlossen hat. Verwenden Sie dieses Ereignis, um auf den neuen komprimierten Zustand zu reagieren, etwa um die generierte Zusammenfassung zu protokollieren oder externen Zustand zu aktualisieren. Claude Code verwirft die Felder `systemMessage` und `continue` eines PostCompact-Hooks.

hooks-guide.md +4 −3

Details

177> >177> >

178> > Wenn Sie Claude Code in WSL ausführen, muss `powershell.exe` über die Windows-Interoperabilität in 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 auszulösen, 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 Benachrichtigungstyp, etwa einen der folgenden:

181 181 

182| Matcher | Wird ausgelöst, wenn |182| Matcher | Wird ausgelöst, wenn |

183| :- | :- |183| :- | :- |

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 |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 vor etwa 60 Sekunden mit der Antwort fertig war und Sie seitdem nichts eingegeben haben |185| `idle_prompt` | Claude vor etwa 60 Sekunden mit der Antwort fertig war und Sie seitdem nichts eingegeben haben |

186| `auth_success` | Die Authentifizierung abgeschlossen ist |186| `auth_success` | Die Authentifizierung abgeschlossen ist |

187| `auth_storage_failure` | Ihre Anmeldung abgeschlossen ist, Claude Code die neuen Anmeldedaten aber nicht in seinem [Speicher für Anmeldedaten](https://code.claude.com/docs/de/authentication.md#credential-management) speichern kann. Wird anstelle von `auth_success` ausgelöst |

187| `elicitation_dialog` | Ein MCP-Server ein Elicitation-Formular öffnet und Sie etwa sechs Sekunden lang nichts eingegeben haben |188| `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 Sie auffordert, eine URL im Browser zu öffnen, und Sie etwa sechs Sekunden lang nichts eingegeben haben |189| `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 [Elicitation im URL-Modus](https://code.claude.com/docs/de/hooks.md#elicitation-input) abgeschlossen ist |190| `elicitation_complete` | Ein MCP-Server meldet, dass eine [Elicitation im URL-Modus](https://code.claude.com/docs/de/hooks.md#elicitation-input) abgeschlossen ist |


197 198 

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).199Claude 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 200 

200Die Matcher `quota_auto_resume_fired`, `quota_auto_resume_stale` und `quota_auto_resume_disabled` erfordern Claude Code v2.1.234 oder höher.201Die Matcher `quota_auto_resume_fired`, `quota_auto_resume_stale` und `quota_auto_resume_disabled` erfordern Claude Code v2.1.234 oder höher. Der Matcher `auth_storage_failure` erfordert v2.1.288 oder höher.

201 202 

202In Terminalsitzungen erfordert `permission_prompt` für die Netzwerkanfrage eines Befehls in der Sandbox Claude Code v2.1.246 oder höher.203In Terminalsitzungen erfordert `permission_prompt` für die Netzwerkanfrage eines Befehls in der Sandbox Claude Code v2.1.246 oder höher.

203 204 


688| `SessionStart` | wie die Sitzung gestartet wurde | `startup`, `resume`, `clear`, `compact`, `fork` |689| `SessionStart` | wie die Sitzung gestartet wurde | `startup`, `resume`, `clear`, `compact`, `fork` |

689| `Setup` | welches CLI-Flag das Setup ausgelöst hat | `init`, `maintenance` |690| `Setup` | welches CLI-Flag das Setup ausgelöst hat | `init`, `maintenance` |

690| `SessionEnd` | warum die Sitzung endete | `clear`, `resume`, `logout`, `prompt_input_exit`, `other` |691| `SessionEnd` | warum die Sitzung endete | `clear`, `resume`, `logout`, `prompt_input_exit`, `other` |

691| `Notification` | Benachrichtigungstyp | `permission_prompt`, `idle_prompt`, `auth_success`, `elicitation_dialog`, `elicitation_url_dialog`, `elicitation_complete`, `elicitation_response`, `agent_needs_input`, `agent_completed`, `quota_auto_resume_fired`, `quota_auto_resume_stale`, `quota_auto_resume_disabled`, `plugin_notification` |692| `Notification` | Benachrichtigungstyp | `permission_prompt`, `idle_prompt`, `auth_success`, `auth_storage_failure`, `elicitation_dialog`, `elicitation_url_dialog`, `elicitation_complete`, `elicitation_response`, `agent_needs_input`, `agent_completed`, `quota_auto_resume_fired`, `quota_auto_resume_stale`, `quota_auto_resume_disabled`, `plugin_notification` |

692| `SubagentStart` | Agent-Typ | `general-purpose`, `Explore`, `Plan` oder benutzerdefinierte Agent-Namen |693| `SubagentStart` | Agent-Typ | `general-purpose`, `Explore`, `Plan` oder benutzerdefinierte Agent-Namen |

693| `PreCompact`, `PostCompact` | was die Komprimierung ausgelöst hat | `manual`, `auto` |694| `PreCompact`, `PostCompact` | was die Komprimierung ausgelöst hat | `manual`, `auto` |

694| `PreModelSwitch`, `PostModelSwitch` | kanonischer Name des Modells, zu dem die Sitzung wechselt, wie unter [PreModelSwitch](https://code.claude.com/docs/de/hooks.md#premodelswitch) beschrieben | `claude-opus-5`, `claude-opus-4-6\|claude-opus-5`, `.*opus.*` |695| `PreModelSwitch`, `PostModelSwitch` | kanonischer Name des Modells, zu dem die Sitzung wechselt, wie unter [PreModelSwitch](https://code.claude.com/docs/de/hooks.md#premodelswitch) beschrieben | `claude-opus-5`, `claude-opus-4-6\|claude-opus-5`, `.*opus.*` |

mcp.md +13 −3

Details

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

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* `✘ 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.


306 306 

307Das `/mcp`-Panel zeigt die Werkzeuganzahl neben jedem verbundenen Server und kennzeichnet Server, die die Werkzeugfähigkeit ankündigen, aber keine Werkzeuge bereitstellen.307Das `/mcp`-Panel zeigt die Werkzeuganzahl neben jedem verbundenen Server und kennzeichnet Server, die die Werkzeugfähigkeit ankündigen, aber keine Werkzeuge bereitstellen.

308 308 

309##### Tool-Anzahlen in einer Cloud-Sitzung

310 

311In einer [Cloud-Sitzung](https://code.claude.com/docs/de/claude-code-on-the-web.md) bedeutet eine Anzahl wie `3 of 13 tools available`, dass Claude die anderen 10 nicht verwenden kann. Prüfen Sie unter anderem diese Ursachen:

312 

313* **Eine Deny-Regel in der `.claude/settings.json` Ihres Repositorys nennt das Tool oder seinen gesamten Server**: Entfernen Sie die [Regel](https://code.claude.com/docs/de/permissions.md#mcp), sofern [Ihre Sitzung diese Datei liest](https://code.claude.com/docs/de/settings.md#settings-in-cloud-sessions)

314* **Der vollständige Name des Tools ist länger als 128 Zeichen**: Folgen Sie [den Schritten für einen zu langen Namen](https://code.claude.com/docs/de/errors.md#mcp-tool-name-over-128-characters)

315* **Der Server listet das Tool für seine eigene Oberfläche und nicht für Claude**: Wenn Sie den Server pflegen, fügen Sie `model` zu `_meta.ui.visibility` des Tools hinzu, um Claude das Tool zu geben. Andernfalls gibt es nichts zu beheben.

316 

317##### Tools von einem Server, der sich noch verbindet

318 

309Wenn Ihre Anfrage Werkzeuge von einem Server benötigt, der sich noch im Hintergrund verbindet, wartet Claude auf diesen Server, bevor er fortfährt. Wie das Warten geschieht, hängt von Ihrer Konfiguration ab:319Wenn Ihre Anfrage Werkzeuge von einem Server benötigt, der sich noch im Hintergrund verbindet, wartet Claude auf diesen Server, bevor er fortfährt. Wie das Warten geschieht, hängt von Ihrer Konfiguration ab:

310 320 

311* **Mit [Werkzeugsuche](#scale-with-mcp-tool-search), der Standard**: Das Warten geschieht innerhalb des `ToolSearch`-Aufrufs.321* **Mit [Werkzeugsuche](#scale-with-mcp-tool-search), der Standard**: Das Warten geschieht innerhalb des `ToolSearch`-Aufrufs.


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

350* Es sendet [MCP-OAuth](#authenticate-with-remote-mcp-servers)-Anmeldedaten nur an einen Token-Endpunkt, der über HTTPS oder bei `localhost`, `127.0.0.1` oder `::1` bereitgestellt wird. Die Anmeldung schlägt für einen Server fehl, dessen Token-Endpunkt einfaches `http://` irgendwo anders ist, wie ein Gerät in Ihrem lokalen Netzwerk. Siehe [Refusing to send credentials to non-https token endpoint](https://code.claude.com/docs/de/errors.md#refusing-to-send-credentials-to-non-https-token-endpoint).360* Es sendet [MCP-OAuth](#authenticate-with-remote-mcp-servers)-Anmeldedaten nur an einen Token-Endpunkt, der über HTTPS oder bei `localhost`, `127.0.0.1` oder `::1` bereitgestellt wird. Die Anmeldung schlägt für einen Server fehl, dessen Token-Endpunkt einfaches `http://` irgendwo anders ist, wie ein Gerät in Ihrem lokalen Netzwerk. Siehe [Refusing to send credentials to non-https token endpoint](https://code.claude.com/docs/de/errors.md#refusing-to-send-credentials-to-non-https-token-endpoint).

351 361 

352Anthropic kann einen bestimmten Server mit einem Feature-Flag, das Claude Code abruft, auf dem früheren Protokoll halten oder aus diesem Stream entfernen.362Anthropic kann einen bestimmten Server mit einem Feature-Flag, das Claude Code abruft, beim früheren Protokoll oder außerhalb dieses Streams halten. Um die Laufzeit selbst zu wählen, setzen Sie [`MCP_SDK_GENERATION`](https://code.claude.com/docs/de/env-vars) auf `v1` oder `v2`.

353 363 

354Um die Runtime selbst auszuwählen, setzen Sie [`MCP_SDK_GENERATION`](https://code.claude.com/docs/de/env-vars) auf `v1` oder `v2`. Um zu entscheiden, ob Claude Code fragt, setzen Sie [`MCP_PROTOCOL_NEGOTIATION`](https://code.claude.com/docs/de/env-vars) auf `auto` oder `legacy`.364Um festzulegen, ob Claude Code Server nach der neueren Revision fragt, setzen Sie [`MCP_PROTOCOL_NEGOTIATION`](https://code.claude.com/docs/de/env-vars) auf `auto` oder `legacy`. Wenn diese Variable nicht gesetzt ist, kann Claude Code die Abfrage bei einem stdio-Server 7 Tage lang überspringen, zum Beispiel nachdem sich der Server bei der Abfrage beendet hat. Damit ein aktualisierter Server früher gefragt wird, setzen Sie `auto`.

355 365 

356### Dynamische Werkzeugaktualisierungen366### Dynamische Werkzeugaktualisierungen

357 367 

mobile.md +1 −1

Details

66 66 

67### Push-Benachrichtigungen erhalten67### Push-Benachrichtigungen erhalten

68 68 

69Wenn Remote Control aktiv ist, kann Claude Push-Benachrichtigungen an Ihr Telefon senden, normalerweise wenn eine lange laufende Aufgabe beendet wird oder wenn eine Entscheidung von Ihnen erforderlich ist. Sie können auch eine in Ihrem Prompt anfordern, z. B. `notify me when the tests finish`. Siehe [Mobile Push-Benachrichtigungen](https://code.claude.com/docs/de/remote-control.md#mobile-push-notifications) für die zwei `/config`-Umschalter und Fehlerbehebung bei der Zustellung.69Wenn Remote Control aktiv ist, kann Claude Push-Benachrichtigungen an Ihr Telefon senden, wenn eine lange laufende Aufgabe beendet wird oder wenn eine Entscheidung von Ihnen erforderlich ist. Sie können auch eine in Ihrem Prompt anfordern, z. B. `notify me when the tests finish`. Siehe [Mobile Push-Benachrichtigungen](https://code.claude.com/docs/de/remote-control.md#mobile-push-notifications) für die zwei `/config`-Umschalter und Fehlerbehebung bei der Zustellung.

70 70 

71Dispatch sendet seine eigene Benachrichtigung, wenn eine Code-Sitzung, die es erzeugt hat, beendet wird oder Ihre Genehmigung benötigt, beschrieben in [Sitzungen von Dispatch](https://code.claude.com/docs/de/desktop.md#sessions-from-dispatch).71Dispatch sendet seine eigene Benachrichtigung, wenn eine Code-Sitzung, die es erzeugt hat, beendet wird oder Ihre Genehmigung benötigt, beschrieben in [Sitzungen von Dispatch](https://code.claude.com/docs/de/desktop.md#sessions-from-dispatch).

72 72 

model-config.md +10 −1

Details

566* Wenn beide Modelle die gleiche Anfrage kennzeichnen, können Sie den Prompt bearbeiten und es erneut versuchen oder eine neue Sitzung starten.566* Wenn beide Modelle die gleiche Anfrage kennzeichnen, können Sie den Prompt bearbeiten und es erneut versuchen oder eine neue Sitzung starten.

567* In [Cloud-Sitzungen](https://code.claude.com/docs/de/claude-code-on-the-web.md) in der mobilen App wird das Bearbeiten und erneute Versuchen nicht unterstützt. Wechseln Sie das Modell oder setzen Sie die Sitzung in einem Desktop-Browser oder der Desktop-App fort.567* In [Cloud-Sitzungen](https://code.claude.com/docs/de/claude-code-on-the-web.md) in der mobilen App wird das Bearbeiten und erneute Versuchen nicht unterstützt. Wechseln Sie das Modell oder setzen Sie die Sitzung in einem Desktop-Browser oder der Desktop-App fort.

568* Im [nicht interaktiven Modus](https://code.claude.com/docs/de/cli-reference.md#cli-flags) und in SDK-Integrationen, die die Abfrage nicht anzeigen können, beendet eine gekennzeichnete Anfrage den Turn stattdessen mit einer Ablehnung.568* Im [nicht interaktiven Modus](https://code.claude.com/docs/de/cli-reference.md#cli-flags) und in SDK-Integrationen, die die Abfrage nicht anzeigen können, beendet eine gekennzeichnete Anfrage den Turn stattdessen mit einer Ablehnung.

569* In einem [Subagenten](https://code.claude.com/docs/de/sub-agents.md) zeigt Claude Code die Abfrage nicht an, und eine gekennzeichnete Anfrage, die das Modell wechseln würde, wird auf dem Fallback-Modell erneut ausgeführt.569* In einem Subagenten, den Claude mit dem [Agent-Tool](https://code.claude.com/docs/de/tools-reference.md#agent-tool-behavior) startet, pausiert Claude Code nicht, um nachzufragen, und der Subagent schlägt fehl, statt das Modell zu wechseln. Siehe [Subagenten wechseln oder schlagen fehl, ohne zu fragen](#subagents-switch-or-fail-without-asking).

570* Wenn das Fallback-Ziel von [`availableModels`](#restrict-model-selection) blockiert ist, zeigt Claude Code die Abfrage nicht an. Die gekennzeichnete Anfrage endet mit der Ablehnung, genau wie beim automatischen Fallback, wenn das Ziel blockiert ist.570* Wenn das Fallback-Ziel von [`availableModels`](#restrict-model-selection) blockiert ist, zeigt Claude Code die Abfrage nicht an. Die gekennzeichnete Anfrage endet mit der Ablehnung, genau wie beim automatischen Fallback, wenn das Ziel blockiert ist.

571 571 

572#### Subagenten wechseln oder schlagen fehl, ohne zu fragen

573 

574In einem integrierten oder benutzerdefinierten [Subagenten](https://code.claude.com/docs/de/sub-agents.md), den Claude mit dem [Agent-Tool](https://code.claude.com/docs/de/tools-reference.md#agent-tool-behavior) startet, [pausiert Claude Code bei einer gekennzeichneten Anfrage nicht, um nachzufragen](#ask-before-switching). Wenn ein Fallback-Modell verfügbar ist, wird die Anfrage darauf erneut ausgeführt oder der Subagent schlägt fehl, je nach Ihrer Wahl bei **Switch models when a message is flagged** in `/config`:

575 

576* **Switch automatically** oder noch keine Wahl: Die Anfrage wird auf dem Fallback-Modell erneut ausgeführt, und das Modell Ihrer Sitzung bleibt unverändert

577* **Ask each time**: Der Subagent schlägt mit [`Agent terminated early due to an API error`](https://code.claude.com/docs/de/errors#agent-terminated-early-due-to-an-api-error) und der Ablehnungsmeldung fehl. Claude erhält diesen Fehler und entscheidet, wie mit der unerledigten Aufgabe umgegangen wird. Damit Subagenten das Modell wechseln können, wählen Sie **Switch automatically**. Ihre Hauptkonversation wechselt dann ebenfalls, ohne zu fragen.

578 

579Wenn kein Fallback-Modell verfügbar ist, schlägt der Subagent bei beiden Optionen auf die gleiche Weise fehl. Vor v2.1.318 wurde die gekennzeichnete Anfrage eines Subagenten unabhängig von Ihrer Wahl auf einem verfügbaren Fallback-Modell erneut ausgeführt.

580 

572#### Fallback auf Bedrock, Agent Platform und Foundry aktivieren581#### Fallback auf Bedrock, Agent Platform und Foundry aktivieren

573 582 

574Auf [Amazon Bedrock](https://code.claude.com/docs/de/amazon-bedrock.md), [Google Cloud's Agent Platform](https://code.claude.com/docs/de/google-vertex-ai.md) und [Microsoft Foundry](https://code.claude.com/docs/de/microsoft-foundry.md) sind Modell-IDs Provider-spezifisch, daher funktioniert automatisches Fallback nur, wenn Claude Code jedes beteiligte Modell identifizieren kann:583Auf [Amazon Bedrock](https://code.claude.com/docs/de/amazon-bedrock.md), [Google Cloud's Agent Platform](https://code.claude.com/docs/de/google-vertex-ai.md) und [Microsoft Foundry](https://code.claude.com/docs/de/microsoft-foundry.md) sind Modell-IDs Provider-spezifisch, daher funktioniert automatisches Fallback nur, wenn Claude Code jedes beteiligte Modell identifizieren kann:

Details

89export NODE_EXTRA_CA_CERTS=/path/to/ca-cert.pem89export NODE_EXTRA_CA_CERTS=/path/to/ca-cert.pem

90```90```

91 91 

92Wenn Sie eine dieser Warnungen sehen, konnte Claude Code die `NODE_EXTRA_CA_CERTS`-Datei nicht vollständig laden, und Verbindungen, die ein übersprungenes Zertifikat benötigen, können fehlschlagen:

93 

94* `Claude Code used only the certificates that it could read in full from the NODE_EXTRA_CA_CERTS file`

95* `Claude Code ignored all of the NODE_EXTRA_CA_CERTS file: it holds no certificate that Claude Code can read`

96 

97Der vollständige Text jeder Warnung beschreibt, wie Sie die Datei korrigieren. Ein übersprungenes Zertifikat, das sich auch im [CA-Zertifikatspeicher](#ca-certificate-store) befindet, funktioniert weiterhin.

98 

92## mTLS-Authentifizierung99## mTLS-Authentifizierung

93 100 

94Für Unternehmensumgebungen, die eine Client-Zertifikatauthentifizierung erfordern:101Für Unternehmensumgebungen, die eine Client-Zertifikatauthentifizierung erfordern:

Details

154 154 

155### Berechtigungsmodi mit der HIPAA-Konfiguration155### Berechtigungsmodi mit der HIPAA-Konfiguration

156 156 

157In einer Organisation, auf die die [HIPAA-Konfiguration](https://code.claude.com/docs/de/hipaa-setup.md) angewendet ist, gilt der integrierte `auto` Standard nicht. Eine Terminal- oder VS Code-Sitzung startet im Manual-Modus, wenn nichts anderes ihren Start-Berechtigungsmodus festlegt. Eine Terminal-Sitzung zeigt außerdem `Auto mode isn't the default for your organization · Shift+Tab to switch` an, und die VS Code-Erweiterung zeigt keinen Hinweis an. [Prüfen, wie sich Entwickler anmelden und verbinden](https://code.claude.com/docs/de/hipaa-setup.md#check-how-developers-sign-in-and-connect) listet die Sitzungen auf, für die dies gilt.157In einer Organisation, auf die die [HIPAA-Konfiguration](https://code.claude.com/docs/de/hipaa-setup.md) angewendet ist, gilt der [integrierte `auto` Standard](#which-mode-a-session-starts-in) nicht. Eine Terminal- oder VS Code-Sitzung startet im Manual-Modus, wenn nichts anderes ihren Start-Berechtigungsmodus festlegt. Eine Terminal-Sitzung zeigt außerdem `Auto mode isn't the default for your organization · Shift+Tab to switch` an, und die VS Code-Erweiterung zeigt keinen Hinweis an. [Prüfen, wie sich Entwickler anmelden und verbinden](https://code.claude.com/docs/de/hipaa-setup.md#check-how-developers-sign-in-and-connect) listet die Sitzungen auf, für die dies gilt.

158 158 

159Auto-Modus und `bypassPermissions` bleiben verfügbar:159Auto-Modus und `bypassPermissions` bleiben verfügbar:

160 160 


163* **Auto-Modus entfernen**: Setzen Sie [`permissions.disableAutoMode`](https://code.claude.com/docs/de/settings-reference#disableautomode) in verwalteten Einstellungen auf `"disable"`163* **Auto-Modus entfernen**: Setzen Sie [`permissions.disableAutoMode`](https://code.claude.com/docs/de/settings-reference#disableautomode) in verwalteten Einstellungen auf `"disable"`

164* **`bypassPermissions` blockieren**: Setzen Sie [`permissions.disableBypassPermissionsMode`](https://code.claude.com/docs/de/settings-reference#permissions-disablebypasspermissionsmode) in verwalteten Einstellungen auf `"disable"`164* **`bypassPermissions` blockieren**: Setzen Sie [`permissions.disableBypassPermissionsMode`](https://code.claude.com/docs/de/settings-reference#permissions-disablebypasspermissionsmode) in verwalteten Einstellungen auf `"disable"`

165 165 

166Erfordert Claude Code v2.1.285 oder später, die [Mindestversion für die HIPAA-Konfiguration](https://code.claude.com/docs/de/hipaa-setup.md#update-claude-code-and-claude-desktop).

167 

168## Berechtigungsmodi wechseln166## Berechtigungsmodi wechseln

169 167 

170Jede Schnittstelle hat ihre eigene Kontrolle zum Wechseln von Berechtigungsmodi während einer Sitzung und ihre eigene Weise, den Berechtigungsmodus zu wählen, den neue Sitzungen starten. Wählen Sie Ihre Schnittstelle aus, um ihre Kontrollen zu sehen.168Jede Schnittstelle hat ihre eigene Kontrolle zum Wechseln von Berechtigungsmodi während einer Sitzung und ihre eigene Weise, den Berechtigungsmodus zu wählen, den neue Sitzungen starten. Wählen Sie Ihre Schnittstelle aus, um ihre Kontrollen zu sehen.


253>251>

254> Verwenden Sie auf [claude.ai/code](https://claude.ai/code) das Modusmenü in der Zeile unter dem Eingabefeld. Tippen Sie in der mobilen App auf die Schaltfläche **+** im Eingabefeld und dann auf **Permission**. Cloud-Sitzungen und Remote-Control-Sitzungen bieten unterschiedliche Berechtigungsmodi:252> Verwenden Sie auf [claude.ai/code](https://claude.ai/code) das Modusmenü in der Zeile unter dem Eingabefeld. Tippen Sie in der mobilen App auf die Schaltfläche **+** im Eingabefeld und dann auf **Permission**. Cloud-Sitzungen und Remote-Control-Sitzungen bieten unterschiedliche Berechtigungsmodi:

255>253>

256> * **[Cloud-Sitzungen](https://code.claude.com/docs/de/claude-code-on-the-web.md)**: Bearbeitungen akzeptieren, Plan und Auto. Bearbeitungen akzeptieren entspricht dem `default` Modus: Cloud-Sitzungen genehmigen Dateibearbeitungen vorab, unabhängig vom Modus, daher zeigt das Menü Bearbeitungen akzeptieren statt Manual an. Cloud-Sitzungen respektieren weiterhin `defaultMode: "acceptEdits"` aus den Einstellungen. Der Auto-Modus wird nur angezeigt, wenn Ihre Organisation ihn zulässt und das ausgewählte Modell ihn unterstützt. Bypass permissions ist nicht verfügbar.254> * **[Cloud-Sitzungen](https://code.claude.com/docs/de/claude-code-on-the-web.md)**: Bearbeitungen akzeptieren, Plan und Auto. Bearbeitungen akzeptieren entspricht dem `default` Modus: Cloud-Sitzungen genehmigen Dateibearbeitungen vorab, unabhängig vom Modus, daher zeigt das Menü Bearbeitungen akzeptieren statt Manual an. Cloud-Sitzungen respektieren weiterhin `defaultMode: "acceptEdits"` aus den Einstellungen. Der Auto-Modus wird angezeigt, sofern Ihre Organisation ihn nicht deaktiviert, und auf claude.ai/code ist er ausgegraut, wenn das ausgewählte Modell ihn nicht [unterstützt](#eliminate-prompts-with-auto-mode). Bypass permissions ist nicht verfügbar.

257> * **[Remote Control](https://code.claude.com/docs/de/remote-control.md)-Sitzungen** auf Ihrem lokalen Computer: Manual, Bearbeitungen akzeptieren, Plan und Auto für eine Sitzung, die Sie selbst gestartet haben, und Sie können Bypass permissions nicht aus der App auswählen. Um Auto zu verwenden, muss die Sitzung die [Verfügbarkeitsanforderungen](#eliminate-prompts-with-auto-mode) des Auto-Modus erfüllen. Für einen Projekt-Thread, der auf Ihrem Computer läuft, siehe [Führen Sie einen Thread auf Ihrem eigenen Computer aus](https://code.claude.com/docs/de/claude-projects.md#run-a-thread-on-your-own-computer).255> * **[Remote Control](https://code.claude.com/docs/de/remote-control.md)-Sitzungen** auf Ihrem lokalen Computer: Manual, Bearbeitungen akzeptieren, Plan und Auto für eine Sitzung, die Sie selbst gestartet haben, und Sie können Bypass permissions nicht aus der App auswählen. Um Auto zu verwenden, muss die Sitzung die [Verfügbarkeitsanforderungen](#eliminate-prompts-with-auto-mode) des Auto-Modus erfüllen. Für einen Projekt-Thread, der auf Ihrem Computer läuft, siehe [Führen Sie einen Thread auf Ihrem eigenen Computer aus](https://code.claude.com/docs/de/claude-projects.md#run-a-thread-on-your-own-computer).

258> * Außer für Bypass permissions zeigt das Menü den Berechtigungsmodus an, in dem sich die lokale Sitzung befindet, einschließlich eines vom Terminal aus festgelegten Modus. Es wird aktualisiert, wenn sich der Berechtigungsmodus in der App oder im Terminal ändert.256> * Außer für Bypass permissions zeigt das Menü den Berechtigungsmodus an, in dem sich die lokale Sitzung befindet, einschließlich eines vom Terminal aus festgelegten Modus. Es wird aktualisiert, wenn sich der Berechtigungsmodus in der App oder im Terminal ändert.

259> * Sitzungen, die von der [Desktop-App](https://code.claude.com/docs/de/desktop.md) oder der [VS Code-Erweiterung](https://code.claude.com/docs/de/vs-code.md) gehostet werden, melden Berechtigungsmodus-Änderungen an claude.ai, während sie passieren, genauso wie Sitzungen, die in einem Terminal gehostet werden.257> * Sitzungen, die von der [Desktop-App](https://code.claude.com/docs/de/desktop.md) oder der [VS Code-Erweiterung](https://code.claude.com/docs/de/vs-code.md) gehostet werden, melden Berechtigungsmodus-Änderungen an claude.ai, während sie passieren, genauso wie Sitzungen, die in einem Terminal gehostet werden.


433claude --permission-mode auto --debug-file classifier-debug.log431claude --permission-mode auto --debug-file classifier-debug.log

434```432```

435 433 

436Lassen Sie Claude einen Shell-Befehl ausführen, der nicht nur lesend ist, und durchsuchen Sie dann das Log nach `classifier_request_started`:434Damit der Klassifikator einen Befehl zur Überprüfung erhält, lassen Sie Claude `curl https://example.com` ausführen, und durchsuchen Sie dann das Log nach `classifier_request_started`:

437 435 

438* **Ihr Modell nach `model=`**: Die Variable ist wirksam geworden436* **Ihr Modell nach `model=`**: Die Variable ist wirksam geworden

439* **Ein anderes Modell nach `model=`**: Durchsuchen Sie das Log nach `ignoring CLAUDE_CODE_AUTO_MODE_MODEL`; dort finden Sie den Grund und gegebenenfalls einen nötigen Schritt437* **Ein anderes Modell nach `model=`**: Durchsuchen Sie das Log nach `ignoring CLAUDE_CODE_AUTO_MODE_MODEL`; dort finden Sie den Grund und gegebenenfalls einen nötigen Schritt

440* **Keine solche Zeile**: Lesen Sie `Auto mode server` in `/status` an der Claude Code-Eingabeaufforderung ab:438* **Keine solche Zeile**: Lesen Sie `Auto mode server` in `/status` an der Claude Code-Eingabeaufforderung ab:

441 * **`Enabled`**: Der [Server](#server-side-classifier-review) ist so eingestellt, dass er die Aufrufe dieser Sitzung überprüft.439 * **`Enabled`**: Der [Server](#server-side-classifier-review) ist so eingestellt, dass er die Aufrufe dieser Sitzung überprüft.

442 * **`Disabled`**: Stellen Sie sicher, dass der [Berechtigungsmodus](#switch-permission-modes) auto ist, und lassen Sie Claude dann einen weiteren Befehl ausführen, der nicht nur lesend ist.440 * **`Disabled`**: Diese Prüfung hat Ihr Modell noch nicht getestet. Stellen Sie sicher, dass der [Berechtigungsmodus](#switch-permission-modes) auto ist und keine [Berechtigungsregel](https://code.claude.com/docs/de/permissions.md#manage-permissions) auf `curl` zutrifft, und führen Sie die Prüfung dann mit deaktivierter [Sandbox](https://code.claude.com/docs/de/sandboxing.md) erneut aus.

443 441 

444### Was der Klassifikator standardmäßig blockiert442### Was der Klassifikator standardmäßig blockiert

445 443 

permissions.md +7 −4

Details

338 338 

339#### Was `Read`- und `Edit`-Regeln abdecken339#### Was `Read`- und `Edit`-Regeln abdecken

340 340 

341`Edit`-Regeln gelten für alle integrierten Tools, die Dateien bearbeiten. Claude versucht nach bestem Bemühen, `Read`-Regeln auf alle integrierten Tools anzuwenden, die Dateien lesen, wie Grep und Glob, auf `@file`-Erwähnungen in Ihren Prompts sowie auf den Auswahl- und Kontext geöffneter Dateien, den eine verbundene [IDE](https://code.claude.com/docs/de/vs-code.md#the-built-in-ide-mcp-server) mit Claude teilt.341`Edit`-Regeln gelten für alle integrierten Tools, die Dateien bearbeiten. Claude versucht nach bestem Bemühen, `Read(path)`-deny-Regeln auf alle integrierten Tools anzuwenden, die Dateien lesen, wie Grep und Glob. Denselben Versuch unternimmt es, `Read(path)`-deny-Regeln auf `@file`-Erwähnungen in Ihren Prompts sowie auf die Auswahl und den Kontext geöffneter Dateien anzuwenden, die eine verbundene [IDE](https://code.claude.com/docs/de/vs-code.md#the-built-in-ide-mcp-server) mit Claude teilt.

342 342 

343Eine `Read(path)`-deny-Regel gilt auch für Bildpfade, die Sie in einen Prompt einfügen, und für Verzeichnisse, die Sie per @ erwähnen:343Eine `Read(path)`-deny-Regel gilt auch für Bildpfade, die Sie in einen Prompt einfügen, und für Verzeichnisse, die Sie per @ erwähnen:

344 344 


353>353>

354> Read- und Edit-deny-Regeln gelten für die integrierten Datei-Tools von Claude, für Dateibefehle, die Claude Code in Bash erkennt, wie `cat`, `head`, `tail`, `sed` und `tee`, sowie für die Ziele von Bash-[Umleitungen](#redirections) wie `> file` und `< file`. Sie gelten nicht für einen Befehl, der Dateien liest, ohne sie zu benennen, wie `grep -r pattern .`, ausgeführt aus dem Verzeichnis, das die Datei enthält, oder für beliebige Unterprozesse, die Dateien indirekt lesen oder schreiben, wie ein Python- oder Node-Skript, das Dateien selbst öffnet. Für eine Durchsetzung auf Betriebssystemebene, die allen Prozessen den Zugriff auf einen Pfad verwehrt, [aktivieren Sie die Sandbox](https://code.claude.com/docs/de/sandboxing.md).354> Read- und Edit-deny-Regeln gelten für die integrierten Datei-Tools von Claude, für Dateibefehle, die Claude Code in Bash erkennt, wie `cat`, `head`, `tail`, `sed` und `tee`, sowie für die Ziele von Bash-[Umleitungen](#redirections) wie `> file` und `< file`. Sie gelten nicht für einen Befehl, der Dateien liest, ohne sie zu benennen, wie `grep -r pattern .`, ausgeführt aus dem Verzeichnis, das die Datei enthält, oder für beliebige Unterprozesse, die Dateien indirekt lesen oder schreiben, wie ein Python- oder Node-Skript, das Dateien selbst öffnet. Für eine Durchsetzung auf Betriebssystemebene, die allen Prozessen den Zugriff auf einen Pfad verwehrt, [aktivieren Sie die Sandbox](https://code.claude.com/docs/de/sandboxing.md).

355 355 

356#### `Write(path)`-, `NotebookEdit(path)`- und `Glob(path)`-Regeln gleichen nie ab356#### `Write(path)`-, `Glob(path)`- und `Grep(path)`-Regeln gleichen nicht ab

357 357 

358Claude Code prüft Dateiberechtigungen nur anhand von `Edit(path)`- und `Read(path)`-Regeln. Wenn Sie eine Pfadregel für `Write`, `NotebookEdit`, `Glob` oder das veraltete `MultiEdit` schreiben, akzeptiert Claude Code die Regel, gleicht aber nie einen Lese- oder Bearbeitungsvorgang damit ab.358Claude Code prüft Dateiberechtigungen anhand von `Edit(path)`- und `Read(path)`-Regeln. Es akzeptiert für eines der unten aufgeführten Tools eine Regel mit einem anderen Pfad als `*`, gleicht aber keinen Lese-, Such- oder Bearbeitungsvorgang damit ab. Eine `Grep(docs/**)`-deny-Regel hindert Grep nicht daran, `docs` zu durchsuchen. Schreiben Sie stattdessen die `Edit`- oder `Read`-Regel:

359 359 

360Verwenden Sie `Edit(docs/**)` anstelle von `Write(docs/**)`, `NotebookEdit(docs/**)` oder `MultiEdit(docs/**)` und `Read(docs/**)` anstelle von `Glob(docs/**)`. Um jede Verwendung des Write-, NotebookEdit- oder Glob-Tools unabhängig vom Pfad abzugleichen, schreiben Sie nur den Tool-Namen.360* **`Write`, `NotebookEdit` oder das veraltete `MultiEdit`**: Verwenden Sie `Edit(docs/**)` anstelle von `Write(docs/**)`.

361* **`Glob` oder `Grep`**: Verwenden Sie `Read(docs/**)` anstelle von `Grep(docs/**)`. Als ask-Regel fragt `Read(docs/**)` nach, wenn Claude Grep oder Glob für einen übereinstimmenden Pfad aufruft, aber nicht, wenn eine Suche in einem darüberliegenden Arbeitsverzeichnis übereinstimmende Dateien zurückgibt.

362 

363Um jede Verwendung eines dieser Tools unabhängig vom Pfad abzugleichen, [schreiben Sie nur den Tool-Namen](#match-all-uses-of-a-tool).

361 364 

362#### Wie Pfadmuster abgleichen365#### Wie Pfadmuster abgleichen

363 366 

Details

608 608 

609#### Ein Verzeichnis validieren609#### Ein Verzeichnis validieren

610 610 

611`<path>` ist eine Manifestdatei oder ein Verzeichnis. Bei einem Verzeichnis wählt Claude Code anhand dessen, was es dort findet, aus, was validiert wird:611`<path>` ist eine [Manifestdatei](#validate-a-manifest-file) oder ein Verzeichnis. Bei einem Verzeichnis wählt Claude Code anhand dessen, was es dort findet, aus, was validiert wird:

612 612 

613* `.claude-plugin/marketplace.json`, sofern vorhanden613* `.claude-plugin/marketplace.json`, sofern vorhanden

614* Andernfalls `.claude-plugin/plugin.json`614* Andernfalls `.claude-plugin/plugin.json`


631* **Eine `CLAUDE.md` im Plugin-Stamm**: Bei einem Plugin-Lauf warnt Claude Code außerdem vor einer `CLAUDE.md` im Plugin-Stamm631* **Eine `CLAUDE.md` im Plugin-Stamm**: Bei einem Plugin-Lauf warnt Claude Code außerdem vor einer `CLAUDE.md` im Plugin-Stamm

632* **Plugin-Dateien bei einem Marketplace-Lauf**: Von einem Marketplace-Verzeichnis aus öffnet Claude Code weder die Skill-, Agenten-, Befehls- oder Hook-Dateien von Plugins, die der Marketplace in anderen Verzeichnissen auflistet, noch die MCP-Server-Dateien, die sie bündeln. Um Fehler in diesen Dateien zu finden, validieren Sie jedes Plugin-Verzeichnis632* **Plugin-Dateien bei einem Marketplace-Lauf**: Von einem Marketplace-Verzeichnis aus öffnet Claude Code weder die Skill-, Agenten-, Befehls- oder Hook-Dateien von Plugins, die der Marketplace in anderen Verzeichnissen auflistet, noch die MCP-Server-Dateien, die sie bündeln. Um Fehler in diesen Dateien zu finden, validieren Sie jedes Plugin-Verzeichnis

633 633 

634#### Eine Manifestdatei validieren

635 

636Wenn die Datei weder `plugin.json` noch `marketplace.json` heißt und sich nicht in einem `.claude-plugin`-Verzeichnis befindet, entscheidet Claude Code anhand ihrer Felder, worum es sich handelt. In diesen Fällen validiert es die Datei als Marketplace, andernfalls als Plugin-Manifest:

637 

638* `plugins` ist ein Array

639* `plugins` und `owner` sind beide vorhanden

640* Die Datei hat ein Feld, das nur `marketplace.json` definiert, etwa `owner`, und keines, das nur `plugin.json` definiert, etwa `author`

641 

642Um die Prüfungen selbst zu wählen, benennen Sie die Datei `plugin.json` oder `marketplace.json`. Jede andere Datei in einem `.claude-plugin`-Verzeichnis validiert Claude Code als Plugin-Manifest.

643 

634#### Ausgabe und Exit-Codes644#### Ausgabe und Exit-Codes

635 645 

636Claude Code gibt die validierte Datei, alle Fehler und Warnungen mit ihren Pfaden sowie eine Ergebniszeile aus. Der Exit-Code entspricht dem Ergebnis:646Claude Code gibt die validierte Datei, alle Fehler und Warnungen mit ihren Pfaden sowie eine Ergebniszeile aus. Der Exit-Code entspricht dem Ergebnis:

Details

455 455 

456## Validierungsmeldungen456## Validierungsmeldungen

457 457 

458`claude plugin validate <path>` nimmt den Marketplace-Root oder die Marketplace-Datei selbst. Es druckt Fehler und Warnungen. Für Exit-Codes und `--strict`, siehe [plugin validate](https://code.claude.com/docs/de/plugins/cli-reference.md#plugin-validate).458`claude plugin validate <path>` nimmt den Marketplace-Root oder die Marketplace-Datei selbst. Damit diese Datei [als Marketplace validiert wird](https://code.claude.com/docs/de/plugins/cli-reference.md#validate-a-manifest-file) und nicht als Plugin-Manifest, benennen Sie sie `marketplace.json`. Für Exit-Codes und `--strict`, siehe [plugin validate](https://code.claude.com/docs/de/plugins/cli-reference.md#plugin-validate).

459 459 

460Eine Meldung benennt einen Plugin-Eintrag nach seinem Index, geschrieben als `plugins.1.source` oder `plugins[1].source`.460Eine Meldung benennt einen Plugin-Eintrag nach seinem Index, geschrieben als `plugins.1.source` oder `plugins[1].source`.

461 461 

Details

103Der [Fast-Modus](https://code.claude.com/docs/de/fast-mode.md) und die Standardgeschwindigkeit verwenden getrennte Caches, sodass die nächste Anfrage nach dem Ein- oder Ausschalten des Fast-Modus nicht nutzen kann, was die jeweils andere Geschwindigkeit zwischengespeichert hat. Wenn Sie den Fast-Modus zum ersten Mal in einer Konversation aktivieren, liest die nächste Anfrage die gesamte bisherige Konversation ohne Cache zu [Fast-Modus-Raten](https://code.claude.com/docs/de/fast-mode.md#understand-the-cost-tradeoff). Um diese Kosten gering zu halten, aktivieren Sie ihn am Anfang einer Sitzung.103Der [Fast-Modus](https://code.claude.com/docs/de/fast-mode.md) und die Standardgeschwindigkeit verwenden getrennte Caches, sodass die nächste Anfrage nach dem Ein- oder Ausschalten des Fast-Modus nicht nutzen kann, was die jeweils andere Geschwindigkeit zwischengespeichert hat. Wenn Sie den Fast-Modus zum ersten Mal in einer Konversation aktivieren, liest die nächste Anfrage die gesamte bisherige Konversation ohne Cache zu [Fast-Modus-Raten](https://code.claude.com/docs/de/fast-mode.md#understand-the-cost-tradeoff). Um diese Kosten gering zu halten, aktivieren Sie ihn am Anfang einer Sitzung.

104 104 

105* Wenn Sie ihn aktivieren, während Claude arbeitet, wird dieser Turn mit Standardgeschwindigkeit abgeschlossen, und Sie zahlen für nicht zwischengespeicherte Lesevorgänge bei der ersten Anfrage Ihres nächsten Turns.105* Wenn Sie ihn aktivieren, während Claude arbeitet, wird dieser Turn mit Standardgeschwindigkeit abgeschlossen, und Sie zahlen für nicht zwischengespeicherte Lesevorgänge bei der ersten Anfrage Ihres nächsten Turns.

106* Wenn Ihr aktuelles Modell den Fast-Modus nicht unterstützt, [wechselt das Aktivieren des Fast-Modus auch zu Opus](https://code.claude.com/docs/de/fast-mode.md#toggle-fast-mode). Dieser [Modellwechsel](#switching-models) startet von selbst einen frischen Cache ab der nächsten Anfrage im laufenden Turn.106* Wenn Ihr aktuelles Modell den Fast-Modus nicht unterstützt, [wechselt das Ausführen von `/fast` auch zu Opus](https://code.claude.com/docs/de/fast-mode#toggle-fast-mode). Dieser [Modellwechsel](#switching-models) startet von selbst einen frischen Cache ab der nächsten Anfrage im laufenden Turn.

107 107 

108Jedes spätere Umschalten liest alles ohne Cache, was die Geschwindigkeit, zu der Sie wechseln, nicht zwischengespeichert hat. Geschwindigkeitsänderungen, die Claude Code selbst vornimmt, wie der [Fallback auf Standardgeschwindigkeit](https://code.claude.com/docs/de/fast-mode.md#handle-rate-limits) nach einem Rate-Limit und die spätere Rückkehr zum Fast-Modus, zählen ebenfalls als Umschalten.108Jedes spätere Umschalten liest alles ohne Cache, was die Geschwindigkeit, zu der Sie wechseln, nicht zwischengespeichert hat. Geschwindigkeitsänderungen, die Claude Code selbst vornimmt, wie der [Fallback auf Standardgeschwindigkeit](https://code.claude.com/docs/de/fast-mode.md#handle-rate-limits) nach einem Rate-Limit und die spätere Rückkehr zum Fast-Modus, zählen ebenfalls als Umschalten.

109 109 

Details

147* **This session was ended or archived from another device or app**: Führen Sie `/remote-control` nur aus, wenn Sie die Sitzung zurückhaben möchten. Claude Code öffnet eine archivierte Sitzung erneut.147* **This session was ended or archived from another device or app**: Führen Sie `/remote-control` nur aus, wenn Sie die Sitzung zurückhaben möchten. Claude Code öffnet eine archivierte Sitzung erneut.

148* **The server no longer reports this session**: Sie wurde möglicherweise von einem anderen Gerät oder einer anderen App aus gelöscht.148* **The server no longer reports this session**: Sie wurde möglicherweise von einem anderen Gerät oder einer anderen App aus gelöscht.

149 149 

150Wenn `/remote-control` einen Dialog mit der Meldung `Remote Control isn't connected.` öffnet, folgen Sie dem Schritt, den der Dialog angibt, etwa `/login` ausführen oder **Continue** auswählen und es erneut versuchen.

151 

150### Von einem anderen Gerät aus verbinden152### Von einem anderen Gerät aus verbinden

151 153 

152Sobald eine Remote-Control-Sitzung aktiv ist, haben Sie mehrere Möglichkeiten, sich von einem anderen Gerät aus zu verbinden:154Sobald eine Remote-Control-Sitzung aktiv ist, haben Sie mehrere Möglichkeiten, sich von einem anderen Gerät aus zu verbinden:


318 320 

319Wenn Remote Control aktiv ist, kann Claude Push-Benachrichtigungen an Ihr Telefon senden.321Wenn Remote Control aktiv ist, kann Claude Push-Benachrichtigungen an Ihr Telefon senden.

320 322 

321Claude entscheidet, wann eine Push-Benachrichtigung gesendet wird. Normalerweise sendet er eine, wenn eine lange laufende Aufgabe abgeschlossen ist oder wenn er eine Entscheidung von Ihnen benötigt, um fortzufahren. Sie können auch eine Push-Benachrichtigung in Ihrer Eingabeaufforderung anfordern, zum Beispiel `notify me when the tests finish`. Über die beiden Ein-/Aus-Schalter unten hinaus gibt es keine Konfiguration pro Ereignis.323Eine Push-Benachrichtigung kann eintreffen, wenn eine lange laufende Aufgabe abgeschlossen ist oder wenn Claude eine Entscheidung von Ihnen benötigt. Sie können auch eine Push-Benachrichtigung in Ihrem Prompt anfordern, zum Beispiel `notify me when the tests finish`. Über die beiden Ein-/Aus-Schalter unten hinaus gibt es keine Konfiguration pro Ereignis.

322 324 

323So richten Sie Mobile Push-Benachrichtigungen ein:325So richten Sie Mobile Push-Benachrichtigungen ein:

324 326 

Details

25| [Dev container](#dev-containers) | Vollständige Entwicklungsumgebung | Ja | Mittel |25| [Dev container](#dev-containers) | Vollständige Entwicklungsumgebung | Ja | Mittel |

26| [Custom container](#custom-container) | Vollständige Entwicklungsumgebung | Ja | Mittel bis hoch |26| [Custom container](#custom-container) | Vollständige Entwicklungsumgebung | Ja | Mittel bis hoch |

27| [Virtual machine](#virtual-machine) | Vollständiges Betriebssystem | Nein | Hoch |27| [Virtual machine](#virtual-machine) | Vollständiges Betriebssystem | Nein | Hoch |

28| [Cloud sessions](#cloud-sessions) | Vollständiges Betriebssystem, gehostet von Anthropic | Nein | Keine; erfordert ein Claude-Abonnement und ein verbundenes GitHub-Konto, es sei denn, Sie starten mit `claude --cloud` |28| [Cloud-Sitzungen](#cloud-sessions) | Vollständiges Betriebssystem, gehostet von Anthropic | Nein | Keiner; erfordert ein Claude-Abonnement sowie ein verbundenes GitHub-Konto, um ein GitHub-Repository zu klonen |

29 29 

30Das [Sandboxed Bash tool](https://code.claude.com/docs/de/sandboxing.md) ist in Claude Code integriert und beschränkt nur Bash-Befehle. Integrierte Datei-Tools, MCP-Server und Hooks werden weiterhin direkt auf Ihrem Host ausgeführt. Jeder andere Ansatz in der Tabelle platziert den gesamten Claude Code-Prozess innerhalb der Isolierungsgrenze, sodass auch Datei-Tools, MCP-Server und Hooks eingeschränkt sind.30Das [Sandboxed Bash tool](https://code.claude.com/docs/de/sandboxing.md) ist in Claude Code integriert und beschränkt nur Bash-Befehle. Integrierte Datei-Tools, MCP-Server und Hooks werden weiterhin direkt auf Ihrem Host ausgeführt. Jeder andere Ansatz in der Tabelle platziert den gesamten Claude Code-Prozess innerhalb der Isolierungsgrenze, sodass auch Datei-Tools, MCP-Server und Hooks eingeschränkt sind.

31 31 


46| MCP-Server und Hooks sowie Bash isolieren, ohne Docker | Die Sandbox Runtime |46| MCP-Server und Hooks sowie Bash isolieren, ohne Docker | Die Sandbox Runtime |

47| An einem nicht vertrauenswürdigen Repository arbeiten | Eine dedizierte virtuelle Maschine oder [Claude Code on the web](https://code.claude.com/docs/de/claude-code-on-the-web.md), wenn Sie ein Claude-Abonnement haben; GitHub ist nicht erforderlich, wenn Sie mit `claude --cloud` starten |47| An einem nicht vertrauenswürdigen Repository arbeiten | Eine dedizierte virtuelle Maschine oder [Claude Code on the web](https://code.claude.com/docs/de/claude-code-on-the-web.md), wenn Sie ein Claude-Abonnement haben; GitHub ist nicht erforderlich, wenn Sie mit `claude --cloud` starten |

48| Eine Sandbox-Umgebung über ein Team standardisieren | Der vorkonfigurierte [Dev Container](https://code.claude.com/docs/de/devcontainer.md), kopiert in Ihr Repository |48| Eine Sandbox-Umgebung über ein Team standardisieren | Der vorkonfigurierte [Dev Container](https://code.claude.com/docs/de/devcontainer.md), kopiert in Ihr Repository |

49| Claude Code von einem Gerät ohne lokales Setup verwenden | Eine [Cloud-Sitzung](https://code.claude.com/docs/de/claude-code-on-the-web.md), die ein Claude-Abonnement und ein verbundenes GitHub-Konto erfordert |49| Claude Code von einem Gerät ohne lokales Setup verwenden | Eine [Cloud-Sitzung](https://code.claude.com/docs/de/claude-code-on-the-web.md), die ein Claude-Abonnement erfordert, sowie ein verbundenes GitHub-Konto, um ein GitHub-Repository zu klonen |

50| Isolation für jeden Entwickler in Ihrer Organisation erfordern | [Isolation über eine Organisation erzwingen](#enforce-isolation-across-an-organization) |50| Isolation für jeden Entwickler in Ihrer Organisation erfordern | [Isolation über eine Organisation erzwingen](#enforce-isolation-across-an-organization) |

51| Auf einem nativen Windows-Host arbeiten | Ein Container oder VM, oder führen Sie die Bash-Sandbox in WSL2 aus |51| Auf einem nativen Windows-Host arbeiten | Ein Container oder VM, oder führen Sie die Bash-Sandbox in WSL2 aus |

52 52 


165 165 

166Eine [Cloud-Sitzung](https://code.claude.com/docs/de/claude-code-on-the-web.md) wird in einer isolierten, von Anthropic verwalteten virtuellen Maschine ausgeführt. Ein Netzwerk-Proxy erzwingt eine Standard-Allowlist, und ein separater Proxy hält Ihren GitHub-Token außerhalb der Sandbox, während er scoped Anmeldedaten für Repository-Zugriff darin ausstellt. Sitzungen, die Ihre Organisation an eine [selbstgehostete Umgebung](https://code.claude.com/docs/de/self-hosted-environments) leitet, werden stattdessen auf einer Infrastruktur ausgeführt, die Sie bereitstellen, wobei Isolation, Egress-Kontrolle und Git-Anmeldedaten die Verantwortung Ihrer Bereitstellung sind.166Eine [Cloud-Sitzung](https://code.claude.com/docs/de/claude-code-on-the-web.md) wird in einer isolierten, von Anthropic verwalteten virtuellen Maschine ausgeführt. Ein Netzwerk-Proxy erzwingt eine Standard-Allowlist, und ein separater Proxy hält Ihren GitHub-Token außerhalb der Sandbox, während er scoped Anmeldedaten für Repository-Zugriff darin ausstellt. Sitzungen, die Ihre Organisation an eine [selbstgehostete Umgebung](https://code.claude.com/docs/de/self-hosted-environments) leitet, werden stattdessen auf einer Infrastruktur ausgeführt, die Sie bereitstellen, wobei Isolation, Egress-Kontrolle und Git-Anmeldedaten die Verantwortung Ihrer Bereitstellung sind.

167 167 

168Verwenden Sie diesen Ansatz, wenn Sie vollständige VM-Isolation ohne Bereitstellung von Infrastruktur selbst möchten, oder wenn Sie Aufgaben von einem Gerät delegieren, das keine lokale Entwicklungsumgebung hat. Es erfordert ein Claude-Abonnement. Wenn Sie nicht über die CLI starten, benötigen Sie auch ein verbundenes GitHub-Konto, damit die Sandbox Ihr Repository klonen kann. Wenn Sie über die CLI mit `--cloud` starten, kann Claude Code stattdessen [Ihr lokales Repository bündeln und hochladen](https://code.claude.com/docs/de/claude-code-on-the-web.md#send-local-repositories-without-github). Siehe [Claude Code in der Cloud verwenden](https://code.claude.com/docs/de/claude-code-on-the-web.md) für Planverfügbarkeit und GitHub-Authentifizierungsoptionen.168Verwenden Sie diesen Ansatz, wenn Sie vollständige VM-Isolation ohne Bereitstellung von Infrastruktur selbst möchten, oder wenn Sie Aufgaben von einem Gerät delegieren, das keine lokale Entwicklungsumgebung hat. Voraussetzungen:

169 

170* **Abonnement**: ein Claude-Abonnement

171* **GitHub**: ein verbundenes GitHub-Konto, um in einem GitHub-Repository zu arbeiten. Wenn Sie über die CLI mit `--cloud` starten, benötigen Sie keines, sofern Claude Code [Ihr lokales Repository bündelt und hochlädt](https://code.claude.com/docs/de/claude-code-on-the-web.md#send-local-repositories-without-github)

172 

173Siehe [Claude Code in der Cloud verwenden](https://code.claude.com/docs/de/claude-code-on-the-web.md) für Planverfügbarkeit und GitHub-Authentifizierungsoptionen.

169 174 

170## Isolation über eine Organisation erzwingen175## Isolation über eine Organisation erzwingen

171 176 

Details

46| `CLAUDE_CODE_REMOTE_SLACK_CHANNEL_ID` | Für eine Claude Tag-Sitzung die ID des Slack-Channels oder der Direktnachricht, die die Sitzung bedient oder in der ihr Thread liegt, etwa `C0123ABCDE`. Ein Slack-Zeitstempel identifiziert eine Nachricht innerhalb eines Channels; erfassen Sie diese ID daher zusammen mit `CLAUDE_CODE_REMOTE_SLACK_THREAD_TS`. Für andere Sitzungen nicht gesetzt; kann auch bei einer Claude Tag-Sitzung nicht gesetzt sein. |46| `CLAUDE_CODE_REMOTE_SLACK_CHANNEL_ID` | Für eine Claude Tag-Sitzung die ID des Slack-Channels oder der Direktnachricht, die die Sitzung bedient oder in der ihr Thread liegt, etwa `C0123ABCDE`. Ein Slack-Zeitstempel identifiziert eine Nachricht innerhalb eines Channels; erfassen Sie diese ID daher zusammen mit `CLAUDE_CODE_REMOTE_SLACK_THREAD_TS`. Für andere Sitzungen nicht gesetzt; kann auch bei einer Claude Tag-Sitzung nicht gesetzt sein. |

47| `CLAUDE_SESSION_INGRESS_TOKEN_FILE` | Absoluter Pfad zu einer pro-Sitzungs-Datei, die das aktuelle Sitzungs-JWT enthält, das über Token-Aktualisierungen hinweg aktuell gehalten wird. Shell-Unterprozesse lesen es für ihren `Authorization`-Header beim Herunterladen von Anhängen, die der Benutzer zur Sitzung hinzugefügt hat. `exec` bewahrt die Variable automatisch; ein Wrapper, der die Umgebung des Kindes neu erstellt, muss die Variable übertragen, oder Anhang-Downloads funktionieren stillschweigend nicht mehr. |47| `CLAUDE_SESSION_INGRESS_TOKEN_FILE` | Absoluter Pfad zu einer pro-Sitzungs-Datei, die das aktuelle Sitzungs-JWT enthält, das über Token-Aktualisierungen hinweg aktuell gehalten wird. Shell-Unterprozesse lesen es für ihren `Authorization`-Header beim Herunterladen von Anhängen, die der Benutzer zur Sitzung hinzugefügt hat. `exec` bewahrt die Variable automatisch; ein Wrapper, der die Umgebung des Kindes neu erstellt, muss die Variable übertragen, oder Anhang-Downloads funktionieren stillschweigend nicht mehr. |

48| `CLAUDE_CONFIG_DIR` | Pro-Sitzungs-Claude-Konfigurationsverzeichnis, geschrieben beim Sitzungsstart aus dem Snapshot der Konfiguration des Runner-Hosts, den der Runner beim Startup erfasst; siehe [Berechtigungen und Tool-Genehmigung](#permissions-and-tool-approval). Schreibvorgänge hier sind auf diese Sitzung isoliert. Das Verzeichnis bleibt unter `<base-dir>/_sessions/` nach dem Sitzungsende, es sei denn, Sie starten den Runner mit [`--remove-session-state`](https://code.claude.com/docs/de/self-hosted-environments-reference#runner-cli-flags); siehe [Einen vorgewärmten Checkout wiederverwenden](https://code.claude.com/docs/de/self-hosted-environments-deploy.md#reuse-a-pre-warmed-checkout). |48| `CLAUDE_CONFIG_DIR` | Pro-Sitzungs-Claude-Konfigurationsverzeichnis, geschrieben beim Sitzungsstart aus dem Snapshot der Konfiguration des Runner-Hosts, den der Runner beim Startup erfasst; siehe [Berechtigungen und Tool-Genehmigung](#permissions-and-tool-approval). Schreibvorgänge hier sind auf diese Sitzung isoliert. Das Verzeichnis bleibt unter `<base-dir>/_sessions/` nach dem Sitzungsende, es sei denn, Sie starten den Runner mit [`--remove-session-state`](https://code.claude.com/docs/de/self-hosted-environments-reference#runner-cli-flags); siehe [Einen vorgewärmten Checkout wiederverwenden](https://code.claude.com/docs/de/self-hosted-environments-deploy.md#reuse-a-pre-warmed-checkout). |

49| `CLAUDE_CODE_REMOTE_MCP_CONFIG` | Pfad zu einer Datei in `CLAUDE_CONFIG_DIR`, die die MCP-Server-Definitionen enthält, die die Kontrollebene von Anthropic für diese Sitzung bereitgestellt hat. Wenn Ihr Wrapper die Umgebung des Kindes neu erstellt, übertragen Sie diese Variable. Ohne sie beendet das Kind, wenn die Kontrollebene die bereitgestellten Server aktualisiert, jeden stdio-, HTTP- oder SSE-Server, den Ihr Wrapper mit [`--mcp-config`](https://code.claude.com/docs/de/cli-reference#cli-flags) hinzufügt und der nicht in der Aktualisierung enthalten ist. Erfordert Claude Code v2.1.299 oder später. |49| `CLAUDE_CODE_REMOTE_MCP_CONFIG` | Pfad zu einer Datei in `CLAUDE_CONFIG_DIR`, die die von der Kontrollebene bereitgestellten MCP-Server enthält. Wenn Ihr Wrapper die Umgebung des Kindes neu erstellt, übertragen Sie diese Variable, [`CLAUDE_CODE_REMOTE`](https://code.claude.com/docs/de/env-vars#variables) und `CLAUDE_CODE_ENVIRONMENT_KIND` unverändert; der Runner setzt alle drei. Wenn `CLAUDE_CODE_REMOTE` ankommt, diese Variable oder `CLAUDE_CODE_ENVIRONMENT_KIND` jedoch nicht, beendet das Kind stdio-, HTTP- und SSE-Server, die Ihr Wrapper mit [`--mcp-config`](https://code.claude.com/docs/de/cli-reference#cli-flags) hinzufügt und die in einer Aktualisierung der bereitgestellten Server fehlen. Erfordert Claude Code v2.1.299 oder später. |

50| `ANTHROPIC_BASE_URL` | Die API-Basis-URL, die das Kind verwendet, bereitgestellt von der Kontrollebene pro Sitzung und normalerweise `https://api.anthropic.com`. Überschreiben Sie sie nicht: Die Inferenz-Anmeldedaten der Sitzung sind ein von Anthropic ausgegebenes OAuth-Token, das andere Anbieter nicht akzeptieren. |50| `ANTHROPIC_BASE_URL` | Die API-Basis-URL, die das Kind verwendet, bereitgestellt von der Kontrollebene pro Sitzung und normalerweise `https://api.anthropic.com`. Überschreiben Sie sie nicht: Die Inferenz-Anmeldedaten der Sitzung sind ein von Anthropic ausgegebenes OAuth-Token, das andere Anbieter nicht akzeptieren. |

51| `CLAUDE_CODE_OAUTH_TOKEN` | Das kurzlebige OAuth-Zugangstoken, das das Kind für Modell-Inferenz verwendet, mit einer Lebensdauer von etwa 30 Minuten. Der Runner prägt es vor Ablauf neu und liefert die Rotation über stdin des Kindes, daher sieht ein Wrapper, der [stdin nicht angehängt hält](#keep-stdin-and-file-descriptor-3-attached), nur den Anfangswert. Verlassen Sie sich nicht auf die IP-Allowlist Ihrer Organisation, um die Verwendung dieses Tokens zu begrenzen: Behandeln Sie es als Bearer-Anmeldedaten, die etwa 30 Minuten lang verwendbar bleiben, wenn sie durchsickern, und protokollieren Sie es nicht, schreiben Sie es nicht auf die Festplatte und leiten Sie es nicht außerhalb des Sitzungs-Containers weiter. |51| `CLAUDE_CODE_OAUTH_TOKEN` | Das kurzlebige OAuth-Zugangstoken, das das Kind für Modell-Inferenz verwendet, mit einer Lebensdauer von etwa 30 Minuten. Der Runner prägt es vor Ablauf neu und liefert die Rotation über stdin des Kindes, daher sieht ein Wrapper, der [stdin nicht angehängt hält](#keep-stdin-and-file-descriptor-3-attached), nur den Anfangswert. Verlassen Sie sich nicht auf die IP-Allowlist Ihrer Organisation, um die Verwendung dieses Tokens zu begrenzen: Behandeln Sie es als Bearer-Anmeldedaten, die etwa 30 Minuten lang verwendbar bleiben, wenn sie durchsickern, und protokollieren Sie es nicht, schreiben Sie es nicht auf die Festplatte und leiten Sie es nicht außerhalb des Sitzungs-Containers weiter. |

52| `CLAUDE_RUNNER_ALIVE_EVERY_MS` | Der Runner legt fest, wie oft (in Millisekunden) das Kind meldet, dass es aktiv ist, wenn ein [Turn beginnt, bevor das Kind initialisiert ist](https://code.claude.com/docs/de/self-hosted-environments-reference.md#session-startup-timeout). Wenn Ihr Wrapper die Umgebung des Kindes neu erstellt, übertragen Sie diese Variable, sonst kann der Runner die Sitzung während dieses Turns freigeben und `no child output for <n> — releasing` protokollieren. Erfordert v2.1.309 oder später auf Runner und Kind. |52| `CLAUDE_RUNNER_ALIVE_EVERY_MS` | Der Runner legt fest, wie oft (in Millisekunden) das Kind meldet, dass es aktiv ist, wenn ein [Turn beginnt, bevor das Kind initialisiert ist](https://code.claude.com/docs/de/self-hosted-environments-reference.md#session-startup-timeout). Wenn Ihr Wrapper die Umgebung des Kindes neu erstellt, übertragen Sie diese Variable, sonst kann der Runner die Sitzung während dieses Turns freigeben und `no child output for <n> — releasing` protokollieren. Erfordert v2.1.309 oder später auf Runner und Kind. |


329| `CLAUDE_RUNNER_REPO_SOURCES` | JSON-Array von `{url, revision}` für alle Git-Quellen der Sitzung, für Hooks, die auf einem sekundären Repository routen. Leer, wenn es keine Quellen gibt. |329| `CLAUDE_RUNNER_REPO_SOURCES` | JSON-Array von `{url, revision}` für alle Git-Quellen der Sitzung, für Hooks, die auf einem sekundären Repository routen. Leer, wenn es keine Quellen gibt. |

330| `CLAUDE_RUNNER_CORRELATION_ID` | Die Korrelations-ID, die bei der Sitzungserstellung bereitgestellt wurde, echoed zurück, damit der Hook diese Arbeitsorder der Anfrage zuordnen kann, die die Sitzung erstellt hat. Leer, wenn die Sitzung keine hat. |330| `CLAUDE_RUNNER_CORRELATION_ID` | Die Korrelations-ID, die bei der Sitzungserstellung bereitgestellt wurde, echoed zurück, damit der Hook diese Arbeitsorder der Anfrage zuordnen kann, die die Sitzung erstellt hat. Leer, wenn die Sitzung keine hat. |

331| `CLAUDE_RUNNER_CLIENT_PLATFORM` | Die Client-Oberfläche, die die Sitzung erstellt hat, wie `web_claude_ai`, `desktop_app`, `ios` oder `scheduled_trigger`, für Adoptionsanalysen. Nicht gesetzt, wenn die Sitzung keine aufgezeichnete oder erkannte Oberfläche hat, und für Pre-Warming-Anfragen; überprüfen Sie sie mit `[ -n "${CLAUDE_RUNNER_CLIENT_PLATFORM:-}" ]`, was unter `set -u` sicher bleibt. |331| `CLAUDE_RUNNER_CLIENT_PLATFORM` | Die Client-Oberfläche, die die Sitzung erstellt hat, wie `web_claude_ai`, `desktop_app`, `ios` oder `scheduled_trigger`, für Adoptionsanalysen. Nicht gesetzt, wenn die Sitzung keine aufgezeichnete oder erkannte Oberfläche hat, und für Pre-Warming-Anfragen; überprüfen Sie sie mit `[ -n "${CLAUDE_RUNNER_CLIENT_PLATFORM:-}" ]`, was unter `set -u` sicher bleibt. |

332| `CLAUDE_RUNNER_SPAWN_REASON` | [Warum Anthropic diese Spawn-Anfrage gesendet hat](#find-out-why-a-spawn-request-was-sent), etwa `runner_lost` oder `resumed`. Nicht gesetzt, wenn die Anfrage keinen wohlgeformten Grund enthält; lesen Sie die Variable daher als `"${CLAUDE_RUNNER_SPAWN_REASON:-}"`. Erfordert Claude Code v2.1.318 oder höher auf dem Orchestrator |

332 333 

333Der gespawnte Runner registriert sich mit der Arbeitsorder anstelle des Umgebungsgeheimnisses:334Der gespawnte Runner registriert sich mit der Arbeitsorder anstelle des Umgebungsgeheimnisses:

334 335 


828 829 

829Eine selbstgehostete Sitzung hat kein angeschlossenes Terminal, daher blockiert eine unbeantwortete Berechtigungsabfrage den Turn, bis der Benutzer in der UI antwortet. Die Steuerungsebene von Anthropic sendet die Tool-Liste und die Berechtigungsregeln jeder Sitzung mit der Arbeits-Payload; die Standardkonfiguration genehmigt alltägliche Tool-Aufrufe vorab, einschließlich `Bash`, und Cloud-Sitzungen [genehmigen Dateibearbeitungen unabhängig vom Modus vorab](https://code.claude.com/docs/de/permission-modes.md#switch-permission-modes). Bei einem Aufruf, den nichts vorab genehmigt, wird über die Sitzungs-UI nachgefragt.830Eine selbstgehostete Sitzung hat kein angeschlossenes Terminal, daher blockiert eine unbeantwortete Berechtigungsabfrage den Turn, bis der Benutzer in der UI antwortet. Die Steuerungsebene von Anthropic sendet die Tool-Liste und die Berechtigungsregeln jeder Sitzung mit der Arbeits-Payload; die Standardkonfiguration genehmigt alltägliche Tool-Aufrufe vorab, einschließlich `Bash`, und Cloud-Sitzungen [genehmigen Dateibearbeitungen unabhängig vom Modus vorab](https://code.claude.com/docs/de/permission-modes.md#switch-permission-modes). Bei einem Aufruf, den nichts vorab genehmigt, wird über die Sitzungs-UI nachgefragt.

830 831 

832### Einen Berechtigungsmodus in Ihrem Wrapper festlegen

833 

831> [!NOTE]834> [!NOTE]

832>835>

833> Legen Sie den Auto-Modus nur für eine Umgebung fest, deren Sitzungscontainer mit [standardmäßig gesperrtem ausgehendem Netzwerkverkehr](https://code.claude.com/docs/de/self-hosted-environments-deploy.md#default-deny-egress) und den übrigen Maßnahmen aus dem [Abschnitt zur Härtung](https://code.claude.com/docs/de/self-hosted-environments-deploy.md#harden-your-deployment) laufen. Alltägliche Tool-Aufrufe, einschließlich `Bash`-Netzwerkanfragen, werden sowohl mit dem standardmäßig vorab genehmigten Tool-Set als auch im Auto-Modus ohne menschliche Kontrolle ausgeführt, daher ist die Netzwerkgrenze das, was einschränkt, wohin diese Aufrufe gelangen können.836> Legen Sie den Auto-Modus nur für eine Umgebung fest, deren Sitzungscontainer mit [standardmäßig gesperrtem ausgehendem Netzwerkverkehr](https://code.claude.com/docs/de/self-hosted-environments-deploy.md#default-deny-egress) und den übrigen Maßnahmen aus dem [Abschnitt zur Härtung](https://code.claude.com/docs/de/self-hosted-environments-deploy.md#harden-your-deployment) laufen. Alltägliche Tool-Aufrufe, einschließlich `Bash`-Netzwerkanfragen, werden sowohl mit dem standardmäßig vorab genehmigten Tool-Set als auch im Auto-Modus ohne menschliche Kontrolle ausgeführt, daher ist die Netzwerkgrenze das, was einschränkt, wohin diese Aufrufe gelangen können.

834 837 

835Um Berechtigungsabfragen unabhängig davon, was die Steuerungsebene sendet, auf ein Minimum zu reduzieren, legen Sie den [Auto-Modus](https://code.claude.com/docs/de/permission-modes.md#eliminate-prompts-with-auto-mode) in Ihrem Wrapper-Skript oder [`command`-Hook](#command) fest. Im Auto-Modus laufen Sitzungen ohne alltägliche Berechtigungsabfragen: Ein separates Klassifikatormodell prüft Aktionen, bevor sie ausgeführt werden, und blockiert diejenigen, die es ablehnt, und explizite ask-Regeln erzwingen weiterhin eine Abfrage; die Seite zu den Berechtigungsmodi beschreibt, was der Klassifikator prüft. Der Runner hängt serverseitig berechnete Flags an, bevor er den Wrapper aufruft, und bei Flags mit einem einzelnen Wert wie `--permission-mode` berücksichtigt der Parser das letzte Vorkommen, sodass ein Flag, das Sie nach `"$@"` anhängen, den vom Server gesendeten Wert überschreibt:838Um Sitzungen im [Auto-Modus](https://code.claude.com/docs/de/permission-modes.md#eliminate-prompts-with-auto-mode) zu starten, bis claude.ai/code oder ein anderer Client einen Berechtigungsmodus für sie festlegt, legen Sie ihn in Ihrem Wrapper-Skript oder [`command`-Hook](#command) fest. Der Runner ruft den Wrapper mit seinen eigenen Flags als Argumenten auf, und Claude Code wendet das letzte `--permission-mode` in der Befehlszeile an, hängen Sie Ihres daher nach `"$@"` an:

836 839 

837```bash theme={null}840```bash theme={null}

838#!/bin/bash841#!/bin/bash

839exec "$CLAUDE_RUNNER_CLAUDE_BIN" "$@" --permission-mode auto842exec "$CLAUDE_RUNNER_CLAUDE_BIN" "$@" --permission-mode auto

840```843```

841 844 

842Um stattdessen bestimmte Tools vorab zu genehmigen, hängen Sie `--allowed-tools` mit Ihren Regeln an, zum Beispiel `--allowed-tools "Bash(bazel *) Bash(yarn *) mcp__internal__*"`. Listen-Flags wie `--allowed-tools` und `--disallowed-tools` werden über mehrere Vorkommen hinweg kumuliert, statt sich zu überschreiben, sodass Ihre Regeln zusätzlich zu allen Regeln gelten, die die Steuerungsebene sendet. Zum Einschränken hängen Sie `--disallowed-tools` an, das Tools verweigert, auch wenn eine andere Regel sie zulässt.845Sobald ein Client einen Modus festlegt, gilt Ihr angehängter Modus nicht mehr, auch nicht, nachdem die Sitzung auf dem Runner neu gestartet wurde. claude.ai/code beispielsweise legt mit der ersten Nachricht der Sitzung einen Modus fest, wenn das Modus-Dropdown Auto anzeigt oder wenn dort jemand einen Modus ausgewählt hat.

846 

847Im Auto-Modus prüft ein separates Klassifikatormodell Aktionen, bevor sie ausgeführt werden, und blockiert diejenigen, die es ablehnt. Eine explizite ask-Regel erzwingt weiterhin eine Abfrage. Ein Aufruf, den eine [deny-Regel](https://code.claude.com/docs/de/permissions.md#manage-permissions) blockiert, bleibt in jedem Modus blockiert.

848 

849### Bestimmte Tools vorab genehmigen

850 

851Um bestimmte Tools vorab zu genehmigen, hängen Sie in Ihrem Wrapper-Skript `--allowed-tools` mit Ihren Regeln nach `"$@"` an, zum Beispiel `--allowed-tools "Bash(bazel *) Bash(yarn *) mcp__internal__*"`. Listen-Flags wie `--allowed-tools` und `--disallowed-tools` werden über mehrere Vorkommen hinweg kumuliert, statt sich zu überschreiben, sodass Ihre Regeln zusätzlich zu allen Regeln gelten, die die Steuerungsebene sendet. Zum Einschränken hängen Sie `--disallowed-tools` an, das Tools verweigert, auch wenn eine andere Regel sie zulässt.

843 852 

844### Wie die Konfiguration jeder Sitzung zusammengestellt wird853### Wie die Konfiguration jeder Sitzung zusammengestellt wird

845 854 

Details

195* Ein zwischengespeicherter Wert für [`prependPlugins`](https://code.claude.com/docs/de/settings-reference#prependplugins), [`appendPlugins`](https://code.claude.com/docs/de/settings-reference#appendplugins) oder [`enabledPlugins`](https://code.claude.com/docs/de/settings-reference#enabledplugins) kann den integrierten Wächter erst entfernen, umpositionieren oder ausschalten, wenn der Abruf der Sitzung die Payload bestätigt195* Ein zwischengespeicherter Wert für [`prependPlugins`](https://code.claude.com/docs/de/settings-reference#prependplugins), [`appendPlugins`](https://code.claude.com/docs/de/settings-reference#appendplugins) oder [`enabledPlugins`](https://code.claude.com/docs/de/settings-reference#enabledplugins) kann den integrierten Wächter erst entfernen, umpositionieren oder ausschalten, wenn der Abruf der Sitzung die Payload bestätigt

196* Auf einem Rechner, auf dem eine [endpunktgesteuerte Quelle](https://code.claude.com/docs/de/managed-settings.md#choose-a-delivery-mechanism) eigene Plugins auflistet oder aktiviert, gilt ein Plugin, das nur eine zwischengespeicherte Liste aktiviert, als [Plugin des Benutzers](https://code.claude.com/docs/de/plugins/mods/admin.md#install-your-organizations-mods) und nicht als Plugin Ihrer Organisation, bis der Abruf die Payload bestätigt196* Auf einem Rechner, auf dem eine [endpunktgesteuerte Quelle](https://code.claude.com/docs/de/managed-settings.md#choose-a-delivery-mechanism) eigene Plugins auflistet oder aktiviert, gilt ein Plugin, das nur eine zwischengespeicherte Liste aktiviert, als [Plugin des Benutzers](https://code.claude.com/docs/de/plugins/mods/admin.md#install-your-organizations-mods) und nicht als Plugin Ihrer Organisation, bis der Abruf die Payload bestätigt

197* Claude Code ruft im Hintergrund aktuelle Einstellungen ab197* Claude Code ruft im Hintergrund aktuelle Einstellungen ab

198* Wenn der Anbieter einer Sitzung nicht auf der zwischengespeicherten Liste [`allowedProviders`](https://code.claude.com/docs/de/settings-reference#allowedproviders) steht, kann Claude Code auf diesen Abruf warten und erneut prüfen, bevor es die Sitzung ablehnt. Schlägt der Abruf fehl, wird die Sitzung abgelehnt

198* Zwischengespeicherte Einstellungen bleiben bei Netzwerkausfällen erhalten. Schlägt der Abruf beim Start fehl, warnt Claude Code in interaktiven Sitzungen und im Code-Tab, dass die zwischengespeicherte Richtlinie gilt199* Zwischengespeicherte Einstellungen bleiben bei Netzwerkausfällen erhalten. Schlägt der Abruf beim Start fehl, warnt Claude Code in interaktiven Sitzungen und im Code-Tab, dass die zwischengespeicherte Richtlinie gilt

199* Bis ein Abruf erfolgreich ist, bleiben die beim Start zurückgehaltenen Werte zurückgehalten200* Bis ein Abruf erfolgreich ist, bleiben die beim Start zurückgehaltenen Werte zurückgehalten

200 201 

Details

111| [`footerLinksRegexes`](#footerlinksregexes) | Macht Issue- oder Review-IDs in der Ausgabe zu [anklickbaren Links](https://code.claude.com/docs/de/statusline.md#clickable-links) unterhalb des Eingabefelds | Oberfläche und Terminal | Benutzer oder verwaltet |111| [`footerLinksRegexes`](#footerlinksregexes) | Macht Issue- oder Review-IDs in der Ausgabe zu [anklickbaren Links](https://code.claude.com/docs/de/statusline.md#clickable-links) unterhalb des Eingabefelds | Oberfläche und Terminal | Benutzer oder verwaltet |

112| [`forceLoginGatewayUrl`](#forcelogingatewayurl) | Legt die [Gateway-URL](https://code.claude.com/docs/de/claude-apps-gateway#set-the-gateway-url) fest, mit der sich der Anmeldebildschirm verbindet | Authentifizierung und Anbieter | Benutzer oder verwaltet |112| [`forceLoginGatewayUrl`](#forcelogingatewayurl) | Legt die [Gateway-URL](https://code.claude.com/docs/de/claude-apps-gateway#set-the-gateway-url) fest, mit der sich der Anmeldebildschirm verbindet | Authentifizierung und Anbieter | Benutzer oder verwaltet |

113| [`forceLoginMethod`](#forceloginmethod) | [Beschränkt die Anmeldung](https://code.claude.com/docs/de/authentication.md#restrict-login-to-your-organization) auf claude.ai, Claude Console oder ein [Cloud-Gateway](https://code.claude.com/docs/de/claude-apps-gateway) | Authentifizierung und Anbieter | Jede Datei |113| [`forceLoginMethod`](#forceloginmethod) | [Beschränkt die Anmeldung](https://code.claude.com/docs/de/authentication.md#restrict-login-to-your-organization) auf claude.ai, Claude Console oder ein [Cloud-Gateway](https://code.claude.com/docs/de/claude-apps-gateway) | Authentifizierung und Anbieter | Jede Datei |

114| [`forceLoginOrgUUID`](#forceloginorguuid) | [Bindet claude.ai-Anmeldungen an Ihre Organisation](https://code.claude.com/docs/de/authentication.md#restrict-login-to-your-organization); nur eine verwaltete Quelle setzt dies durch | Authentifizierung und Anbieter | Jede Datei |114| [`forceLoginOrgUUID`](#forceloginorguuid) | [Bindet claude.ai-Anmeldungen an Ihre Organisation](https://code.claude.com/docs/de/authentication.md#restrict-login-to-your-organization); nur verwaltete Einstellungen setzen dies durch | Authentifizierung und Anbieter | Jede Datei |

115| [`forceRemoteSettingsRefresh`](#forceremotesettingsrefresh) | Blockiert den Start, bis [serververwaltete Einstellungen](https://code.claude.com/docs/de/server-managed-settings.md) neu abgerufen wurden | Enterprise und verwaltete Einstellungen | Verwaltet |115| [`forceRemoteSettingsRefresh`](#forceremotesettingsrefresh) | Blockiert den Start, bis [serververwaltete Einstellungen](https://code.claude.com/docs/de/server-managed-settings.md) neu abgerufen wurden | Enterprise und verwaltete Einstellungen | Verwaltet |

116| [`gatewayInternalNetworks`](#gatewayinternalnetworks) | Lässt `/login` ein [Cloud-Gateway](https://code.claude.com/docs/de/claude-apps-gateway#allow-a-gateway-on-public-address-space-you-own) in öffentlichem IPv4-Adressraum erreichen, den Ihre Organisation intern nutzt | Authentifizierung und Anbieter | Verwaltet |116| [`gatewayInternalNetworks`](#gatewayinternalnetworks) | Lässt `/login` ein [Cloud-Gateway](https://code.claude.com/docs/de/claude-apps-gateway#allow-a-gateway-on-public-address-space-you-own) in öffentlichem IPv4-Adressraum erreichen, den Ihre Organisation intern nutzt | Authentifizierung und Anbieter | Verwaltet |

117| [`gcpAuthRefresh`](#gcpauthrefresh) | Aktualisiert [Google Cloud-Anmeldedaten](https://code.claude.com/docs/de/google-vertex-ai.md#advanced-credential-configuration) mit Ihrem eigenen Befehl | Authentifizierung und Anbieter | Jede Datei |117| [`gcpAuthRefresh`](#gcpauthrefresh) | Aktualisiert [Google Cloud-Anmeldedaten](https://code.claude.com/docs/de/google-vertex-ai.md#advanced-credential-configuration) mit Ihrem eigenen Befehl | Authentifizierung und Anbieter | Jede Datei |


446 446 

447### `fastMode`447### `fastMode`

448 448 

449Schalten 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).449Schalten 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 selbst. 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.

450 

451Nur Opus 5.5, Opus 5 und Opus 4.8 unterstützen den Fast-Modus. Wenn Sie `/fast` von einem anderen Modell aus ausführen, wechseln Sie zu Opus, und ein Wechsel zu einem nicht unterstützten Modell schaltet den Fast-Modus 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).

450 452 

451* **Geltungsbereich**: [`Any file`](#scopes)453* **Geltungsbereich**: [`Any file`](#scopes)

452* **Typ**: Boolean454* **Typ**: Boolean


463 465 

464### `fastModePerSessionOptIn`466### `fastModePerSessionOptIn`

465 467 

466Normalerweise 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.468Normalerweise speichert das Ausführen von `/fast` den Schlüssel [`fastMode`](#fastmode) in den Benutzereinstellungen einer Person, sodass neue Sitzungen mit einem unterstützten Modell mit eingeschaltetem Fast-Modus starten. 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.

467 469 

468Owner 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).470Owner 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).

469 471 

470* **Geltungsbereich**: [`Any file`](#scopes)472* **Geltungsbereich**: [`Any file`](#scopes)

471* **Typ**: Boolean473* **Typ**: Boolean

472 * `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 setzen474 * `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

473 * `false`: Ein gespeichertes `fastMode: true` schaltet den Fast-Modus zu Beginn jeder späteren Sitzung ein475 * `false`: Ein gespeichertes `fastMode: true` schaltet den Fast-Modus zu Beginn jeder neuen Sitzung mit einem unterstützten Modell ein

474* **Standard**: `false`476* **Standard**: `false`

475 477 

476```json settings.json theme={null}478```json settings.json theme={null}


4827 4829 

4828### `agentPushNotifEnabled`4830### `agentPushNotifEnabled`

4829 4831 

4830Erlauben Sie Claude, eine Push-Benachrichtigung an Ihr Telefon zu senden, wenn es entscheidet, dass dies sinnvoll ist, beispielsweise wenn eine lange Aufgabe abgeschlossen ist. Claude kann eine solche Benachrichtigung senden, während [Remote Control](https://code.claude.com/docs/de/remote-control.md) verbunden ist. Wird in `/config` als **Push wenn Claude entscheidet** angezeigt. Wenn Sie den Wert dort ändern, speichert Claude Code ihn auch in Ihrem Konto.4832Erlauben Sie Claude, eine Push-Benachrichtigung an Ihr Telefon zu senden, wenn es entscheidet, dass dies sinnvoll ist, beispielsweise wenn eine lange Aufgabe abgeschlossen ist. In einer lokalen Sitzung kann Claude eine solche Benachrichtigung senden, während [Remote Control](https://code.claude.com/docs/de/remote-control.md) verbunden ist. Wird in `/config` als **Push wenn Claude entscheidet** angezeigt. Wenn Sie den Wert dort ändern, speichert Claude Code ihn auch in Ihrem Konto.

4831 4833 

4832* **Geltungsbereich**: [`Any file`](#scopes). Claude Code liest auch einen Wert, der von älteren Versionen in `~/.claude.json` hinterlassen wurde.4834* **Geltungsbereich**: [`Any file`](#scopes). Claude Code liest auch einen Wert, der von älteren Versionen in `~/.claude.json` hinterlassen wurde.

4833* **Typ**: Boolean4835* **Typ**: Boolean


4964 4966 

4965### `inputNeededNotifEnabled`4967### `inputNeededNotifEnabled`

4966 4968 

4967Erhalten Sie eine Push-Benachrichtigung auf Ihrem Telefon, wenn eine Berechtigungsabfrage oder Frage auf Ihre Eingabe wartet. Claude Code sendet diese nur, während [Remote Control](https://code.claude.com/docs/de/remote-control.md) verbunden ist. Wird in `/config` als **Push wenn Aktionen erforderlich sind** angezeigt.4969Erhalten Sie eine Push-Benachrichtigung auf Ihrem Telefon, wenn eine Berechtigungsabfrage oder Frage auf Ihre Eingabe wartet. In einer lokalen Sitzung sendet Claude Code diese nur, während [Remote Control](https://code.claude.com/docs/de/remote-control.md) verbunden ist. Wird in `/config` als **Push wenn Aktionen erforderlich sind** angezeigt.

4968 4970 

4969* **Geltungsbereich**: [`Any file`](#scopes). Claude Code liest auch einen Wert, der von älteren Versionen in `~/.claude.json` hinterlassen wurde.4971* **Geltungsbereich**: [`Any file`](#scopes). Claude Code liest auch einen Wert, der von älteren Versionen in `~/.claude.json` hinterlassen wurde.

4970* **Typ**: Boolean4972* **Typ**: Boolean

4971 * `true`: Sie erhalten eine Push-Benachrichtigung auf Ihrem Telefon, wenn eine Berechtigungsabfrage oder Frage wartet, während Remote Control verbunden ist

4972 * `false`: Claude Code sendet keine solchen Benachrichtigungen

4973* **Standard**: `false`4973* **Standard**: `false`

4974 4974 

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


4986 4986 

4987* **Geltungsbereich**: [`Any file`](#scopes). Claude Code liest auch einen Wert, der von älteren Versionen in `~/.claude.json` hinterlassen wurde.4987* **Geltungsbereich**: [`Any file`](#scopes). Claude Code liest auch einen Wert, der von älteren Versionen in `~/.claude.json` hinterlassen wurde.

4988* **Typ**: Zeichenkette, eine von:4988* **Typ**: Zeichenkette, eine von:

4989 * `"auto"`: Claude Code sendet eine Desktop-Benachrichtigung in iTerm2, Ghostty und Kitty, läutet die Glocke in Terminal.app nur, wenn dessen hörbare Glocke ausgeschaltet ist, und tut anderswo nichts4989 * `"auto"`: Claude Code sendet eine Desktop-Benachrichtigung, wenn es iTerm2, Ghostty oder Kitty erkennt, läutet die Glocke in Terminal.app nur, wenn dessen hörbare Glocke ausgeschaltet ist, und tut anderswo nichts

4990 * `"terminal_bell"`: Claude Code läutet das Glockensignal in jedem Terminal4990 * `"terminal_bell"`: Claude Code läutet das Glockensignal in jedem Terminal

4991 * `"iterm2"`: Claude Code sendet eine iTerm2-Desktop-Benachrichtigung4991 * `"iterm2"`: Claude Code sendet eine iTerm2-Desktop-Benachrichtigung

4992 * `"iterm2_with_bell"`: Claude Code sendet eine iTerm2-Desktop-Benachrichtigung und läutet die Glocke4992 * `"iterm2_with_bell"`: Claude Code sendet eine iTerm2-Desktop-Benachrichtigung und läutet die Glocke


5001}5001}

5002```5002```

5003 5003 

5004Mit `"auto"` sendet Claude Code eine Desktop-Benachrichtigung in iTerm2, Ghostty und Kitty. In Terminal.app läutet es das Glockensignal nur, wenn Sie die hörbare Glocke von Terminal ausgeschaltet haben, und in anderen Terminals tut es nichts. Setzen Sie `"terminal_bell"`, um das Glockensignal in jedem Terminal zu läuten. Siehe [Erhalten Sie eine Terminal-Glocke oder Benachrichtigung](https://code.claude.com/docs/de/terminal-config.md#get-a-terminal-bell-or-notification).5004Mit `"auto"` sendet Claude Code eine Desktop-Benachrichtigung, wenn es iTerm2, Ghostty oder Kitty erkennt. In Terminal.app läutet es das Glockensignal nur, wenn Sie die hörbare Glocke von Terminal ausgeschaltet haben, und in anderen Terminals tut es nichts. Setzen Sie `"terminal_bell"`, um das Glockensignal in jedem Terminal zu läuten. Siehe [Erhalten Sie eine Terminal-Glocke oder Benachrichtigung](https://code.claude.com/docs/de/terminal-config.md#get-a-terminal-bell-or-notification).

5005 5005 

5006### `remote.defaultEnvironmentId`5006### `remote.defaultEnvironmentId`

5007 5007 


5176 5176 

5177* 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.5177* 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.

5178* 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.5178* 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.

5179* Wenn eine Anfrage über ein LLM-Gateway mit `401`, aber nicht mit `403` fehlschlägt und Sie [`CLAUDE_CODE_SKIP_VERTEX_AUTH`](https://code.claude.com/docs/de/env-vars) für Google Clouds Agent Platform, `CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH` für Claude Platform on AWS oder `CLAUDE_CODE_SKIP_MANTLE_AUTH` für Amazon Bedrock Mantle gesetzt haben. Erfordert Claude Code v2.1.318 oder höher.

5179* 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.5180* 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.

5180 5181 

5181Die 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.5182Die letzten drei Fälle gelten nur, wenn die Ausgabe des Hilfsprogramms die Anmeldedaten sind, die Claude Code sendet, und `ANTHROPIC_AUTH_TOKEN` nicht gesetzt ist.

5182 5183 

5183Wenn 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).5184Wenn 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).

5184 5185 


5261 5262 

5262Verlangen 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.5263Verlangen 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.

5263 5264 

5264* **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.5265* **Geltungsbereich**: [`Any file`](#scopes). In einer Einstellungsdatei, die keine verwaltete Quelle ist, prüft Claude Code nicht, zu welcher Organisation eine Anmeldung gehört, und eine einzelne UUID wählt die Organisation bei der Anmeldung vor.

5265* **Typ**: String, eine UUID, oder Array von Strings, mehrere UUIDs5266* **Typ**: String, eine UUID, oder Array von Strings, mehrere UUIDs

5266* **Standard**: nicht gesetzt, sodass sich jede Organisation anmelden kann5267* **Standard**: nicht gesetzt, sodass sich jede Organisation anmelden kann

5267 5268 


5827 5828 

5828### `autoInstallIdeExtension`5829### `autoInstallIdeExtension`

5829 5830 

5830Lassen Sie [`/ide`](https://code.claude.com/docs/de/commands) die Claude Code IDE-Erweiterung in einer laufenden Instanz von VS Code, Cursor oder Devin Desktop installieren, wenn Sie den Befehl von einem externen Terminal aus ausführen. Claude Code installiert die Erweiterung nicht beim Start. Erscheint in `/config` als **Auto-Install IDE-Erweiterung**, wenn Sie Claude Code innerhalb eines VS Code- oder JetBrains-Terminals ausführen.5831Lassen Sie [`/ide`](https://code.claude.com/docs/de/commands) die Claude Code IDE-Erweiterung in einer laufenden Instanz von VS Code, Cursor oder Devin Desktop installieren, wenn Sie den Befehl von einem externen Terminal aus ausführen. Claude Code installiert oder aktualisiert die Erweiterung nicht, wenn Sie `claude` starten. Vor v2.1.318 installiert oder aktualisiert Claude Code die Erweiterung, wenn Sie `claude` im Terminal eines dieser Editoren starten, es sei denn, dieser Schlüssel ist `false`.

5832 

5833Erscheint in `/config` als **Auto-Install IDE-Erweiterung**, wenn Sie Claude Code innerhalb eines VS Code- oder JetBrains-Terminals ausführen.

5831 5834 

5832* **Geltungsbereich**: [`Global config`](#scopes)5835* **Geltungsbereich**: [`Global config`](#scopes)

5833* **Typ**: Boolean5836* **Typ**: Boolean

setup.md +9 −9

Details

40>40>

41> **macOS, Linux, WSL:**41> **macOS, Linux, WSL:**

42>42>

43> ```bash theme={null}43> ```bash theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}

44> curl -fsSL https://claude.ai/install.sh | bash44> curl -fsSL https://claude.ai/install.sh | bash

45> ```45> ```

46>46>


48>48>

49> **Windows PowerShell:**49> **Windows PowerShell:**

50>50>

51> ```powershell theme={null}51> ```powershell theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}

52> irm https://claude.ai/install.ps1 | iex52> irm https://claude.ai/install.ps1 | iex

53> ```53> ```

54>54>

55> **Windows CMD:**55> **Windows CMD:**

56>56>

57> ```batch theme={null}57> ```batch theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}

58> curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd58> curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

59> ```59> ```

60>60>


72 72 

73> [tab] Homebrew73> [tab] Homebrew

74>74>

75> ```bash theme={null}75> ```bash theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}

76> brew install --cask claude-code76> brew install --cask claude-code

77> ```77> ```

78>78>


84 84 

85> [tab] WinGet85> [tab] WinGet

86>86>

87> ```powershell theme={null}87> ```powershell theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}

88> winget install Anthropic.ClaudeCode88> winget install Anthropic.ClaudeCode

89> ```89> ```

90>90>


389> gpg --show-keys /etc/apt/keyrings/claude-code.asc389> gpg --show-keys /etc/apt/keyrings/claude-code.asc

390> ```390> ```

391>391>

392> Der Fingerabdruck, den gpg ausgibt, sollte `31DDDE24DDFAB679F42D7BD2BAA929FF1A7ECACE` sein. Wenn gpg meldet, dass die Datei nicht geöffnet werden kann oder keine gültigen OpenPGP-Daten enthält, ist der Download fehlgeschlagen oder hat falschen Inhalt zurückgegeben: Bestätigen Sie, dass Ihr Netzwerk `downloads.claude.ai` erreichen kann, und führen Sie dann den Download-Befehl erneut aus.392> Der einzige Fingerabdruck, den gpg ausgibt, sollte `31DDDE24DDFAB679F42D7BD2BAA929FF1A7ECACE` sein. Wenn gpg meldet, dass die Datei nicht geöffnet werden kann oder keine gültigen OpenPGP-Daten enthält, ist der Download fehlgeschlagen oder hat falschen Inhalt zurückgegeben. Bestätigen Sie, dass Ihr Netzwerk `downloads.claude.ai` erreichen kann, und führen Sie dann den Download-Befehl erneut aus.

393>393>

394> Registrieren Sie das Repository im `stable`-Kanal und installieren Sie:394> Registrieren Sie das Repository im `stable`-Kanal und installieren Sie:

395>395>


536Überprüfen Sie die abgelöste Signatur gegen das Manifest.536Überprüfen Sie die abgelöste Signatur gegen das Manifest.

537 537 

538```bash theme={null}538```bash theme={null}

539gpg --verify manifest.json.sig manifest.json539gpg --with-fingerprint --verify manifest.json.sig manifest.json

540```540```

541 541 

542Ein gültiges Ergebnis meldet `Good signature from "Anthropic Claude Code Release Signing <security@anthropic.com>"`.542Ein gültiges Ergebnis meldet `Good signature from "Anthropic Claude Code Release Signing <security@anthropic.com>"`. Mit den Standardeinstellungen gibt `gpg` für einen neu importierten Schlüssel außerdem `WARNING: This key is not certified with a trusted signature!` aus. Dies ist zu erwarten. Die Zeile `Good signature` bestätigt, dass die kryptografische Überprüfung bestanden wurde.

543 543 

544`gpg` druckt auch `WARNING: This key is not certified with a trusted signature!` für jeden neu importierten Schlüssel. Dies ist zu erwarten. Die Zeile `Good signature` bestätigt, dass die kryptografische Überprüfung bestanden wurde. Der Fingerabdruckvergleich in Schritt 1 bestätigt, dass der Schlüssel selbst authentisch ist.544Um zu prüfen, ob der Schlüssel von Anthropic das Manifest signiert hat, vergleichen Sie die Zeile `Primary key fingerprint` am Ende der Ausgabe mit dem Fingerabdruck, den diese Seite in Schritt 1 angibt. Wenn sie übereinstimmen und die Ausgabe kein `BAD signature` zeigt, fahren Sie mit Schritt 4 fort. Andernfalls verwenden Sie dieses Manifest nicht.

545 545 

546**4. Überprüfen Sie die Binärdatei gegen das Manifest**546**4. Überprüfen Sie die Binärdatei gegen das Manifest**

547 547 

slack.md +7 −10

Details

20 20 

21## Anwendungsfälle21## Anwendungsfälle

22 22 

23* **Fehleruntersuchung und -behebung**: Bitten Sie Claude, Fehler zu untersuchen und zu beheben, sobald sie in Slack-Kanälen gemeldet werden.23* **Fehleruntersuchung und -behebung**: Beschreiben Sie einen Fehler und bitten Sie Claude, ihn zu untersuchen und zu beheben.

24* **Schnelle Code-Reviews und Änderungen**: Lassen Sie Claude kleine Funktionen implementieren oder Code basierend auf Team-Feedback umgestalten.24* **Schnelle Code-Reviews und Änderungen**: Lassen Sie Claude kleine Funktionen implementieren oder Code umgestalten.

25* **Kollaboratives Debugging**: Wenn Team-Diskussionen wichtigen Kontext bieten (z. B. Fehlerreproduzierungen oder Benutzerberichte), kann Claude diese Informationen nutzen, um seinen Debugging-Ansatz zu informieren.

26* **Parallele Aufgabenausführung**: Starten Sie Codierungsaufgaben in Slack, während Sie andere Arbeiten fortsetzen, und erhalten Sie Benachrichtigungen nach Abschluss.25* **Parallele Aufgabenausführung**: Starten Sie Codierungsaufgaben in Slack, während Sie andere Arbeiten fortsetzen, und erhalten Sie Benachrichtigungen nach Abschluss.

27 26 

28## Voraussetzungen27## Voraussetzungen


91 90 

92### Kontexterfassung91### Kontexterfassung

93 92 

94**Aus Threads**: Wenn Sie Claude in einem Thread @erwähnen, sammelt es Kontext aus allen Nachrichten in diesem Thread, um das vollständige Gespräch zu verstehen.93* **Aus Threads**: Wenn Sie Claude zum ersten Mal in einem Thread @erwähnen, sammelt es Kontext aus Ihren Nachrichten und seinen eigenen in diesem Thread.

94* **Aus Channels**: Wenn Sie Claude direkt in einem Channel @erwähnen, betrachtet es Ihre aktuellen Nachrichten und seine eigenen in diesem Channel sowie den Namen, das Thema und die Beschreibung des Channels.

95 95 

96**Aus Kanälen**: Wenn es direkt in einem Kanal erwähnt wird, schaut Claude sich aktuelle Kanalnachrichten auf relevanten Kontext an.96Dieser Kontext hilft Claude, das Problem zu verstehen, das entsprechende Repository auszuwählen und seinen Ansatz zur Aufgabe zu informieren. Um Claude etwas zu übergeben, das ein Teammitglied geschrieben hat, etwa einen Fehlerbericht, fügen Sie dessen Text in die Nachricht ein, in der Sie Claude @erwähnen.

97 

98Dieser Kontext hilft Claude, das Problem zu verstehen, das entsprechende Repository auszuwählen und seinen Ansatz zur Aufgabe zu informieren.

99 97 

100> [!WARNING]98> [!WARNING]

101>99>


160### Writing effective requests158### Writing effective requests

161 159 

162* **Be specific**: Include file names, function names, or error messages when relevant.160* **Be specific**: Include file names, function names, or error messages when relevant.

163* **Provide context**: Mention the repository or project if it's not clear from the conversation.161* **Liefern Sie Kontext**: Nennen Sie das Repository oder das Projekt.

164* **Define success**: Explain what "done" looks like. Should Claude write tests? Update documentation? Create a PR?162* **Define success**: Explain what "done" looks like. Should Claude write tests? Update documentation? Create a PR?

165* **Use threads**: Reply in threads when discussing bugs or features so Claude can gather the full context.

166 163 

167### When to use Slack vs. web164### When to use Slack vs. web

168 165 

169**Use Slack when**: Context already exists in a Slack discussion, you want to start a task asynchronously, or you're collaborating with teammates who need visibility.166**Verwenden Sie Slack, wenn**: Sie eine Aufgabe asynchron starten möchten oder mit Teammitgliedern zusammenarbeiten, die Einblick benötigen.

170 167 

171**Use the web directly when**: You need to upload files, want real-time interaction during development, or are working on longer, more complex tasks.168**Use the web directly when**: You need to upload files, want real-time interaction during development, or are working on longer, more complex tasks.

172 169 

Details

74 74 

75Standardmäßig sendet Claude Code in einigen Terminals eine Desktop-Benachrichtigung und in anderen ein Glockenzeichen oder gar nichts:75Standardmäßig sendet Claude Code in einigen Terminals eine Desktop-Benachrichtigung und in anderen ein Glockenzeichen oder gar nichts:

76 76 

77* **Ghostty, Kitty und iTerm2**: eine Desktop-Benachrichtigung, die iTerm2 erst anzeigt, nachdem Sie die Alert-Einstellungen aktiviert haben.77* **Ghostty, Kitty und iTerm2, sofern Claude Code sie erkennt**: eine Desktop-Benachrichtigung, die iTerm2 erst anzeigt, nachdem Sie die Alert-Einstellungen aktiviert haben.

78* **Apple Terminal**: kein Ton; ein stilles Glockenzeichen, wenn Claude Code feststellt, dass „Audible bell“ im Profil des vordersten Terminal-Fensters ausgeschaltet ist, andernfalls nichts. Dieses Glockenzeichen wird als Aufblitzen des Fensters angezeigt oder, während Terminal im Hintergrund läuft, als Hüpfen des Dock-Symbols, sofern die Option „Visual bell“ oder die Dock-Hüpfen-Option dieses Profils aktiviert ist.78* **Apple Terminal**: kein Ton; ein stilles Glockenzeichen, wenn Claude Code feststellt, dass „Audible bell“ im Profil des vordersten Terminal-Fensters ausgeschaltet ist, andernfalls nichts. Dieses Glockenzeichen wird als Aufblitzen des Fensters angezeigt oder, während Terminal im Hintergrund läuft, als Hüpfen des Dock-Symbols, sofern die Option „Visual bell“ oder die Dock-Hüpfen-Option dieses Profils aktiviert ist.

79* **Andere Terminals**: nichts.79* **Andere Terminals**: nichts.

80 80 


86}86}

87```87```

88 88 

89Die Desktop-Benachrichtigung erreicht Ihren lokalen Computer über SSH, sodass eine Remote-Sitzung Sie immer noch benachrichtigen kann. Ghostty und Kitty leiten sie ohne weitere Einrichtung an Ihr Betriebssystem-Benachrichtigungscenter weiter. iTerm2 erfordert, dass Sie die Weiterleitung aktivieren:89Wenn Sie über SSH von einem Terminal aus arbeiten, das außerhalb von tmux läuft, setzen Sie [`preferredNotifChannel`](https://code.claude.com/docs/de/settings-reference#preferrednotifchannel) auf dem Computer, auf dem Claude Code ausgeführt wird, auf den Wert Ihres lokalen Terminals: `"iterm2"`, `"kitty"` oder `"ghostty"`. Die Desktop-Benachrichtigung erreicht dann Ihren lokalen Computer. Ghostty und Kitty leiten sie ohne weitere Einrichtung an Ihr Betriebssystem-Benachrichtigungscenter weiter. iTerm2 erfordert, dass Sie die Weiterleitung aktivieren:

90 90 

91**1. Öffnen Sie die iTerm2-Benachrichtigungseinstellungen**91**1. Öffnen Sie die iTerm2-Benachrichtigungseinstellungen**

92 92 


131 131 

132## tmux konfigurieren132## tmux konfigurieren

133 133 

134Wenn Claude Code innerhalb von tmux ausgeführt wird, funktionieren standardmäßig zwei Dinge nicht: Shift+Enter sendet ab, anstatt einen Zeilenumbruch einzufügen, und Desktop-Benachrichtigungen sowie die [Fortschrittsleiste](https://code.claude.com/docs/de/settings-reference.md#terminalprogressbarenabled) erreichen niemals das äußere Terminal. Fügen Sie diese Zeilen zu `~/.tmux.conf` hinzu und führen Sie dann `tmux source-file ~/.tmux.conf` aus, um sie auf den laufenden Server anzuwenden:134Wenn Claude Code innerhalb von tmux ausgeführt wird, sendet Shift+Enter standardmäßig ab, anstatt einen Zeilenumbruch einzufügen, und Desktop-Benachrichtigungen erreichen das äußere Terminal nicht. Fügen Sie diese Zeilen zu `~/.tmux.conf` hinzu und führen Sie dann `tmux source-file ~/.tmux.conf` aus, um sie auf den laufenden Server anzuwenden:

135 135 

136```bash ~/.tmux.conf theme={null}136```bash ~/.tmux.conf theme={null}

137set -g allow-passthrough on137set -g allow-passthrough on


140set -as terminal-features 'xterm*:extkeys'140set -as terminal-features 'xterm*:extkeys'

141```141```

142 142 

143Die `allow-passthrough`-Zeile ermöglicht es, dass Benachrichtigungen und Fortschrittsaktualisierungen das äußere Terminal erreichen, anstatt von tmux aufgenommen zu werden. Die `extended-keys`-Zeilen ermöglichen es tmux, Shift+Enter von einfachem Enter zu unterscheiden, damit die Zeilenumbruch-Verknüpfung funktioniert.143Um Benachrichtigungen aus einem sichtbaren Bereich an das äußere Terminal zu senden, behalten Sie die `allow-passthrough`-Zeile bei und setzen Sie [`preferredNotifChannel`](https://code.claude.com/docs/de/settings-reference#preferrednotifchannel) auf `"iterm2"`, `"kitty"` oder `"ghostty"`. Mit diesem Beispiel sendet ein Bereich in einem Fenster, das Sie gerade nicht ansehen, keine Benachrichtigungen. Die `extended-keys`-Zeilen ermöglichen es tmux, Shift+Enter von einfachem Enter zu unterscheiden, damit die Zeilenumbruch-Verknüpfung funktioniert.

144 144 

145Ein [`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.145Ein [`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.

146 146 

Details

39| `Monitor` | Führt einen Befehl im Hintergrund aus und speist jede Ausgabezeile an Claude zurück, damit er auf Log-Einträge, Dateiänderungen oder abgerufene Status mitten in der Konversation reagieren kann. Kann auch einen WebSocket öffnen und jede eingehende Nachricht als Ereignis behandeln. Siehe [Monitor-Tool](#monitor-tool) | Ja |39| `Monitor` | Führt einen Befehl im Hintergrund aus und speist jede Ausgabezeile an Claude zurück, damit er auf Log-Einträge, Dateiänderungen oder abgerufene Status mitten in der Konversation reagieren kann. Kann auch einen WebSocket öffnen und jede eingehende Nachricht als Ereignis behandeln. Siehe [Monitor-Tool](#monitor-tool) | Ja |

40| `NotebookEdit` | Ändert Jupyter-Notebook-Zellen. Siehe [NotebookEdit-Tool-Verhalten](#notebookedit-tool-behavior) | Ja |40| `NotebookEdit` | Ändert Jupyter-Notebook-Zellen. Siehe [NotebookEdit-Tool-Verhalten](#notebookedit-tool-behavior) | Ja |

41| `PowerShell` | Führt PowerShell-Befehle nativ aus. Siehe [PowerShell-Tool](#powershell-tool) für Verfügbarkeit | Ja |41| `PowerShell` | Führt PowerShell-Befehle nativ aus. Siehe [PowerShell-Tool](#powershell-tool) für Verfügbarkeit | Ja |

42| `PushNotification` | Sendet eine Desktop-Benachrichtigung und eine Telefon-Push-Benachrichtigung, wenn [Remote Control](https://code.claude.com/docs/de/remote-control.md) verbunden ist, damit eine lange laufende Aufgabe oder [sitzungsbezogene geplante Aufgabe](https://code.claude.com/docs/de/scheduled-tasks.md) Sie erreichen kann, wenn Sie weggehen. Push-Zustellung läuft durch von Anthropic gehostete Infrastruktur, auf die nicht von Amazon Bedrock, Claude Platform auf AWS, Google Clouds Agent Platform oder Microsoft Foundry zugegriffen werden kann | Nein |42| `PushNotification` | Sendet eine Desktop-Benachrichtigung aus einer lokalen Sitzung sowie eine Telefon-Push-Benachrichtigung mit [Remote Control](https://code.claude.com/docs/de/remote-control.md) oder in einer [Cloud-Sitzung](https://code.claude.com/docs/de/claude-code-on-the-web.md). Push-Zustellung läuft durch von Anthropic gehostete Infrastruktur, auf die nicht von Amazon Bedrock, Claude Platform auf AWS, Google Clouds Agent Platform oder Microsoft Foundry zugegriffen werden kann | Nein |

43| `Read` | Liest den Inhalt von Dateien. Siehe [Read-Tool-Verhalten](#read-tool-behavior) | Nein |43| `Read` | Liest den Inhalt von Dateien. Siehe [Read-Tool-Verhalten](#read-tool-behavior) | Nein |

44| `ReadMcpResourceTool` | Liest eine bestimmte MCP-Ressource nach URI | Nein |44| `ReadMcpResourceTool` | Liest eine bestimmte MCP-Ressource nach URI | Nein |

45| `RemoteTrigger` | Erstellt, aktualisiert, führt aus und listet [geplante Cloud-Aufgaben](https://code.claude.com/docs/de/routines.md), früher Routinen, auf claude.ai auf. Unterstützt den `/schedule`-Befehl. Die [`RemoteTrigger`-Eingabereferenz](https://code.claude.com/docs/de/agent-sdk/typescript#remotetrigger) dokumentiert jede Aktion und die Organisationsrichtlinien, die das Tool entfernen. Geplante Cloud-Aufgaben befinden sich auf claude.ai und erfordern einen Pro-, Max-, Ultra-, Team- oder Enterprise-Plan. Dieses Tool ist daher nicht von Amazon Bedrock, Claude Platform auf AWS, Google Clouds Agent Platform oder Microsoft Foundry zugänglich | Nein |45| `RemoteTrigger` | Erstellt, aktualisiert, führt aus und listet [geplante Cloud-Aufgaben](https://code.claude.com/docs/de/routines.md), früher Routinen, auf claude.ai auf. Unterstützt den `/schedule`-Befehl. Die [`RemoteTrigger`-Eingabereferenz](https://code.claude.com/docs/de/agent-sdk/typescript#remotetrigger) dokumentiert jede Aktion und die Organisationsrichtlinien, die das Tool entfernen. Geplante Cloud-Aufgaben befinden sich auf claude.ai und erfordern einen Pro-, Max-, Ultra-, Team- oder Enterprise-Plan. Dieses Tool ist daher nicht von Amazon Bedrock, Claude Platform auf AWS, Google Clouds Agent Platform oder Microsoft Foundry zugänglich | Nein |

vs-code.md +12 −3

Details

818 818 

819### CLI in VS Code ausführen819### CLI in VS Code ausführen

820 820 

821Um die CLI zu verwenden, ohne VS Code zu verlassen, drücken Sie `` Ctrl+` `` unter Windows/Linux oder `` Cmd+` `` auf dem Mac, um das integrierte Terminal zu öffnen, und führen Sie dann `claude` aus. Durch das Starten von `claude` wird die Erweiterung nicht installiert. Ohne sie meldet `/ide` im integrierten Terminal „No available IDEs detected“, und `/status` zeigt die IDE als „Not connected“ an.821Um die CLI zu verwenden, ohne VS Code zu verlassen, drücken Sie `` Ctrl+` `` unter Windows/Linux oder `` Cmd+` `` auf dem Mac, um das integrierte Terminal zu öffnen, und führen Sie dann `claude` aus.

822 822 

823Um Funktionen wie die Diff-Ansicht und das Teilen von Diagnosen zu nutzen, verbinden Sie die CLI über das integrierte Terminal oder ein externes Terminal mit der Erweiterung:823Um Funktionen wie die Diff-Ansicht und das Teilen von Diagnosen zu nutzen, verbinden Sie die CLI über das integrierte Terminal oder ein externes Terminal mit der Erweiterung:

824 824 

825* **Integriertes Terminal**: [Installieren Sie die Erweiterung](#install-the-extension) und starten Sie dann `claude`. Die CLI verbindet sich automatisch.825* **Integriertes Terminal**: [Installieren Sie die Erweiterung](#install-the-extension) und starten Sie dann `claude`. Die CLI verbindet sich automatisch. Claude Code v2.1.318 oder höher installiert die Erweiterung nicht für Sie. Bis Sie sie installieren, meldet `/ide` daher „No available IDEs detected“, und `/status` zeigt die IDE als „Not connected“ an.

826* **Externes Terminal**: Führen Sie `/ide` innerhalb von Claude Code aus, um eine Verbindung zu VS Code herzustellen. Wenn VS Code ohne die Erweiterung ausgeführt wird, installiert `/ide` sie, es sei denn, Sie haben [`autoInstallIdeExtension`](https://code.claude.com/docs/de/settings-reference#autoinstallideextension) deaktiviert.826* **Externes Terminal**: Führen Sie `/ide` innerhalb von Claude Code aus, um eine Verbindung zu VS Code herzustellen. Wenn VS Code ohne die Erweiterung ausgeführt wird, installiert `/ide` sie, es sei denn, Sie haben [`autoInstallIdeExtension`](https://code.claude.com/docs/de/settings-reference#autoinstallideextension) deaktiviert.

827 827 

828Durch die Installation der Erweiterung wird `claude` nicht in den PATH Ihrer Shell aufgenommen. Die Erweiterung enthält eine private Kopie der CLI für ihr Chat-Panel, aber um `claude` in einem Terminal einzugeben, ist die [eigenständige CLI-Installation](https://code.claude.com/docs/de/setup.md) erforderlich. Führen Sie die Installation einmal durch, und die Befehle auf dieser Seite, einschließlich `claude mcp add` und `claude --resume`, funktionieren in jedem Terminal. Wenn `claude` nach der Installation weiterhin nicht gefunden wird, [überprüfen Sie Ihren PATH](https://code.claude.com/docs/de/troubleshoot-install.md#verify-your-path).828Durch die Installation der Erweiterung wird `claude` nicht in den PATH Ihrer Shell aufgenommen. Die Erweiterung enthält eine private Kopie der CLI für ihr Chat-Panel, aber um `claude` in einem Terminal einzugeben, ist die [eigenständige CLI-Installation](https://code.claude.com/docs/de/setup.md) erforderlich. Führen Sie die Installation einmal durch, und die Befehle auf dieser Seite, einschließlich `claude mcp add` und `claude --resume`, funktionieren in jedem Terminal. Wenn `claude` nach der Installation weiterhin nicht gefunden wird, [überprüfen Sie Ihren PATH](https://code.claude.com/docs/de/troubleshoot-install.md#verify-your-path).


10912. Suchen Sie nach „Claude Code“10912. Suchen Sie nach „Claude Code“

10923. Klicken Sie auf **Uninstall**10923. Klicken Sie auf **Uninstall**

1093 1093 

1094Die Erweiterung bleibt deinstalliert, wenn Sie `claude` starten. Wenn Sie `/ide` in einem externen Terminal ausführen, während VS Code läuft, installiert Claude Code sie neu. Um dies zu verhindern, setzen Sie [`autoInstallIdeExtension`](https://code.claude.com/docs/de/settings-reference#autoinstallideextension) in `~/.claude.json` auf `false` oder schalten Sie **Auto-install IDE extension** in `/config` im integrierten Terminal aus. Sie können auch die Umgebungsvariable [`CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL`](https://code.claude.com/docs/de/env-vars) auf `1` setzen.1094Wenn Sie nach der Deinstallation eine der folgenden Aktionen ausführen, wird die Erweiterung wieder installiert:

1095 

1096* Sie führen `/ide` in einem externen Terminal aus, während VS Code läuft

1097* Sie starten `claude` im integrierten Terminal mit einer Claude Code-Version vor v2.1.318

1098 

1099Um zu verhindern, dass die Erweiterung wieder installiert wird, führen Sie einen der folgenden Schritte aus und deinstallieren Sie sie anschließend erneut, falls sie bereits wieder installiert wurde:

1100 

1101* Setzen Sie [`autoInstallIdeExtension`](https://code.claude.com/docs/de/settings-reference#autoinstallideextension) in `~/.claude.json` auf `false`

1102* Setzen Sie [`CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL`](https://code.claude.com/docs/de/env-vars#variables) unter `env` in einer [Einstellungsdatei](https://code.claude.com/docs/de/env-vars.md#in-settings-files) auf `1`

1103* Schalten Sie im integrierten Terminal **Auto-install IDE extension** in `/config` aus

1095 1104 

1096Um zusätzlich die Daten der Erweiterung zu entfernen und alle Einstellungen zurückzusetzen, löschen Sie das Speicherverzeichnis der Erweiterung für Ihre Plattform.1105Um zusätzlich die Daten der Erweiterung zu entfernen und alle Einstellungen zurückzusetzen, löschen Sie das Speicherverzeichnis der Erweiterung für Ihre Plattform.

1097 1106 

Details

12 12 

13Eine Cloud-Sitzung führt Claude Code auf Cloud-Infrastruktur anstelle Ihres Computers aus, standardmäßig von Anthropic verwaltet. Dieser Schnellstart startet eine Sitzung von [claude.ai/code](https://claude.ai/code) in Ihrem Browser. Sie können auch eine Sitzung aus der Claude-Mobilanwendung, der Desktop-Anwendung oder Ihrem Terminal mit `claude --cloud` starten.13Eine Cloud-Sitzung führt Claude Code auf Cloud-Infrastruktur anstelle Ihres Computers aus, standardmäßig von Anthropic verwaltet. Dieser Schnellstart startet eine Sitzung von [claude.ai/code](https://claude.ai/code) in Ihrem Browser. Sie können auch eine Sitzung aus der Claude-Mobilanwendung, der Desktop-Anwendung oder Ihrem Terminal mit `claude --cloud` starten.

14 14 

15Sie benötigen ein GitHub-Repository, um [zu beginnen](#connect-github). Claude klont es in eine isolierte virtuelle Maschine, nimmt Änderungen vor und pusht einen Branch zur Überprüfung. Sitzungen bleiben über Geräte hinweg bestehen, sodass eine Aufgabe, die Sie auf Ihrem Laptop starten, später von Ihrem Telefon aus überprüft werden kann. Jede Sitzung wird zusammen mit Ihrer übrigen Nutzung von Claude und Claude Code auf die Nutzungslimits Ihres Plans angerechnet, und für die Cloud-VM fallen keine separaten Kosten an.15Claude klont das von Ihnen ausgewählte [GitHub-Repository](#connect-github) in eine isolierte virtuelle Maschine, nimmt Änderungen vor und pusht einen Branch zur Überprüfung. Sitzungen bleiben über Geräte hinweg bestehen, sodass eine Aufgabe, die Sie auf Ihrem Laptop starten, später von Ihrem Telefon aus überprüft werden kann. Jede Sitzung wird zusammen mit Ihrer übrigen Nutzung von Claude und Claude Code auf die Nutzungslimits Ihres Plans angerechnet, und für die Cloud-VM fallen keine separaten Kosten an.

16 16 

17Cloud-Sitzungen funktionieren gut für:17Cloud-Sitzungen funktionieren gut für:

18 18 


44| **Sie starten sie von** | claude.ai/code, der Claude-Mobilanwendung, der Desktop-App mit **Cloud** ausgewählt, oder `claude --cloud` | Ihrem Terminal, Ihrer IDE oder der Desktop-App mit **Lokal** ausgewählt | Ihrem Terminal, der VS Code-Erweiterung oder der Desktop-App |44| **Sie starten sie von** | claude.ai/code, der Claude-Mobilanwendung, der Desktop-App mit **Cloud** ausgewählt, oder `claude --cloud` | Ihrem Terminal, Ihrer IDE oder der Desktop-App mit **Lokal** ausgewählt | Ihrem Terminal, der VS Code-Erweiterung oder der Desktop-App |

45| **Sie chatten von** | claude.ai, der Mobilanwendung oder der Desktop-App | Wo Sie sie gestartet haben | claude.ai oder der Mobilanwendung, sowie von wo Sie sie gestartet haben |45| **Sie chatten von** | claude.ai, der Mobilanwendung oder der Desktop-App | Wo Sie sie gestartet haben | claude.ai oder der Mobilanwendung, sowie von wo Sie sie gestartet haben |

46| **Verwendet Ihre lokale Konfiguration** | Nein, nur Repository | Ja | Ja |46| **Verwendet Ihre lokale Konfiguration** | Nein, nur Repository | Ja | Ja |

47| **Erfordert GitHub** | Ja, oder [bündeln Sie ein lokales Repository](https://code.claude.com/docs/de/claude-code-on-the-web.md#send-local-repositories-without-github) über `--cloud` | Nein | Nein |47| **Erfordert GitHub** | Ja für ein GitHub-Repository, es sei denn, `--cloud` [bündelt Ihr lokales Repository](https://code.claude.com/docs/de/claude-code-on-the-web.md#send-local-repositories-without-github) | Nein | Nein |

48| **Läuft weiter, wenn Sie die Verbindung trennen** | Ja | Nein | Während die Sitzung auf Ihrem Computer offen bleibt |48| **Läuft weiter, wenn Sie die Verbindung trennen** | Ja | Nein | Während die Sitzung auf Ihrem Computer offen bleibt |

49| **[Berechtigungsmodi](https://code.claude.com/docs/de/permission-modes.md)** | Änderungen akzeptieren, Plan, Auto | Alle Modi im Terminal; siehe [Berechtigungsmodi wechseln](https://code.claude.com/docs/de/permission-modes.md#switch-permission-modes) für die IDE und Desktop-App | Manuell, Änderungen akzeptieren, Plan oder Auto von claude.ai und der Mobilanwendung |49| **[Berechtigungsmodi](https://code.claude.com/docs/de/permission-modes.md)** | Änderungen akzeptieren, Plan, Auto | Alle Modi im Terminal; siehe [Berechtigungsmodi wechseln](https://code.claude.com/docs/de/permission-modes.md#switch-permission-modes) für die IDE und Desktop-App | Manuell, Änderungen akzeptieren, Plan oder Auto von claude.ai und der Mobilanwendung |

50| **Netzwerkzugriff** | Konfigurierbar pro Umgebung | Netzwerk Ihres Computers | Netzwerk Ihres Computers |50| **Netzwerkzugriff** | Konfigurierbar pro Umgebung | Netzwerk Ihres Computers | Netzwerk Ihres Computers |


138 138 

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: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 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ützt141* **Auto**: Ein Klassifikator prüft die Aktionen von Claude, anstatt Sie zu fragen. Wird angezeigt, sofern Ihre Organisation den [Auto-Modus](https://code.claude.com/docs/de/permission-modes.md#eliminate-prompts-with-auto-mode) nicht ausschaltet. Wenn er auf claude.ai/code ausgegraut ist, wählen Sie ein Modell aus, das den Auto-Modus unterstützt

142* **Accept edits**: Claude nimmt Änderungen vor und pusht einen Branch, ohne für eine Genehmigung anzuhalten142* **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, bis Sie ihn genehmigen, bevor Dateien bearbeitet werden143* **Plan**: Claude schlägt einen Ansatz vor und wartet, bis Sie ihn genehmigen, bevor Dateien bearbeitet werden

144 144 


209 209 

210### Die Seite zeigt nur eine GitHub-Anmeldeschaltfläche210### Die Seite zeigt nur eine GitHub-Anmeldeschaltfläche

211 211 

212Cloud-Sitzungen erfordern ein verbundenes GitHub-Konto. Verbinden Sie sich über den oben beschriebenen Browser-Flow oder führen Sie `/web-setup` von Ihrem Terminal aus aus, wenn Sie die GitHub CLI verwenden. Wenn Sie GitHub lieber gar nicht verbinden möchten, siehe [Remote Control](https://code.claude.com/docs/de/remote-control.md), um Claude Code auf Ihrem eigenen Computer auszuführen und es vom Browser oder Telefon aus zu überwachen.212Um in einer Cloud-Sitzung in einem GitHub-Repository zu arbeiten, [verbinden Sie Ihr GitHub-Konto](#connect-github) oder führen Sie `/web-setup` von Ihrem Terminal aus aus, wenn Sie die GitHub CLI verwenden. Wenn Sie GitHub lieber gar nicht verbinden möchten, siehe [Remote Control](https://code.claude.com/docs/de/remote-control.md), um Claude Code auf Ihrem eigenen Computer auszuführen und es vom Browser oder Telefon aus zu überwachen.

213 213 

214### „Claude Code ist auf Ihrem Konto nicht verfügbar“214### „Claude Code ist auf Ihrem Konto nicht verfügbar“

215 215 


227 227 

228`/web-setup` wird in der Claude Code CLI ausgeführt, nicht in Ihrer Shell. Starten Sie zunächst `claude` und geben Sie dann `/web-setup` an der Eingabeaufforderung ein.228`/web-setup` wird in der Claude Code CLI ausgeführt, nicht in Ihrer Shell. Starten Sie zunächst `claude` und geben Sie dann `/web-setup` an der Eingabeaufforderung ein.

229 229 

230Wenn Sie es in Claude Code eingegeben haben und das Befehlsmenü `Keine Befehle stimmen überein "/web-setup"` anzeigt oder das Absenden `Unbekannter Befehl: /web-setup` zurückgibt, ist der Befehl verborgen, weil eine Anforderung nicht erfüllt ist. Die Ursache ist normalerweise, dass Sie mit einem API-Schlüssel oder einem Drittanbieter-Provider authentifiziert sind, anstatt mit einem claude.ai-Abonnement. Führen Sie `/login` aus, um sich mit Ihrem claude.ai-Konto anzumelden.230Wenn Sie es in Claude Code eingegeben haben und das Befehlsmenü `No commands match "/web-setup"` anzeigt oder das Absenden `Unknown command: /web-setup` zurückgibt, ist der Befehl verborgen, weil eine Anforderung nicht erfüllt ist. Die Ursache ist normalerweise, dass Sie mit einem API-Schlüssel oder einem Drittanbieter-Provider authentifiziert sind, anstatt mit einem claude.ai-Abonnement. Führen Sie `/login` aus, um sich mit Ihrem claude.ai-Konto anzumelden.

231 231 

232Bei Team- und Enterprise-Plänen ist der Befehl standardmäßig verborgen: Der [Quick setup toggle](https://code.claude.com/docs/de/claude-code-on-the-web.md#quick-setup-for-team-and-enterprise) ist ausgeschaltet, bis ein Owner ihn einschaltet. Während er ausgeschaltet ist, [verbinden Sie GitHub stattdessen vom Browser](#connect-github) aus.232Bei Team- und Enterprise-Plänen ist der Befehl standardmäßig verborgen: Der [Quick setup toggle](https://code.claude.com/docs/de/claude-code-on-the-web.md#quick-setup-for-team-and-enterprise) ist ausgeschaltet, bis ein Owner ihn einschaltet. Während er ausgeschaltet ist, [verbinden Sie GitHub stattdessen vom Browser](#connect-github) aus.

233 233 

234Der Befehl ist auch verborgen in zwei weiteren Fällen:234Der Befehl ist auch verborgen in zwei weiteren Fällen:

235 235 

236* Ein Administrator hat Cloud-Sitzungen für Ihre Organisation deaktiviert. In diesem Fall gibt das Absenden von `/web-setup` [`Cloud-Sitzungen sind durch die Richtlinie Ihrer Organisation deaktiviert`](https://code.claude.com/docs/de/errors#cloud-sessions-are-disabled-by-your-organizations-policy) zurück. Vor v2.1.268 gab dieser Fall auch `Unbekannter Befehl: /web-setup` zurück.236* Ein Administrator hat Cloud-Sitzungen für Ihre Organisation deaktiviert. In diesem Fall gibt das Absenden von `/web-setup` [`Cloud sessions are disabled by your organization's policy`](https://code.claude.com/docs/de/errors#cloud-sessions-are-disabled-by-your-organizations-policy) zurück. Vor v2.1.268 gab dieser Fall auch `Unknown command: /web-setup` zurück.

237* Ihre Enterprise-Organisation hat [Zero Data Retention](https://code.claude.com/docs/de/zero-data-retention.md) aktiviert oder die [HIPAA-Konfiguration](https://code.claude.com/docs/de/hipaa-setup.md) angewendet. Beides macht Cloud-Sitzungen nicht verfügbar.237* Ihre Enterprise-Organisation hat [Zero Data Retention](https://code.claude.com/docs/de/zero-data-retention.md) aktiviert oder die [HIPAA-Konfiguration](https://code.claude.com/docs/de/hipaa-setup.md) angewendet. Beides macht Cloud-Sitzungen nicht verfügbar.

238 238 

239### „Cloud-Umgebung konnte nicht erstellt werden“ oder „Keine Cloud-Umgebung verfügbar“ bei Verwendung von `--cloud`239### „Cloud-Umgebung konnte nicht erstellt werden“ oder „Keine Cloud-Umgebung verfügbar“ bei Verwendung von `--cloud`


242 242 

243### Setup-Skript fehlgeschlagen243### Setup-Skript fehlgeschlagen

244 244 

245Das Setup-Skript wurde mit einem Nicht-Null-Status beendet, was den Start der Sitzung blockiert. Häufige Ursachen:245Das [Setup-Skript](https://code.claude.com/docs/de/cloud-environments.md#setup-scripts) wurde mit einem Nicht-Null-Status beendet, sodass die Sitzung entweder nicht gestartet wurde oder ohne das gestartet wurde, was das Skript nicht installieren konnte. Wenn die Sitzung gestartet wurde, können Sie darin weiterarbeiten.

246 

247Häufige Ursachen:

246 248 

247* Eine Paketinstallation ist fehlgeschlagen, weil die Registry nicht in Ihrer [Zugriffsstufe](https://code.claude.com/docs/de/cloud-environments.md#access-levels) enthalten ist. `Trusted` deckt die meisten Paketmanager ab; `None` blockiert sie alle.249* Eine Paketinstallation ist fehlgeschlagen, weil die Registry nicht in Ihrer [Zugriffsstufe](https://code.claude.com/docs/de/cloud-environments.md#access-levels) enthalten ist. `Trusted` deckt die meisten Paketmanager ab; `None` blockiert sie alle.

248* Das Skript verweist auf eine Datei oder einen Pfad, der in einem frischen Klon nicht vorhanden ist.250* Das Skript verweist auf eine Datei oder einen Pfad, der in einem frischen Klon nicht vorhanden ist.

249* Ein Befehl, der lokal funktioniert, benötigt einen anderen Aufruf auf Ubuntu.251* Ein Befehl, der lokal funktioniert, benötigt einen anderen Aufruf auf Ubuntu.

250 252 

251Zum Debuggen fügen Sie `set -x` oben im Skript hinzu, um zu sehen, welcher Befehl fehlgeschlagen ist. Für nicht kritische Befehle fügen Sie `|| true` an, damit sie den Sitzungsstart nicht blockieren.253Zum Debuggen fügen Sie `set -x` oben im Skript hinzu, um zu sehen, welcher Befehl fehlgeschlagen ist. Für nicht kritische Befehle fügen Sie `|| true` an, damit sie das Skript nicht fehlschlagen lassen. Nachdem Sie die Ursache behoben haben, starten Sie eine neue Sitzung, damit das Skript erneut ausgeführt wird. Wenn ein Lauf einer [geplanten Cloud-Aufgabe](https://code.claude.com/docs/de/routines.md) nicht gestartet werden konnte, klicken Sie auf der Detailseite der Aufgabe auf **Run now**, anstatt eine neue Sitzung zu starten.

252 254 

253### Neue Sitzungen hängen oder treten während des Setups in einen Timeout auf255### Neue Sitzungen hängen oder treten während des Setups in einen Timeout auf

254 256